5. Math
Informatics
Bioinformatics, a scientific discipline ? Or the new (molecular) biology ?
Theoretical Biology
Computational Biology
(Molecular)
Biology
Computer Science
Bioinformatics
15. Usage of the databases
Annotation searches - Search for keywords, authors, features
16. Usage of the databases
Annotation searches - Search for keywords, authors, features
What is the protein sequence for human insulin?
How does the 3D structure of calmodulin look like?
What is the genetic location of the cystic fibrosis gene?
List all intron sequences in rat.
17. Usage of the databases
Annotation searches - Search for keywords, authors, features
18. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
19. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Is there any known protein sequence that is similar to x?
Is this gene known in any other species?
Has someone already cloned this sequence?
20. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
21. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
22. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Do my protein sequence contain any known motif
(that can give me a clue about the function)?
Which known sequences contain this motif?
Is any part of my nucleotide sequence recognized
by a transcriptional factor?
List all known start, splice and stop signals in my
genomic sequence.
23. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
24. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Predictions - Using the databases as knowledge databases
25. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Predictions - Using the databases as knowledge databases
What may the structure of my protein be?
Secondary structure prediction.
Modelling by homology.
What is the gene structure of my genomic sequence?
Which parts of my protein have a high antigenicity?
26. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Predictions - Using the databases as knowledge databases
27. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Predictions - Using the databases as knowledge databases
Comparisons
28. Usage of the databases
Annotation searches - Search for keywords, authors, features
Homology (similarity) searches - Search for similar sequences
Pattern searches - Search for occurrences of patterns
Predictions - Using the databases as knowledge databases
Comparisons
Gene families
Phylogenetic trees
29. Les 1
• Bioinformatics I Revisited in 5 slides
• Why bother making databases ?
• DataBases
– FF
• *.txt
• Indexed version
– Relational (RDBMS)
• Access, MySQL, PostGRES, Oracle
– OO (OODBMS)
• AceDB, ObjectStore
– Hierarchical
• XML
– Frame based system
• Eg. DAML+OIL
– Hybrid systems
30. GenBank Format
LOCUS LISOD 756 bp DNA BCT 30-JUN-1993
DEFINITION L.ivanovii sod gene for superoxide dismutase.
ACCESSION X64011.1 GI:37619753
NID g44010
KEYWORDS sod gene; superoxide dismutase.
SOURCE Listeria ivanovii.
ORGANISM Listeria ivanovii
Eubacteria; Firmicutes; Low G+C gram-positive bacteria;
Bacillaceae; Listeria.
REFERENCE 1 (bases 1 to 756)
AUTHORS Haas,A. and Goebel,W.
TITLE Cloning of a superoxide dismutase gene from Listeria ivanovii
by functional complementation in Escherichia coli and
characterization of the gene product
JOURNAL Mol. Gen. Genet. 231 (2), 313-322 (1992)
MEDLINE 92140371
REFERENCE 2 (bases 1 to 756)
AUTHORS Kreft,J.
TITLE Direct Submission
JOURNAL Submitted (21-APR-1992) J. Kreft, Institut f. Mikrobiologie,
Universitaet Wuerzburg, Biozentrum Am Hubland, 8700
Wuerzburg, FRG
31. Problems with Flat files …
• Wasted storage space
• Wasted processing time
• Data control problems
• Problems caused by changes to data
structures
• Access to data difficult
• Data out of date
• Constraints are system based
• Limited querying eg. all single exon
GPCRs (<1000 bp)
32. • What is a relational database ?
– Sets of tables and links (the data)
– A language to query the datanase (Structured
Query Language)
– A program to manage the data (RDBMS)
• Flat files are not relational
– Data type (attribute) is part of the data
– Record order mateters
– Multiline records
– Massive duplication
• Bv Organism: Homo sapeinsm Eukaryota, …
– Some records are hierarchical
• Xrefs
– Records contain multiple “sub-records”
– Implecit “Key”
35. Introduction to Database Systems
• Historic Background
– Hierarchical databases (IMS) - IBM 1968
• Hierarchical structures between file records
– Network databases - CODASYL Group 1969
• Network structures of record types
• Linked chains between 'Owner' and 'Member' records
• Included in Cobol, procedural language - Manual
navigation
– Relational Data Model - E. F. Codd 1970
• Mathematical foundation of databases
• New non-procedural language SQL - Automatic
navigation
– Object-relational databases
– Object-oriented databases
36. Relational
• The Relational model is not only very mature, but it
has developed a strong knowledge on how to make a
relational back-end fast and reliable, and how to
exploit different technologies such as massive SMP,
Optical jukeboxes, clustering and etc. Object
databases are nowhere near to this, and I do not
expect then to get there in the short or medium term.
• Relational Databases have a very well-known and
proven underlying mathematical theory, a simple one
(the set theory) that makes possible
– automatic cost-based query optimization,
– schema generation from high-level models and
– many other features that are now vital for mission-critical
Information Systems development and operations.
37. The Benefits of Databases
• Redundancy can be reduced
• Inconsistency can be avoided
• Conflicting requirements can be
balanced
• Standards can be enforced
• Data can be shared
• Data independence
• Integrity can be maintained
• Security restrictions can be applied
39. Relational Database Terminology
• Each row of data in a table is uniquely identified by a primary key (PK)
• Information in multiple tables can be logically related by foreign keys (FK)
ID LAST_NAME FIRST_NAME
10 Havel Marta
11 Magee Colin
12 Giljum Henry
14 Nguyen Mai
ID NAME PHONE EMP_ID
201 Unisports 55-2066101 12
202 Simms Atheletics 81-20101 14
203 Delhi Sports 91-10351 14
204 Womansport 1-206-104-0103 11
Table Name: CUSTOMER Table Name: EMP
Primary Key Foreign Key Primary Key
40. Relational Database Terminology
Relational operators
• Relational
– select
rel WHERE boolean-xpr
– project
rel [ attr-specs ]
– join
rel JOIN rel
– divide by
rel DIVIDEBY rel
• Set-based
rel UNION rel
rel INTERSECT rel
rel MINUS rel
rel TIMES rel
42. • RDBM products
– Free
• MySQL, very fast, widely usedm easy to
jump into but limited non standard SQL
• PostrgreSQL – full SQLm limited OO,
higher learning curve than MySQL
– Commercial
• MS Access – Great query builder, GUI
interfaces
• MS SQL Server – full SQL, NT only
• Oracle, everything, including the kitchen
sink
• IBM DB2, Sybase
43. Example 3-tier model in biological database
http://www.bioinformatics.be
Example of different interface to the same back-end database (MySQL)
47. Conclusions
• A database is a central component of any
contemporary information system
• The operations on the database and the mainenance
of database consistency is handled by a DBMS
• There exist stand alone query languages or
embedded languages but both deal with definition
(DDL) and manipulation (DML) aspects
• The structural properties, constraints and operations
permitted within a DBMS are defined by a data
model - hierarchical, network, relational
• Recovery and concurrency control are essential
• Linking of heterogebous datasources is central theme
in modern bioinformatics
48. What is to come ?
Basic outline
• Setup RDMBS
• OLTP Access through CLI, dedicated
client, PHP, Perl/Python
• OLAP Access through Perl/Python, R ..
Integration
• Cytoscape
Semantic Web
• noSQL/Hadoop
• SPARQL
54. Third party mods
• Extra content made by users
• Adding items, magic and features to
the original game
• The true beauty of minecraft
55. And now Sciencecraft
• Visualizing proteins in minecraft
• Minecraft Tools python package
• Data directly from PDB flat files or
from the PDB server
• Spigot minecraft server
56. The basics
1. Start a server with Minecraft Tools
2. Using python import the pdb file
3. Retrieve the coordinates from the file
4. Using the setBlock function blocks of
specific colours are placed in the
minecraft server to represent the protein
5. Fly around and take screenshots
57. Minecraft programming from Python
# Connect to Minecraft
from mcpi.minecraft import Minecraft
mc = Minecraft.create()
# Set x, y, and z variables to represent coordinates
x = 10.0
y = 110.0
z = 12.0
# Change the player's position
mc.player.setPos(x, y, z)
63. Using SPARQL with Python – SPARQLWrapper
“Search engine”
• Naive regex based
• Returns list of all pdb
entries containing a
certain keyword with
organism name and
full description
• PDB entry can be
retrieved with previous
query
64.
65. Retrieve .xml.gz file:
Actual structure information in xml file
<?xml version="1.0" encoding="UTF-8" ?>
<PDBx:datablock datablockName="1O9K"
xmlns:PDBx="http://pdbml.pdb.org/schema/pdbx-v40.xsd"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://pdbml.pdb.org/schema/pdbx-
v40.xsd pdbx-v40.xsd">
<PDBx:atom_siteCategory>
<PDBx:atom_site id="1">
<PDBx:B_iso_or_equiv>62.42</PDBx:B_iso_or_equiv>
<PDBx:Cartn_x>13.258</PDBx:Cartn_x>
<PDBx:Cartn_y>142.706</PDBx:Cartn_y>
<PDBx:Cartn_z>30.410</PDBx:Cartn_z>
<PDBx:auth_asym_id>A</PDBx:auth_asym_id>
<PDBx:auth_atom_id>N</PDBx:auth_atom_id>
<PDBx:auth_comp_id>MET</PDBx:auth_comp_id>
<PDBx:auth_seq_id>379</PDBx:auth_seq_id>
<PDBx:group_PDB>ATOM</PDBx:group_PDB>
<PDBx:label_alt_id xsi:nil="true" />
<PDBx:label_asym_id>A</PDBx:label_asym_id>
<PDBx:label_atom_id>N</PDBx:label_atom_id>
<PDBx:label_comp_id>MET</PDBx:label_comp_id>
<PDBx:label_entity_id>1</PDBx:label_entity_id>
<PDBx:label_seq_id>8</PDBx:label_seq_id>
<PDBx:occupancy>1.00</PDBx:occupancy>
….
Using SPARQL with Python – SPARQLWrapper
83. v2
84
• Thermodynamic compatible testing setting
• Real-life testing With UCSC (make bigger version ?)
and/or green “plantable” versions for field tests (self-
watering plant ?)
• Introduce temperature gradient ?? Blend current dewpal
with solar and/or wind energy source …
85. 86
… why go to the trouble of collecting water out of the air?
Why not simply cause more rain to fall?
With our INP ???
http://science.howstuffworks.com/environmental/earth/geophysics/manufacture-water1.htm
An even wilder idea …
86. Environmental remediation projects (e.g. ISS water recovery –
change freezing point … contact Prof Arne Verliefde)
Molecular diagnostics - Liquid Biopsy project
Capture (methylated) cancer molecules from blood and/urine
in oncology, we can run head-to-head samples from clinical
trial in bladder and/or prostate cancer
Alternative projects
87