~/talk

Clojure is a Foreign Country: Combining Datomic with Scala

Talkat EuroClojure 2016 · 2016-10-25..10-26· [databases, scala]
slides:none on file

A Scala web service uses Datomic with Cassandra as storage, Play framework for the API and Apache Artemis for messaging, and reports that core Datomic features—Datomic with Cassandra and transactor, reified transactions for built-in auditing and time-travel/speculative DB via with-db—work well: audit metadata is stored as entities, historic queries and speculative transactions catch uniqueness errors before the transactor, and read scaling holds. Pain points include using DataMisa’s Scala macros which block truly dynamic queries at runtime and the ORM-ish mapping to case classes that breaks laziness, sparse-data flexibility and time-travel unless extra migration logic is added.

AI-written summary · about

  1. 0:00Intro
  2. 0:25a foreign Country
  3. 1:03The Problem Space
  4. 2:59The Stack
  5. 3:59Outside
  6. 5:41Using Datomic From Scala
  7. 6:44Datomisca
  8. 8:00Molecule
  9. 8:47History
  10. 10:28Time Travel
  11. 13:17Audit
  12. 14:52Friction
  13. 15:02Dynamic Queries
  14. 16:10ORMification
  15. 17:21Domain-Specific Types
  16. 17:55Schemas and Conversion
  17. 19:52Trade-offs
  18. 20:35Modular Entities
  19. 21:33Sparse Data
  20. 24:06Ordering
  21. 24:19Transaction Functions
  22. 25:26Cross-Pollination
  23. 27:47Niklas Luhmann
  24. 30:21Foreignness
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.