"Operating Datomic at Scale" by João Palharini and Filipe Andrade

Learn how to operate Datomic at scale, covering performance optimization techniques, caching layers, indexing jobs, garbage collection, and more, from the experts at Datomic.

Key takeaways
  • Datomic allows plugging in caching layers, which can improve performance and reduce memory usage.
  • Optional caching layers include Memcached and Ballcache.
  • The indexing job can be optimized by reducing the amount of work and parallelization.
  • Gc cost can tell you which phase of execution is contributing most to gc pauses.
  • Durable indexes can be created to improve performance.
  • API mass and MSAC can be used to track memory usage.
  • The memory index can be tuned to reduce costs.
  • Peer architecture allows for parallel processing and improved performance.
  • Concurrency can be improved by batching and parallelization.
  • Query stats can be used to track query performance and optimize queries.
  • I/O stats can be used to track I/O performance and optimize queries.
  • The memory index max can be adjusted to improve performance.
  • Datomic allows for customization of the garbage collection algorithm.