Datomic Architecture with Marshall Thompson

Datomic is a database system based on an append-only record keeping system. Datomic users can query the complete history of the database, and Datomic has ACID transactional support. The data within Datomic is stored in an underlying database system such as Cassandra or Postgres. The database is written in Clojure, and was co-authored by the creator of Clojure, Rich Hickey.

Datomic has a unique architecture, with a component called a Peer, which gets embedded in an application backend. A Peer stores a subset of the database data in memory in this application backend, improving the latency of database queries that hit this caching layer.

Marshall Thompson works at Cognitect, the company that supports and sells the Datomic database. Marshall joins the show to talk about the architecture of Datomic, its applications, and the life of a query against the database.

We’re looking for new show ideas, so if you have any interesting topics, please feel free to reach out via twitter or email us at  jeff@softwareengineeringdaily.com

Sponsorship inquiries: sponsor@softwareengineeringdaily.com

Transcript

Transcript provided by We Edit Podcasts. Software Engineering Daily listeners can go to weeditpodcasts.com/sed to get 20% off the first two months of audio editing and transcription services. Thanks to We Edit Podcasts for partnering with SE Daily. Please click here to view this show’s transcript.


Sponsors

DigitalOcean makes infrastructure simple. And for an application that needs to scale, DigitalOcean has CPU-Optimized Droplets, Memory-Optimized Droplets, Managed Databases, Managed Kubernetes, and much more. Visit do.co/sedaily and receive $100 in credit over 60 days.

Datadog unifies metrics, logs, traces, and other advanced features in a single, scalable platform. View your SLOs in real time; search, group, and filter SLOs by facets like tags, teams, services, and more. Sign up for a free 14-day trial, and Datadog will send you one of their famously cozy t-shirts. softwareengineeringdaily.com/datadog

It’s hard to get engineering resources to build back-office apps, and even harder to get engineers excited about maintaining them. The idea is that all internal tools kinda look the same – they’re made of tables, dropdowns, buttons, text inputs, etc. Retool gives you a drag and drop interface so engineers can build these internal UIs in hours, not days, and spend more time building features customers will see. Visit retool.com/sedaily to learn more.

Gauge and Taiko are open source testing tools by ThoughtWorks to reliably test modern web applications. Gauge is a test automation tool that makes it simple and easy to express tests in the language of your users. Taiko is a node library to automate the browser. Gauge and Taiko are free to use. Head to gauge.org to know more.

Software Weekly

Software Weekly

Subscribe to Software Weekly, a curated weekly newsletter featuring the best and newest from the software engineering community.