Software Alternatives, Accelerators & Startups

Datomic VS Firestore

Compare Datomic VS Firestore and see what are their differences

Datomic logo Datomic

The fully transactional, cloud-ready, distributed database

Firestore logo Firestore

Easily develop rich applications using a fully managed, scalable, and serverless document database.
  • Datomic Landing page
    Landing page //
    2023-09-14
Not present

Datomic features and specs

  • Immutability
    Datomic employs an append-only data model where data is never overwritten but instead appended, ensuring historical data is always available and providing strong consistency.
  • Time Travel Queries
    Datomic allows you to query the database as of any point in time, facilitating auditing and debugging by allowing easy access to historical data states.
  • Rich Data Model
    Supports complex data types like maps and sets directly within its schema, providing a flexible way to represent data.
  • ACID Transactions
    Datomic supports fully ACID-compliant transactions, ensuring reliable and predictable database operations.
  • Scalability
    Separates storage and compute, allowing for horizontal scaling of read operations, making it suitable for handling large datasets.
  • Query Flexibility
    Offers a powerful query language that supports recursive queries, making it suitable for complex data retrieval needs.

Possible disadvantages of Datomic

  • Complexity
    The architecture of Datomic can be complex to understand and implement, particularly for teams unfamiliar with its design principles.
  • Cost
    Can be expensive to operate, especially in a cloud environment, where costs increase with the amount of data stored and the compute resources required.
  • Limited Write Throughput
    Due to its append-only design, Datomic can have limited write throughput, which may not be suitable for applications with heavy write requirements.
  • Closed Source
    Datomic is a proprietary database system, which may not appeal to organizations that prefer open-source solutions.
  • Learning Curve
    Requires a learning curve as its conceptual model and query language are different from traditional databases, potentially requiring additional training.
  • Dependency on AWS
    Relying on AWS ecosystem for the storage backend can limit choices for deployment environments, impacting flexibility.

Firestore features and specs

  • Scalability
    Google Cloud Datastore can automatically scale to handle large amounts of data and high read/write loads, making it suitable for applications with growing data needs.
  • Fully Managed
    As a fully managed service, Google Cloud Datastore eliminates the need for managing servers, software patches, and replication, allowing developers to focus on building applications.
  • High Availability
    Datastore provides strong consistency for reads and writes and is designed to maintain availability even in case of entire data center outages.
  • Flexible Data Model
    The schemaless nature of Datastore allows for a flexible data model that can easily adapt to changes in application requirements.
  • Integration with Google Cloud Platform
    Datastore seamlessly integrates with other Google Cloud Platform services, which simplifies the process of building end-to-end solutions.

Possible disadvantages of Firestore

  • Complex Query Language
    Datastore Query Language (GQL) can be less intuitive compared to SQL, which may pose a learning curve for developers accustomed to traditional relational databases.
  • Eventual Consistency for Queries
    While Datastore offers strong consistency for entity lookups by key, queries must be specifically configured for strong consistency, otherwise they might return eventually consistent data.
  • Cost
    As usage scales, costs can increase, particularly for applications with high write loads or those requiring many transactional operations, which might be a consideration for budget-conscious projects.
  • Limited Relational Capabilities
    Datastore is a NoSQL database, which means it lacks some of the relational features like joins and complex transactions that developers might expect from a SQL database.
  • Index Management
    Managing indexes can become complex, as every query in Datastore requires a corresponding index, and poorly planned indexes can lead to increased storage costs and slower query performance.

Analysis of Firestore

Overall verdict

  • Firestore is a robust, fully-managed NoSQL document database from Google Cloud that excels at real-time data synchronization, effortless scaling, and seamless integration with the broader Firebase and Google Cloud ecosystems, making it a strong choice for modern app development.

