Ce diaporama a bien été signalé.
Le téléchargement de votre SlideShare est en cours. ×
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Publicité
Chargement dans…3
×

Consultez-les par la suite

1 sur 12 Publicité

Plus De Contenu Connexe

Diaporamas pour vous (20)

Publicité

Similaire à Datomic (20)

Plus récents (20)

Publicité

Datomic

  1. 1. Datomic JP Erkelens @jperkelens Http://github.com/jperkelens
  2. 2. Disclaimer!! Nearly everything that follows is cribbed from the datomic website: www.datomic.com
  3. 3. Rationale  Database design conventions were created when memory and disk space was limited and expensive  Place-oriented programming  Records should not be erased when new ones are made
  4. 4. Classic DB Architecture
  5. 5. Datomic Architecture
  6. 6. Peers  Library embedded in app  Submits transactions to transactor  Handles query/caching/data access
  7. 7. Transactors  Process transactions serially  Transmit changes  Index in background
  8. 8. Consequences  Reads never lock out writes  Each peer has own cache  Higher memory footprint/quicker responses
  9. 9. Data Model  Data is immutable  How? Time.  Datom  Consists of entity/attr/value/transaction  We don't update records or documents  We add/remove datoms  Minimal Schema
  10. 10. Programming Model - Queries  The Peer pulls data from storage as needed and caches  It receives updates from the transactor  Queries run from a merged view of the two  After a while minimal network activity is needed  No strings! (Maps and vectors)  Query language – Datalog.  Implicit joins
  11. 11. Programming Model – Time  Apps always work on a consistent snapshot of the database  Queries are applied to values of the database in time, or windows
  12. 12. DEEEEEMMMOOOO!!! Additional Resources  Www.datomic.com  Http://github.com/limadelic/datomic  https://github.com/gns24/pydatomic

×