Need advice about which tool to choose?Ask the StackShare community!

Amazon DynamoDB

3.7K
3.2K
+ 1
195
Firebase

41.2K
35.3K
+ 1
2K
Add tool

Amazon DynamoDB vs Firebase: What are the differences?

Introduction: Amazon DynamoDB and Firebase are two popular NoSQL databases used for building scalable applications. Both platforms offer various features and capabilities, but they also have distinct differences that set them apart.

  1. Data Modeling and Querying: Amazon DynamoDB uses a schema-less design that allows for flexible data modeling. It also provides powerful querying capabilities with support for secondary indexes. On the other hand, Firebase follows a more structured data model with a JSON-based database that simplifies data storage but may limit complex querying capabilities compared to DynamoDB.

  2. Scalability and Performance: Amazon DynamoDB is designed to handle large-scale applications with seamless scalability and high-performance throughput. It offers automatic partitioning and replication of data to handle high traffic loads efficiently. In contrast, Firebase is known for its real-time database that excels in handling concurrent connections and updates, making it a preferred choice for applications requiring real-time updates.

  3. Pricing Model: Amazon DynamoDB follows a pay-per-request pricing model where you only pay for the read and write requests made to the database. It also offers provisioned throughput capacity to optimize costs based on expected traffic. Firebase, on the other hand, follows a usage-based pricing model that charges based on storage, data transfer, and online users, which can be beneficial for smaller applications with fluctuating traffic.

  4. Integration with Other Services: Amazon DynamoDB seamlessly integrates with other AWS services like Lambda, S3, and API Gateway, enabling developers to build complex serverless architectures easily. Firebase, on the contrary, is tightly integrated with Google Cloud services like Cloud Functions, Authentication, and Hosting, providing a unified platform for developing and deploying applications.

  5. Mobile Development Support: Firebase is widely recognized for its robust support for mobile app development, offering features like authentication, real-time database, cloud messaging, and app indexing. It provides SDKs for various platforms, simplifying the integration process for mobile developers. While DynamoDB can also be used for mobile app development, Firebase's dedicated focus on mobile-related features sets it apart in this aspect.

  6. Data Storage Limits: Amazon DynamoDB imposes limits on the size of individual items and total storage capacity based on the selected pricing plan. Firebase, however, provides a generous limit on the amount of data that can be stored and synced in real-time across devices, making it suitable for applications with large datasets and frequent data updates.

In Summary, Amazon DynamoDB excels in scalability and flexible querying capabilities, making it ideal for large-scale applications, while Firebase stands out for its real-time capabilities, mobile development support, and user-friendly pricing model, making it a preferred choice for real-time applications and smaller projects requiring rapid development.

Advice on Amazon DynamoDB and Firebase
Needs advice
on
ApolloApolloFirebaseFirebase
and
Socket.IOSocket.IO

We are starting to work on a web-based platform aiming to connect artists (clients) and professional freelancers (service providers). In-app, timeline-based, real-time communication between users (& storing it), file transfers, and push notifications are essential core features. We are considering using Node.js, ExpressJS, React, MongoDB stack with Socket.IO & Apollo, or maybe using Real-Time Database and functionalities of Firebase.

See more
Replies (3)
Timothy Malstead
Junior Full Stack Developer at Freelance · | 7 upvotes · 488.2K views
Recommends
on
FirebaseFirebase

I would recommend looking hard into Firebase for this project, especially if you do not have dedicated full-stack or backend members on your team.

The real time database, as you mentioned, is a great option, but I would also look into Firestore. Similar to RTDB, it adds more functions and some cool methods as well. Also, another great thing about Firebase is you have easy access to storage and dead simple auth as well.

Node.js Express MongoDB Socket.IO and Apollo are great technologies as well, and may be the better option if you do not wish to cede as much control to third parties in your application.

Overall, I say if you wish to focus more time developing your React application instead of other parts of your stack, Firebase is a great way to do that.

See more
Recommends
on
AblyAbly

Hello Noam 👋,

I suggest taking a look at Ably, it has all the realtime features you need and the platform is designed to guarantee critical functionality at scale.

Here is an in depth comparison between Ably and Firebase

See more
Recommends
on
8base8base

Hey Noam,

I would recommend you to take a look into 8base. It has features you've requested, also relation database and GraphQL API which will help you to develop rapidly.

Thanks, Ilya