Why this product is good

  • Fully managed and serverless, eliminating the need for infrastructure provisioning and maintenance
  • Real-time data synchronization and offline support, ideal for responsive mobile and web apps
  • Automatic horizontal scaling to handle large numbers of concurrent users
  • Strong integration with Firebase Authentication, Cloud Functions, and other Google Cloud services
  • Flexible document-based data model with powerful querying capabilities
  • Robust security rules for fine-grained access control without a backend server
  • Multi-region replication offering high availability and strong consistency

Recommended for

  • Mobile and web app developers needing real-time updates and offline capabilities
  • Startups and teams wanting to move fast without managing database infrastructure
  • Applications already using Firebase or Google Cloud Platform
  • Projects with unpredictable or rapidly growing traffic requiring automatic scaling
  • Serverless architectures leveraging Cloud Functions and event-driven workflows
  • Collaborative and chat applications that benefit from live data synchronization

Datomic videos

KotlinConf 2018 - Datomic: The Most Innovative DB You've Never Heard Of by August Lilleaas

More videos:

  • Review - "Real-World Datomic: An Experience Report" by Craig Andera (2013)
  • Review - Rich Hickey on Datomic Ions, September 12, 2018

Firestore videos

Firestore v10: Setup & Free Tier in 4 Mins (2026)

More videos:

  • Review - Introduction to Firestore | NoSQL Document Database
  • Review - To Realtime or Not? | Get to know Cloud Firestore #10

Category Popularity

0-100% (relative to Datomic and Firestore)
Databases
48 48%
52% 52
NoSQL Databases
48 48%
52% 52
Network & Admin
55 55%
45% 45
Relational Databases
100 100%
0% 0

User comments

Share your experience with using Datomic and Firestore. For example, how are they different and which one is better?
Log in or Post with

Social recommendations and mentions

Based on our record, Firestore seems to be more popular. It has been mentiond 3 times since March 2021. We are tracking product recommendations and mentions on various public social media platforms and blogs. They can help you identify which product is more popular and what people think of it.

Datomic mentions (0)

We have not tracked any mentions of Datomic yet. Tracking of Datomic recommendations started around Mar 2021.

Firestore mentions (3)

  • Announcing Brighter V10: A Major Release with Cloud Events, New Providers, and Enhanced Resilience
    Firestore for Inbox, Outbox, and Distributed Lock. - Source: dev.to / 10 months ago
  • Guide to modern app-hosting without servers on Google Cloud
    Your app must be stateless. Don't use embedded databases. When your users hit your app again, they may be reaching another instance in a completely different state. Persist data in cloud-based storage like GCS, Cloud SQL, or Cloud Firestore. - Source: dev.to / over 1 year ago
  • Introduction to true serverless databases
    Google Firestore is a serverless document database providing direct web, IoT, and mobile app development access. Itโ€™s highly scalable with no maintenance window and zero downtime. - Source: dev.to / almost 2 years ago
  • Using Google Cloud Firestore with Django's ORM
    A long time ago, a fork of Django called โ€œDjango-nonrelโ€ experimented with the idea of using Djangoโ€™s ORM with a non-relational database; what was then called the App Engine Datastore, but is now known as Google Cloud Datastore (or technically, Google Cloud Firestore in Datastore Mode). Since then a more recent project called "django-gcloud-connectors" has been developed by Potato to allow seamless ORM integration... - Source: dev.to / over 2 years ago
  • How to deploy flask app with sqlite on google cloud ?
    In that case use Cloud Datastore (aka Firestore in Datastore Mode). It's a NoSQL db that was initially targeted just for GAE (you needed to have a GAE App even if empty to use it) but that requirement has been relaxed. Source: over 3 years ago

What are some alternatives?

When comparing Datomic and Firestore, you can also consider the following products

MySQL - The world's most popular open source database

MarkLogic Server - MarkLogic Server is a multi-model database that has both NoSQL and trusted enterprise data management capabilities.

Valentina Server - Valentina Server is 3 in 1: Valentina DB Server / SQLite Server / Report Server

Datahike - A durable datalog database adaptable for distribution.

Matisse - Matisse is a post-relational SQL database.

Oracle TimesTen - TimesTen is an in-memory, relational database management system with persistence and...