Title: Some Fundamental Questions in Databases
1Some Fundamental Questions in Databases
- Nick Rossiter
- (with Michael Heather)
2Questions
- Why so many database models?
- What is their rationale?
- Are there undiscovered new models?
- Is there an ultimate data model?
- Do all models have to be reductionist?
3Meaning of Database Model
- A model is a representation of reality according
to some perceived view. - A database model for representing this view has
- a structure
- a manipulation language
- rules for controlling the structure
4Classical Database Models 1
5Classical Database Models 2
6Classical Relationships
- Relationships are often performed in a separate
process - Entity-Relationship Modelling
- Unified Modelling (UML)
- Normalisation is needed to verify schema design
- particularly to relate key and non-key
attributes. - The levels, mappings and relationships all have
to be integrated in a consistent database design.
7Developing non-classical Areas
- The new developing areas are
- quantum computation, exploiting quantum mechanics
principles in physics, - nanoscale chemistry,
- bio- and molecular-computing processing as in
genetics - Collectively referred to as natural computing
- Natural computing is
- Real-world processing
- does not rely on any model.
- Data can be input neat
- without any reductionist pre-processing.
8Non-classical Database Design
- Not layered (Theory of Categories)
- Use Dolittle approach (push me-pull you creature
of High Lofting) - A database design is a topos -- a Dolittle
diagram subsuming the pullback/pushout
relationships as - Â
Cartesian Closed Category
9What is f?
- f is an examination and re-indexing functor
- organises the data into a key for storage and
applies a query for interrogation of the
database. - puts together a key by concatenation as in the
relational model. - looks up information for retrieval by inspecting
the key. - In quantum theory
- the key (X) is entanglement,
- the colimit () is superposition,
- In genetics it is a DNA strand.
10Enriched Pullback
- In terms of the Dolittle diagram
- f is the same operation in classical and natural
computation. - What then corresponds to the database schema in
natural computing? - The pullback diagram contains many more arrows
than in the Dolittle diagram. - This enriched diagram satisfies our needs.
11Pullback of S and M in Context of IMG
S source, M medium, IMG image, W world
12Contents of Enriched Dolittle
- The Dolittle diagram relates binary categorial
limits (X) and colimits () for types - Logic is Heyting -- intuitionistic logic.
- Godement calculus can be used for composing
arrows across levels - pullback functor (f or ?)
- emulates the join operation of databases
- Other arrows represent
- projection ? membership ?
- existential ? or ? quantification
- universal ? or ? quantification
13Higher-level Arrows for Semantics/DB Design
- Originality with the unit of adjunction ?
- Example ? gives properties of relationship onto
limit - ? 0, no creativity, mapping S to S XIMG M is
11 - ? 1, maximum creativity, mapping S to S ? IMG M
is from S to cartesian product of S ? M. - Style with the counit ? of adjunction.
- Example ? gives properties of relationship onto
colimit - ? 1, preservation of style, each S is found
exactly once in S XIMG M - ? 0, loss of style, each S occurs in S ? IMG M
maximum number of times (S ? M).
14Normalisation and Defeasance
- Not captured at the data model level
- except for 1NF in some models
- A complex topic jargon-wise
- Perhaps related to defeasibility or nonmonotonic
reasoning - A kills B implies A has committed murder
- A kills B AND B attacked A implies A has
committed manslaughter - strengthening of antecedent changes conclusion
15Integration of Normalisation within the model
- Many normalisation definitions say
- A table is normalised if
- condition X holds
- and additional conditions B, C,, D etc do not
hold - Normalisation failure is due to defeasance
- Exploring incorporation of defeasance into topos
16Non-classical Database Model
17Questions
- Why so many database models?
- What is their rationale?
- Are there undiscovered new models?
- Is there an ultimate data model?
- Do all models have to be reductionist?