See more
Manage your open source components, licenses, and vulnerabilities
Learn More
Pros of Amazon DynamoDB
Pros of Firebase
  • 62
    Predictable performance and cost
  • 56
    Scalable
  • 35
    Native JSON Support
  • 21
    AWS Free Tier
  • 7
    Fast
  • 3
    No sql
  • 3
    To store data
  • 2
    Serverless
  • 2
    No Stored procedures is GOOD
  • 1
    ORM with DynamoDBMapper
  • 1
    Elastic Scalability using on-demand mode
  • 1
    Elastic Scalability using autoscaling
  • 1
    DynamoDB Stream
  • 371
    Realtime backend made easy
  • 270
    Fast and responsive
  • 242
    Easy setup
  • 215
    Real-time
  • 191
    JSON
  • 134
    Free
  • 128
    Backed by google
  • 83
    Angular adaptor
  • 68
    Reliable
  • 36
    Great customer support
  • 32
    Great documentation
  • 25
    Real-time synchronization
  • 21
    Mobile friendly
  • 19
    Rapid prototyping
  • 14
    Great security
  • 12
    Automatic scaling
  • 11
    Freakingly awesome
  • 8
    Super fast development
  • 8
    Angularfire is an amazing addition!
  • 8
    Chat
  • 6
    Firebase hosting
  • 6
    Built in user auth/oauth
  • 6
    Awesome next-gen backend
  • 6
    Ios adaptor
  • 4
    Speed of light
  • 4
    Very easy to use
  • 3
    Great
  • 3
    It's made development super fast
  • 3
    Brilliant for startups
  • 2
    Free hosting
  • 2
    Cloud functions
  • 2
    JS Offline and Sync suport
  • 2
    Low battery consumption
  • 2
    .net
  • 2
    The concurrent updates create a great experience
  • 2
    Push notification
  • 2
    I can quickly create static web apps with no backend
  • 2
    Great all-round functionality
  • 2
    Free authentication solution
  • 1
    Easy Reactjs integration
  • 1
    Google's support
  • 1
    Free SSL
  • 1
    CDN & cache out of the box
  • 1
    Easy to use
  • 1
    Large
  • 1
    Faster workflow
  • 1
    Serverless
  • 1
    Good Free Limits
  • 1
    Simple and easy

Sign up to add or upvote prosMake informed product decisions

Cons of Amazon DynamoDB
Cons of Firebase
  • 4
    Only sequential access for paginate data
  • 1
    Scaling
  • 1
    Document Limit Size
  • 31
    Can become expensive
  • 16
    No open source, you depend on external company
  • 15
    Scalability is not infinite
  • 9
    Not Flexible Enough
  • 7
    Cant filter queries
  • 3
    Very unstable server
  • 3
    No Relational Data
  • 2
    Too many errors
  • 2
    No offline sync

Sign up to add or upvote consMake informed product decisions

What is Amazon DynamoDB?

With it , you can offload the administrative burden of operating and scaling a highly available distributed database cluster, while paying a low price for only what you use.

What is Firebase?

Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds.

Need advice about which tool to choose?Ask the StackShare community!

What companies use Amazon DynamoDB?
What companies use Firebase?
Manage your open source components, licenses, and vulnerabilities
Learn More

Sign up to get full access to all the companiesMake informed product decisions

What tools integrate with Amazon DynamoDB?
What tools integrate with Firebase?

Sign up to get full access to all the tool integrationsMake informed product decisions

Blog Posts

GitNode.jsFirebase+5
7
2418
GitHubPythonNode.js+47
55
72856
GitGitHubSlack+30
27
18724
GitHubDockerAmazon EC2+23
12
6621
GitHubPythonSlack+25
7
3229
What are some alternatives to Amazon DynamoDB and Firebase?
Google Cloud Datastore
Use a managed, NoSQL, schemaless database for storing non-relational data. Cloud Datastore automatically scales as you need it and supports transactions as well as robust, SQL-like queries.
MongoDB
MongoDB stores data in JSON-like documents that can vary in structure, offering a dynamic, flexible schema. MongoDB was also designed for high availability and scalability, with built-in replication and auto-sharding.
Amazon SimpleDB
Developers simply store and query data items via web services requests and Amazon SimpleDB does the rest. Behind the scenes, Amazon SimpleDB creates and manages multiple geographically distributed replicas of your data automatically to enable high availability and data durability. Amazon SimpleDB provides a simple web services interface to create and store multiple data sets, query your data easily, and return the results. Your data is automatically indexed, making it easy to quickly find the information that you need. There is no need to pre-define a schema or change a schema if new data is added later. And scale-out is as simple as creating new domains, rather than building out new servers.
MySQL
The MySQL software delivers a very fast, multi-threaded, multi-user, and robust SQL (Structured Query Language) database server. MySQL Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software.
Amazon S3
Amazon Simple Storage Service provides a fully redundant data storage infrastructure for storing and retrieving any amount of data, at any time, from anywhere on the web
See all alternatives