Curated Databases

advertisement
Curated Databases
Peter Buneman
School of Informatics
University of Edinburgh
With thanks to James Cheney, Heiko Müller, Wang
Chiew Tan, Stijn Vansummeren, and many others
The Population of Corfu
113.479 (2001)
http://www.corfunext.com/corfu_geography.htm
107,879 (as of 2001 )
http://en.wikipedia.org/wiki/Corfu ***
93,000
http://www.corfunet.com/corfu/
109,512
www.agni.gr/
110,000
www.corfuvisit.net
70,000
http://www.newadvent.org/cathen/04362a.htm
107,600
http://www.greek-hotels.com/
105,043
http://www.merriam-webster.com/dictionary/corfu
approximately 110,000
www.kassiopi.com/MenuContent.aspx?MenuId=6
approximately 120.000
http://www.gardeno-corfu.com/
115,200 (2003 est)
http://encyclopedia.farlex.com/Corfu
around 110,000
http://www.sunshinetravel.gr/CORFUGUIDE/CORFU_TRAVEL_GUIDE 0-1.htm
110.000
http://www.dialashop.com/travel/corfu.html
about 110,00
http://www.argobenitses.gr/greece.php
97,102 in 1981
http://geography.howstuffworks.com/europe/corfu.htm
107,880
http://catalogue.horse21.net/greece+hotels/corfu+hotels/hotels5/luxury
109,512
http://www.corfu-property.gr/content/view/14/38/lang,en/
about 100,000
http://members.virtualtourist.com/m/6ce90/67541/
110,000 approximately
http://www.corfu-island.org/features.htm
107,000
http://www.nytimes.com/2009/09/11/greathomesanddestinations/11iht-recorfu.html
*** The only site to give attribution: http://www.statistics.gr/portal/page/portal/ESYE
DIR
2
These are both curated databases
DIR
3
What is a curated database?
• A curated database is one that is maintained with a lot of
human effort
• Curare: Latin “to care for”
• Prime concern is quality of data
DIR
4
What is a database?
(for the purposes of this talk)
• Any structured collection of data that is subject to
change/revision
–
–
–
–
DIR
Ontologies
XML and other structured text files
Structured wikis
Standard relational and object-oriented databases
5
Curated databases have interesting properties…
• A digital reference work. Traditional dictionaries, gazetteers, encyclopedia
have been replaced by curated databases.
• Value lies in the organization and annotation of data
• Commonly constructed by copying parts of other (curated) databases.
• Fundamental to “citizen science”
• Rapidly increasing in scientific research. (> 1000 in molecular biology)
• Constantly checked/verified. Data quality and timeliness are important.
• Often group efforts. Produced by a dedicated organization or collaboration.
• Increasingly seen as “publications” by scientists. (You get kudos if someone
uses your database – like a citation.)
• They are not data warehouses!!!
DIR
6
... and they are very expensive
In $/€/£ per byte
“Reliable” code / Curated data
“Production” code/Curated data
10
1
Book
[Movie]
10-1
10-3
Big physics (LHC) data
10-7
A change for the better?
Storage:
• Redundant
• Persistent
• Distributed
• Readable by people
Clear standards for citation
Historical record (old data is useful)
Well understood ownership/IP
Storage:
• Single-source
• Volatile
• Centralised
• Internal DBMS format
No standards for citation
No historical record
Mind-boggling legal issues
20th century libraries did some things better!
DIR
8
Some computer science issues
•
•
•
•
Archiving (CS usage)
Provenance
Annotation/citation
Data cleaning
All of these are intimately connected.
For example, if you cite some part of a curated database,
the version you cited should be available (archiving)
DIR
9
Some well-known curated databases
ID
AC
DT
DT
DT
DE
OS
OC
OC
RN
RP
RC
RX
RA
RL
RN
RP
RA
RL
CC
CC
CC
CC
CC
DR
DR
DR
KW
FT
FT
FT
FT
FT
FT
FT
FT
SQ
11SB_CUCMA
STANDARD;
PRT;
480 AA.
P13744;
01-JAN-1990 (REL. 13, CREATED)
01-JAN-1990 (REL. 13, LAST SEQUENCE UPDATE)
01-NOV-1990 (REL. 16, LAST ANNOTATION UPDATE)
11S GLOBULIN BETA SUBUNIT PRECURSOR.
CUCURBITA MAXIMA (PUMPKIN) (WINTER SQUASH).
EUKARYOTA; PLANTA; EMBRYOPHYTA; ANGIOSPERMAE; DICOTYLEDONEAE;
VIOLALES; CUCURBITACEAE.
[1]
SEQUENCE FROM N.A.
STRAIN=CV. KUROKAWA AMAKURI NANKIN;
MEDLINE; 88166744.
HAYASHI M., MORI H., NISHIMURA M., AKAZAWA T., HARA-NISHIMURA I.;
EUR. J. BIOCHEM. 172:627-632(1988).
[2]
SEQUENCE OF 22-30 ND 297-302.
OHMIYA M., HARA I., MASTUBARA H.;
PLANT CELL PHYSIOL. 21:157-167(1980).
-!- FUNCTION: THIS IS A SEED STORAGE PROTEIN.
-!- SUBUNIT: HEXAMER; EACH SUBUNIT IS COMPOSED OF AN ACIDIC AND A
BASIC CHAIN DERIVED FROM A SINGLE PRECURSOR AND LINKED BY A
DISULFIDE BOND.
-!- SIMILARITY: TO OTHER 11S SEED STORAGE PROTEINS (GLOBULINS).
EMBL; M36407; G167492; -.
PIR; S00366; FWPU1B.
PROSITE; PS00305; 11S_SEED_STORAGE; 1.
SEED STORAGE PROTEIN; SIGNAL.
SIGNAL
1
21
CHAIN
22
480
11S GLOBULIN BETA SUBUNIT.
CHAIN
22
296
GAMMA CHAIN (ACIDIC).
CHAIN
297
480
DELTA CHAIN (BASIC).
MOD_RES
22
22
PYRROLIDONE CARBOXYLIC ACID.
DISULFID
124
303
INTERCHAIN (GAMMA-DELTA) (POTENTIAL).
CONFLICT
27
27
S -> E (IN REF. 2).
CONFLICT
30
30
E -> S (IN REF. 2).
SEQUENCE
480 AA; 54625 MW; D515DD6E CRC32;
MARSSLFTFL CLAVFINGCL SQIEQQSPWE FQGSEVWQQH RYQSPRACRL ENLRAQDPVR
RAEAEAIFTE VWDQDNDEFQ CAGVNMIRHT IRPKGLLLPG FSNAPKLIFV AQGFGIRGIA
IPGCAETYQT DLRRSQSAGS AFKDQHQKIR PFREGDLLVV PAGVSHWMYN RGQSDLVLIV
FADTRNVANQ IDPYLRKFYL AGRPEQVERG VEEWERSSRK GSSGEKSGNI FSGFADEFLE
EAFQIDGGLV RKLKGEDDER DRIVQVDEDF EVLLPEKDEE ERSRGRYIES ESESENGLEE
TICTLRLKQN IGRSVRADVF NPRGGRISTA NYHTLPILRQ VRLSAERGVL YSNAMVAPHY
TVNSHSVMYA TRGNARVQVV DNFGQSVFDG EVREGQVLMI PQNFVVIKRA SDRGFEWIAF
KTNDNAITNL LAGRVSQMRM LPLGVLSNMY RISREEAQRL KYGQQEMRVL SPGRSQGRRE
//
CIA World Factbook
DIR
Uniprot
10
Archiving / Database Preservation
• How do we preserve something that evolves (both in
content and structure)
• Keep snapshots?
– frequent: space consuming
– infrequent: lose “history”
Most curated databases have a hierarchical
structure that we can exploit…
DIR
11
A Working System
• Implemented by Heiko Müller
• For scale, we require external sorting of large XML
files
•Designed and implemented by Ioannis Koltsidas
Heiko Müller and Stratis Viglas
• Has a simple temporal query language
• Experimented with recent (HTML) versions of CIA
world factbook
DIR
12
How did the population of China
change from 2002-2007?
<T t="2002-2007">
<FACTBOOK>
<COUNTRY>
<CATEGORY>
<PROPERTY>
<NAME>Population</NAME>
<TEXT>
<T t="2002">1,284,303,705
<T t="2003">1,286,975,468
<T t="2004">1,298,847,624
<T t="2005">1,306,313,812
<T t="2006">1,313,973,713
<T t="2007">1,321,851,888
</TEXT>
</PROPERTY>
</CATEGORY>
</COUNTRY>
</FACTBOOK>
</T>
DIR
(July
(July
(July
(July
(July
(July
2002
2003
2004
2005
2006
2007
est.)</T>
est.)</T>
est.)</T>
est.)</T>
est.)</T>
est.)</T>
13
How did land area of countries change in 2002-2007?
<T t="2002-2007">
<FACTBOOK KEY="">
…
<COUNTRY KEY="NAME Austria">
<CATEGORY KEY="NAME Geography">
<PROPERTY KEY="NAME Area">
<SUBPROP>
<NAME>land</NAME>
<TEXT>
<T t="2004-2007">82,444 sq km</T>
<T t="2002-2003">82,738 sq km</T>
</TEXT>
</SUBPROP>
</PROPERTY>
</CATEGORY>
</COUNTRY>
…
<COUNTRY KEY="NAME France">
<CATEGORY KEY="NAME Geography">
<PROPERTY KEY="NAME Area">
<SUBPROP>
<NAME>land</NAME>
<TEXT>
<T t="2002-2006">545,630 sq km</T>
<T t="2007">640,053 sq km; 545,630 sq km (metropolitan France)</T>
</TEXT>
… DIR
14
What are the differences between the factbooks
on 21/08/2007 and 10/09/2007?
<T t="21/08/2007-10/09/2007">
<CIAWFB KEY="">
<COUNTRY KEY="NAME Afghanistan">
<CATEGORY KEY="NAME Communications">
<PROPERTY KEY="NAME Internet users">
<T t="21/08/2007">
<TEXT>30,000 (2005)</TEXT>
</T>
<T t="10/09/2007">
<TEXT>535,000 (2006)</TEXT>
</T>
</PROPERTY>
<PROPERTY KEY="NAME Telephones - mobile cellular">
<T t="21/08/2007">
<TEXT>1.4 million (2005)</TEXT>
</T>
<T t="10/09/2007">
<TEXT>2.52 million (2006)</TEXT>
</T>
…
DIR
15
http://homepages.inf.ed.ac.uk/hmueller/xarch/download.html
Heiko Müller’s Xarch
• Examples of use with
⁻ Ontologies
⁻ XML files
⁻ Relational databases
(even atmospheric
data!)
• Automatically converts
RDBs into XML
• Efficiently extracts
snapshots
• Simple temporal query
language
DIR
16
Provenance – a huge issue
•
•
•
•
Where did this data come from?
How did it get here?
How was it constructed?
...
Two schools of research:
• Workflow (coarse-grain) provenance – a complete
record of how some large scientific
analysis/simulation was performed.
• Data (fine-grain) a record of how some small piece of
data (in a larger databases) was produced
DIR
17
Data provenance:
an example
Copy-paste, or
<cntrl>C <cntrl>V
113.479 (2001)
http://www.corfunext.com/corfu_geography.htm
107,879 (as of 2001 )
http://en.wikipedia.org/wiki/Corfu ***
109,512
www.agni.gr/
105,043
http://www.merriam-webster.com/dictionary/corfu
115,200 (2003 est)
http://encyclopedia.farlex.com/Corfu
97,102 in 1981
http://geography.howstuffworks.com/europe/corfu.htm
107,880
http://catalogue.horse21.net/greece+hotels/corfu+hotels/hotels5/luxury
DIR
18
“Where provenance”
Possible explanations of how something was copied:
This data item was extracted from location L1 in
document D1 and placed in location L2 in document D2
or
This data item was extracted from database D1 by
query Q1 and placed in database D2 by update U2
(or some combination of the two)
DIR
19
ID
11SB_CUCMA
STANDARD;
PRT;
480 AA.
AC
P13744;
DT
01-JAN-1990 (REL. 13, CREATED)
DT
01-JAN-1990 (REL. 13, LAST SEQUENCE UPDATE)
DT
01-NOV-1990 (REL. 16, LAST ANNOTATION UPDATE)
DE
11S GLOBULIN BETA SUBUNIT PRECURSOR.
OS
CUCURBITA MAXIMA (PUMPKIN) (WINTER SQUASH).
OC
EUKARYOTA;
PLANTA; EMBRYOPHYTA;
ANGIOSPERMAE; DICOTYLEDONEAE;
DE
11S GLOBULIN
BETA SUBUNIT
PRECURSOR.
OC
VIOLALES;
CUCURBITACEAE.
OS
CUCURBITA
MAXIMA
(PUMPKIN) (WINTER SQUASH).
RN
[1]
OC
EUKARYOTA;
PLANTA;
EMBRYOPHYTA;
ANGIOSPERMAE; DICOTYLEDONEAE;
RP
SEQUENCE FROM
N.A.
RC
STRAIN=CV. KUROKAWA AMAKURI NANKIN;
OC
VIOLALES;
CUCURBITACEAE.
RX
MEDLINE; 88166744.
RA
HAYASHI M., MORI H., NISHIMURA M., AKAZAWA T., HARA-NISHIMURA I.;
RL
EUR. J. BIOCHEM. 172:627-632(1988).
-!- FUNCTION: THIS IS
SEED STORAGE PROTEIN.
RN A [2]
RP EACH
SEQUENCE
OF 22-30
297-302. OF AN ACIDIC AND A
-!- SUBUNIT: HEXAMER;
SUBUNIT
ISAND
COMPOSED
RA
OHMIYA M., HARA I., MASTUBARA H.;
BASIC CHAIN DERIVED
FROMCELL
A SINGLE
AND LINKED BY A
RL
PLANT
PHYSIOL. PRECURSOR
21:157-167(1980).
DISULFIDE BOND. CC -!- FUNCTION: THIS IS A SEED STORAGE PROTEIN.
CC
-!SUBUNIT:
EACH
SUBUNIT IS(GLOBULINS).
COMPOSED OF AN ACIDIC AND A
-!- SIMILARITY: TO OTHER
11S
SEED HEXAMER;
STORAGE
PROTEINS
CC
BASIC CHAIN DERIVED FROM A SINGLE PRECURSOR AND LINKED BY A
CC
DISULFIDE BOND.
CC
-!- SIMILARITY: TO OTHER 11S SEED STORAGE PROTEINS (GLOBULINS).
DR
EMBL; M36407; G167492; -.
PIR; S00366;11S
FWPU1B.
FT
CHAIN
22 DR 480
GLOBULIN BETA SUBUNIT.
DR
PROSITE; PS00305; 11S_SEED_STORAGE; 1.
FT
CHAIN
22 KW 296
CHAIN
(ACIDIC).
SEED STORAGEGAMMA
PROTEIN;
SIGNAL.
SIGNAL
1
21
FT
CHAIN
297 FT 480
DELTA
CHAIN
(BASIC).
FT
CHAIN
22
480
11S GLOBULIN BETA
SUBUNIT.
FT
MOD_RES
22
22
PYRROLIDONE CARBOXYLIC
ACID.
FT
CHAIN
22
296
GAMMA CHAIN (ACIDIC).
FT
DISULFID
124 FT 303
INTERCHAIN
(GAMMA-DELTA)
(POTENTIAL).
CHAIN
297
480
DELTA CHAIN (BASIC).
FT
MOD_RES
22
22
PYRROLIDONE CARBOXYLIC ACID.
FT
DISULFID
124
303
INTERCHAIN (GAMMA-DELTA) (POTENTIAL).
FT
CONFLICT
27
27
S -> E (IN REF. 2).
FT
CONFLICT
30
30
E -> S (IN REF. 2).
SQ
SEQUENCE
480 AA; 54625 MW; D515DD6E CRC32;
MARSSLFTFL CLAVFINGCL SQIEQQSPWE FQGSEVWQQH RYQSPRACRL ENLRAQDPVR
RAEAEAIFTE VWDQDNDEFQ CAGVNMIRHT IRPKGLLLPG FSNAPKLIFV AQGFGIRGIA
IPGCAETYQT DLRRSQSAGS AFKDQHQKIR PFREGDLLVV PAGVSHWMYN RGQSDLVLIV
FADTRNVANQ IDPYLRKFYL AGRPEQVERG VEEWERSSRK GSSGEKSGNI FSGFADEFLE
EAFQIDGGLV RKLKGEDDER DRIVQVDEDF EVLLPEKDEE ERSRGRYIES ESESENGLEE
TICTLRLKQN IGRSVRADVF NPRGGRISTA NYHTLPILRQ VRLSAERGVL YSNAMVAPHY
TVNSHSVMYA TRGNARVQVV DNFGQSVFDG EVREGQVLMI PQNFVVIKRA SDRGFEWIAF
KTNDNAITNL LAGRVSQMRM LPLGVLSNMY RISREEAQRL KYGQQEMRVL SPGRSQGRRE
//
Where Provenance
CC
CC
CC
CC
CC
Where does this information
come from? Which curator?
Or was it the cited papers?
Was it copied from some
other DB?
DIR
20
Copy-paste model of curated DBs
Curated databases are not views!!
(a) A biologist copies some UniProt records into her DB.
(b) She fixes entries so that UniProt PTMs are not confused with hers.
(c) She copies in some publication details from OMIM
(d) She corrects a mistake in a PubMed publication number.
[B. Chapman, Cheney, Sigmod ’06]
DIR
21
A very simple copy-paste language
(uses a “deterministic” tree model)
(1) delete c5 from T;
(2) copy S1/a1/y into T/c1/y;
(3) insert {c2 : {}} into T;
(4) copy S1/a2 into T/c2;
(5) insert {y : {}} into T/c2;
(6) copy S2/b3/y into T/c2/y;
(7) copy S1/a3 into T/c3;
(8) insert {c4 : {}} into T;
(9) copy S2/b2 into T/c4;
(10) insert {y : 12} into T/c4;
How costly is it to record all this?
DIR
22
How to reduce space
• Complete provenance: Record every update.
• Transactional provenance: Record the links at the end of some
user-defined transaction (sequence of updates)
• Hierarchical (inferred) provenance. Only record a link if it
cannot be inferred from the provenance of a higher node
Taken together these provide a substantial saving on
storage. Overhead comparable with the size of the DB
in some realistic simulations
DIR
23
Query languages and where provenance
(select A, 5 as B from R where A = 1)
union
(select * from R where A <> 1)
delete from R where A = 1;
insert into R values (1,5)
update R set B = 5 where A = 1
DIR
[B., Cheney, Vansummeren, TODS 33,4, 2008]
A B
A B
1
3
1
5
6
7
6
7
1
3
1
5
6
7
6
7
1
3
1
5
6
7
6
7
24
Other forms of provenance in query languages
• Why-provenance: why is a tuple in the output, or what parts
of the input “contributed to” the tuple? [Widom et al]
• How-provenance: how (by what process) was this tuple
constructed. [Tannen et al]
Complex program or process
Large, heterogeneous
source
Small part of
source
Database
Simpler program/process
“Piece” of data: data
value, tuple.etc
Taken together, these are the “explanation”.
DIR
25
Workflow provenance
Taken from [Davidson & Freire, Sigmod 08]
• Each step S1. . . S4 is itself a workflow.
• How does one record an “enactment” of the workflow?
• How much “context” does one record?
– from people
– from databases that change
• Recent attempts to produce a general model
– Open Provenance Model [Moreau et al. 2007]
– Petri Net + Complex Object [Hidders et al.Inf Syst 2008]
DIR
26
Provenance is very general issue
• Intrinsic to data quality.
• It is starting to be used in several areas of CS:
–
–
–
–
–
–
–
Semantics of update languages.
Probabilistic databases
Data integration
Debugging schema transformations
File/data synchronization
Program debugging (program slicing)
Security
• The fundamental problem is finding the right
model/models
• Can we combine data and workflow models?
• OPM + complex objects (B. et al.2010)
DIR
27
How do you cite something in a database?
Many scientific databases ask you to cite them, but..
• they don’t tell you how, or
• they tell you to give the URL, or
• they tell you to cite a paper about the database.
Nutrition Education for Diverse Audiences [Internet]. Urbana (IL): University of
Illinois Cooperative Extension Service, Illinet Department; [updated 2000 Nov
28; cited 2001 Apr 25]. Diabetes mellitus lesson; [about 1 screen]. Available
from
http://www.aces.uiuc.edu/~necd/inter2_search.cgi?ind=854148396
NLM Recommended Formats for Bibliographic Citation.
Internet Supplement. NLM Technical report Bethesda, MD 20894, July 2001.
DIR
28
What is a citation?
Bard JB and Davies JA. Development, Databases and
the Internet. Bioessays. 1995 Nov; 17(11):999-1001.
[Location and descriptive information]
Ann. Phys., Lpz 18 639-641
Nature, 171,737-738
(We often want more than location)
DIR
29
Automatically generating citations
A rule:
{ DB=IUPHAR, Version=$v, Family=$f Receptor=$r, Contributors=$a,
Editor=$e, Date=$d, DOI=$i}
←
/Root[ ]/Version[Number=$’v, Editor=$?e, DOI=$.i, Date=$.d] /Data[ ]
/Family[FamilyName=$’f] /Contributor-list/Contributor=$+a]
/Receptor[ReceptorName=$’r]
What gets generated (example):
{ DB=IUPHAR, Version=11, Family=Calcitonin,
Receptor=CALCR, Contributors={Debbie Hay, David R. Poyner},
Editor=Tony Harmar, Date=Jan 2006, DOI=10.1234 }
DIR
30
Other topics: Data quality and data cleaning
• Published data often looks clean but is intrinsically
messy
– “Dead” fields in the underlying data
– Multiple syntactic conventions
– Abuse of / confusion over formats & schema
• Human errors require human correction
– Automate error detection rather than error correction
• Cleaning is an essential prerequisite in any
integration or preservation task.
DIR
31
Other topics: Evolution of Structure
• Curated DBs evolve from humble origins. Schemas
are often wrong; they are
– designed by people who don’t understand schemas
– designed before the domain is fully understood
• Do ontologies help (you can build an ontology
without worrying much about the schema) or do
they defer the problem and make it worse?
DIR
32
The larger (economic and social) issues
• Who will archive/curate curated databases?
• Should they be open-access?
– who pays for their maintenance?
• What are the legal/IP issues?
DIR
33
A case study: IUPHAR database
(curated by Tony Harmar and team)
• “Standard” curated database
• Labour-intensive (hundreds of
contributors)
IUPHAR
DCC
• Valuable (supported by drug
companies)
• Simple, clean structure – as seen
by users
50m
We wanted to use our archiver
• Our first task was to convert the database into a hierarchical
structure (following the web presentation) so that we could
archive it.
• We used the Prata XML (Fan et al) publishing software
• This had some unexpected benefits…
DIR
35
• We can preserve all versions of the data (as intended)
• We can generate static web pages (less software, more
efficient)
• We can make the database citable
• Tony can trace the history of entries
• Tony can generate an old-fashioned book (yes, he wants to do
this!)
• We have a “community model” for data exchange
• The data got cleaned up in the process
• The representation information (required by archivists) is
greatly simplified
DIR
36
Selected pages from the book
– generated by a 100-line
style sheet
37
Our library will “host” the book, but
not the database!
38
Centralized vs. distributed publishing
20th century libraries provided robust, distributed dissemination and
preservation of reference material
Valuable information was lost in earlier “data centers” .
Is this still
happening?
Replication and distribution has always been the best guarantee of
preservation. We should do the same for curated databases – a database
LOCKSS ?
DIR
39
Many of the issues are non “technical”
• A good economic model for sustainability
– Open access works for journal papers
– Can it work for curated DBs? They require long-term
support. And people who write reference manuals
sometimes expect to make money out of them.
• Intellectual property in curated databases is a
nightmare
– legislation still largely based on the notion of copying.
• We can still help by providing good models of the
processes in curating and publishing databases
DIR
40
Summary
• Study of database curation and preservation is
producing new problems for databases and digital
libraries
• We need to bring curated databases into the scope
of libraries and other archival institutions and
organisations.
• Is this Data Intensive Research?
DIR
41
Download