Firebird vs MongoDB

Get Advice Icon

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

Firebird
Firebird

34
36
+ 1
0
MongoDB
MongoDB

16.5K
13K
+ 1
3.8K
Add tool

Firebird vs MongoDB: What are the differences?

Developers describe Firebird as "Relational database offering many ANSI SQL standard features that runs on Linux, Windows, and a variety of Unix platform". Firebird is a relational database offering many ANSI SQL standard features that runs on Linux, Windows, MacOS and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers. It has been used in production systems, under a variety of names, since 1981. On the other hand, MongoDB is detailed as "The database for giant ideas". 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.

Firebird and MongoDB can be primarily classified as "Databases" tools.

Firebird and MongoDB are both open source tools. It seems that MongoDB with 16.3K GitHub stars and 4.1K forks on GitHub has more adoption than Firebird with 347 GitHub stars and 95 GitHub forks.

According to the StackShare community, MongoDB has a broader approval, being mentioned in 2189 company stacks & 2218 developers stacks; compared to Firebird, which is listed in 3 company stacks and 5 developer stacks.

What is Firebird?

Firebird is a relational database offering many ANSI SQL standard features that runs on Linux, Windows, MacOS and a variety of Unix platforms. Firebird offers excellent concurrency, high performance, and powerful language support for stored procedures and triggers. It has been used in production systems, under a variety of names, since 1981.

What is 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.
Get Advice Icon

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

Why do developers choose Firebird?
Why do developers choose MongoDB?
    Be the first to leave a pro

    Sign up to add, upvote and see more prosMake informed product decisions

      Be the first to leave a con
      Jobs that mention Firebird and MongoDB as a desired skillset
      What companies use Firebird?
      What companies use MongoDB?

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

      What tools integrate with Firebird?
      What tools integrate with MongoDB?

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

      What are some alternatives to Firebird and MongoDB?
      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.
      MariaDB
      Started by core members of the original MySQL team, MariaDB actively works with outside developers to deliver the most featureful, stable, and sanely licensed open SQL server in the industry. MariaDB is designed as a drop-in replacement of MySQL(R) with more features, new storage engines, fewer bugs, and better performance.
      PostgreSQL
      PostgreSQL is an advanced object-relational database management system that supports an extended subset of the SQL standard, including transactions, foreign keys, subqueries, triggers, user-defined types and functions.
      Microsoft SQL Server
      Microsoft® SQL Server is a database management and analysis system for e-commerce, line-of-business, and data warehousing solutions.
      SQLite
      SQLite is an embedded SQL database engine. Unlike most other SQL databases, SQLite does not have a separate server process. SQLite reads and writes directly to ordinary disk files. A complete SQL database with multiple tables, indices, triggers, and views, is contained in a single disk file.
      See all alternatives
      Decisions about Firebird and MongoDB
      MongoDB
      MongoDB

      I starting using MongoDB because it was much easier to implement in production then hosted SQL, and found that a lot of the limitation you think of from a document store vs a relational database were overcome by connecting the application to a graphql API, making retrieval seamless. Mongos latest upgrades as well as Stitch and Mongo mobile make it a perfect fit especially if your application will be cross platform web and mobile.

      See more
      Anton Sidelnikov
      Anton Sidelnikov
      Backend Developer at Beamery · | 5 upvotes · 9K views
      MongoDB
      MongoDB
      PostgreSQL
      PostgreSQL

      In my opinion PostgreSQL is totally over MongoDB - not only works with structured data & SQL & strict types, but also has excellent support for unstructured data as separate data type (you can store arbitrary JSONs - and they may be also queryable, depending on one of format's you may choose). Both writes & reads are much faster, then in Mongo. So you can get best on Document NoSQL & SQL in single database..

      Formal downside of PostgreSQL is clustering scalability. There's not simple way to build distributed a cluster. However, two points:

      1) You will need much more time before you need to actually scale due to PG's efficiency. And if you follow database-per-service pattern, maybe you won't need ever, cause dealing few billion records on single machine is an option for PG.

      2) When you need to - you do it in a way you need, including as a part of app's logic (e.g. sharding by key, or PG-based clustering solution with strict model), scalability will be very transparent, much more obvious than Mongo's "cluster just works (but then fails)" replication.

      See more
      Zach Coffin
      Zach Coffin
      Software Developer · | 3 upvotes · 7.4K views
      MongoDB
      MongoDB
      PostgreSQL
      PostgreSQL

      I started using PostgreSQL because I started a job at a company that was already using it as well as MongoDB. The main difference between the two from my perspective is that postgres columns are a chore to add/remove/modify whereas you can throw whatever you want into a mongo collection. And personally I prefer the query language for postgres over that of mongo, but they both have their merits. Maybe someday I'll be a DBA and have more insight to share but for now there's my 2 cents.

      See more
      Antonio Sanchez
      Antonio Sanchez
      CEO at Kokoen GmbH · | 11 upvotes · 83.4K views
      atKokoen GmbHKokoen GmbH
      ExpressJS
      ExpressJS
      Node.js
      Node.js
      JavaScript
      JavaScript
      MongoDB
      MongoDB
      Go
      Go
      MySQL
      MySQL
      Laravel
      Laravel
      PHP
      PHP

      Back at the start of 2017, we decided to create a web-based tool for the SEO OnPage analysis of our clients' websites. We had over 2.000 websites to analyze, so we had to perform thousands of requests to get every single page from those websites, process the information and save the big amounts of data somewhere.

      Very soon we realized that the initial chosen script language and database, PHP, Laravel and MySQL, was not going to be able to cope efficiently with such a task.

      By that time, we were doing some experiments for other projects with a language we had recently get to know, Go , so we decided to get a try and code the crawler using it. It was fantastic, we could process much more data with way less CPU power and in less time. By using the concurrency abilites that the language has to offers, we could also do more Http requests in less time.

      Unfortunately, I have no comparison numbers to show about the performance differences between Go and PHP since the difference was so clear from the beginning and that we didn't feel the need to do further comparison tests nor document it. We just switched fully to Go.

      There was still a problem: despite the big amount of Data we were generating, MySQL was performing very well, but as we were adding more and more features to the software and with those features more and more different type of data to save, it was a nightmare for the database architects to structure everything correctly on the database, so it was clear what we had to do next: switch to a NoSQL database. So we switched to MongoDB, and it was also fantastic: we were expending almost zero time in thinking how to structure the Database and the performance also seemed to be better, but again, I have no comparison numbers to show due to the lack of time.

      We also decided to switch the website from PHP and Laravel to JavaScript and Node.js and ExpressJS since working with the JSON Data that we were saving now in the Database would be easier.

      As of now, we don't only use the tool intern but we also opened it for everyone to use for free: https://tool-seo.com

      See more
      Jeyabalaji Subramanian
      Jeyabalaji Subramanian
      CTO at FundsCorner · | 24 upvotes · 260.5K views
      atFundsCornerFundsCorner
      Zappa
      Zappa
      AWS Lambda
      AWS Lambda
      SQLAlchemy
      SQLAlchemy
      Python
      Python
      Amazon SQS
      Amazon SQS
      Node.js
      Node.js
      MongoDB Stitch
      MongoDB Stitch
      PostgreSQL
      PostgreSQL
      MongoDB
      MongoDB

      Recently we were looking at a few robust and cost-effective ways of replicating the data that resides in our production MongoDB to a PostgreSQL database for data warehousing and business intelligence.

      We set ourselves the following criteria for the optimal tool that would do this job: - The data replication must be near real-time, yet it should NOT impact the production database - The data replication must be horizontally scalable (based on the load), asynchronous & crash-resilient

      Based on the above criteria, we selected the following tools to perform the end to end data replication:

      We chose MongoDB Stitch for picking up the changes in the source database. It is the serverless platform from MongoDB. One of the services offered by MongoDB Stitch is Stitch Triggers. Using stitch triggers, you can execute a serverless function (in Node.js) in real time in response to changes in the database. When there are a lot of database changes, Stitch automatically "feeds forward" these changes through an asynchronous queue.

      We chose Amazon SQS as the pipe / message backbone for communicating the changes from MongoDB to our own replication service. Interestingly enough, MongoDB stitch offers integration with AWS services.

      In the Node.js function, we wrote minimal functionality to communicate the database changes (insert / update / delete / replace) to Amazon SQS.

      Next we wrote a minimal micro-service in Python to listen to the message events on SQS, pickup the data payload & mirror the DB changes on to the target Data warehouse. We implemented source data to target data translation by modelling target table structures through SQLAlchemy . We deployed this micro-service as AWS Lambda with Zappa. With Zappa, deploying your services as event-driven & horizontally scalable Lambda service is dumb-easy.

      In the end, we got to implement a highly scalable near realtime Change Data Replication service that "works" and deployed to production in a matter of few days!

      See more
      Khauth György
      Khauth György
      CTO at SalesAutopilot Kft. · | 11 upvotes · 94.1K views
      atSalesAutopilot Kft.SalesAutopilot Kft.
      AWS CodePipeline
      AWS CodePipeline
      Jenkins
      Jenkins
      Docker
      Docker
      vuex
      vuex
      Vuetify
      Vuetify
      Vue.js
      Vue.js
      jQuery UI
      jQuery UI
      Redis
      Redis
      MongoDB
      MongoDB
      MySQL
      MySQL
      Amazon Route 53
      Amazon Route 53
      Amazon CloudFront
      Amazon CloudFront
      Amazon SNS
      Amazon SNS
      Amazon CloudWatch
      Amazon CloudWatch
      GitHub
      GitHub

      I'm the CTO of a marketing automation SaaS. Because of the continuously increasing load we moved to the AWSCloud. We are using more and more features of AWS: Amazon CloudWatch, Amazon SNS, Amazon CloudFront, Amazon Route 53 and so on.

      Our main Database is MySQL but for the hundreds of GB document data we use MongoDB more and more. We started to use Redis for cache and other time sensitive operations.

      On the front-end we use jQuery UI + Smarty but now we refactor our app to use Vue.js with Vuetify. Because our app is relatively complex we need to use vuex as well.

      On the development side we use GitHub as our main repo, Docker for local and server environment and Jenkins and AWS CodePipeline for Continuous Integration.

      See more
      Jeyabalaji Subramanian
      Jeyabalaji Subramanian
      CTO at FundsCorner · | 12 upvotes · 21K views
      atFundsCornerFundsCorner
      MongoDB Atlas
      MongoDB Atlas
      MongoDB
      MongoDB
      PostgreSQL
      PostgreSQL

      Database is at the heart of any technology stack. It is no wonder we spend a lot of time choosing the right database before we dive deep into product building.

      When we were faced with the question of what database to choose, we set the following criteria: The database must (1) Have a very high transaction throughput. We wanted to err on the side of "reads" but not on the "writes". (2) be flexible. I.e. be adaptive enough to take - in data variations. Since we are an early-stage start-up, not everything is set in stone. (3) Fast & easy to work with (4) Cloud Native. We did not want to spend our time in "ANY" infrastructure management.

      Based on the above, we picked PostgreSQL and MongoDB for evaluation. We tried a few iterations on hardening the data model with PostgreSQL, but realised that we can move much faster by loosely defining the schema (with just a few fundamental principles intact).

      Thus we switched to MongoDB. Before diving in, we validated a few core principles such as: (1) Transaction guarantee. Until 3.6, MongoDB supports Transaction guarantee at Document level. From 4.0 onwards, you can achieve transaction guarantee across multiple documents.

      (2) Primary Keys & Indexing: Like any RDBMS, MongoDB supports unique keys & indexes to ensure data integrity & search ability

      (3) Ability to join data across data sets: MongoDB offers a super-rich aggregate framework that enables one to filter and group data

      (4) Concurrency handling: MongoDB offers specific operations (such as findOneAndUpdate), which when coupled with Optimistic Locking, can be used to achieve concurrency.

      Above all, MongoDB offers a complete no-frills Cloud Database as a service - MongoDB Atlas. This kind of sealed the deal for us.

      Looking back, choosing MongoDB with MongoDB Atlas was one of the best decisions we took and it is serving us well. My only gripe is that there must be a way to scale-up or scale-down the Atlas configuration at different parts of the day with minimal downtime.

      See more
      Ajit Parthan
      Ajit Parthan
      CTO at Shaw Academy · | 1 upvotes · 5K views
      atShaw AcademyShaw Academy
      MongoDB
      MongoDB
      MySQL
      MySQL
      #NosqlDatabaseAsAService

      Initial storage was traditional MySQL. The pace of changes during a startup mode made it very difficult to have a clean and consistent schema. Large portions ended up as unstructured data stuffed into CLOBs and BLOBs.

      Moving to MongoDB definitely made this part much easier.

      Accessing data for analysis is a little bit of a challenge - especially for people coming from the world of SQL Workbench. But with tools like Exploratory this is becoming less of a problem.

      #NosqlDatabaseAsAService

      See more
      Tim Nolet
      Tim Nolet
      Founder, Engineer & Dishwasher at Checkly · | 8 upvotes · 60.7K views
      atChecklyHQChecklyHQ
      Amazon DynamoDB
      Amazon DynamoDB
      MongoDB
      MongoDB
      Node.js
      Node.js
      Heroku
      Heroku
      PostgreSQL
      PostgreSQL

      PostgreSQL Heroku Node.js MongoDB Amazon DynamoDB

      When I started building Checkly, one of the first things on the agenda was how to actually structure our SaaS database model: think accounts, users, subscriptions etc. Weirdly, there is not a lot of information on this on the "blogopshere" (cringe...). After research and some false starts with MongoDB and Amazon DynamoDB we ended up with PostgreSQL and a schema consisting of just four tables that form the backbone of all generic "Saasy" stuff almost any B2B SaaS bumps into.

      In a nutshell:cPostgreSQL Heroku Node.js MongoDB Amazon DynamoDB

      When I started building Checkly, one of the first things on the agenda was how to actually structure our SaaS database model: think accounts, users, subscriptions etc. Weirdly, there is not a lot of information on this on the "blogopshere" (cringe...). After research and some false starts with MongoDB and Amazon DynamoDB we ended up with PostgreSQL and a schema consisting of just four tables that form the backbone of all generic "Saasy" stuff almost any B2B SaaS bumps into.

      In a nutshell:

      • We use Postgres on Heroku.
      • We use a "one database, on schema" approach for partitioning customer data.
      • We use an accounts, memberships and users table to create a many-to-many relation between users and accounts.
      • We completely decouple prices, payments and the exact ingredients for a customer's plan.

      All the details including a database schema diagram are in the linked blog post.

      See more
      Łukasz Korecki
      Łukasz Korecki
      CTO & Co-founder at EnjoyHQ · | 12 upvotes · 37.2K views
      atEnjoyHQEnjoyHQ
      PostgreSQL
      PostgreSQL
      MongoDB
      MongoDB
      RethinkDB
      RethinkDB

      We initially chose RethinkDB because of the schema-less document store features, and better durability resilience/story than MongoDB In the end, it didn't work out quite as we expected: there's plenty of scalability issues, it's near impossible to run analytical workloads and small community makes working with Rethink a challenge. We're in process of migrating all our workloads to PostgreSQL and hopefully, we will be able to decommission our RethinkDB deployment soon.

      See more
      Mauro Bennici
      Mauro Bennici
      CTO at You Are My GUide · | 7 upvotes · 10.1K views
      atYou Are My GUideYou Are My GUide
      MongoDB
      MongoDB
      TimescaleDB
      TimescaleDB
      PostgreSQL
      PostgreSQL

      PostgreSQL plus TimescaleDB allow us to concentrate the business effort on how to analyze valuable data instead of manage them on IT side. We are now able to ingest thousand of social shares "managed" data without compromise the scalability of the system or the time query. TimescaleDB is transparent to PostgreSQL , so we continue to use the same SQL syntax without any changes. At the same time, because we need to manage few document objects we dismissed the MongoDB cluster.

      See more
      Robert Zuber
      Robert Zuber
      CTO at CircleCI · | 22 upvotes · 141.3K views
      atCircleCICircleCI
      Amazon S3
      Amazon S3
      GitHub
      GitHub
      Redis
      Redis
      PostgreSQL
      PostgreSQL
      MongoDB
      MongoDB

      We use MongoDB as our primary #datastore. Mongo's approach to replica sets enables some fantastic patterns for operations like maintenance, backups, and #ETL.

      As we pull #microservices from our #monolith, we are taking the opportunity to build them with their own datastores using PostgreSQL. We also use Redis to cache data we’d never store permanently, and to rate-limit our requests to partners’ APIs (like GitHub).

      When we’re dealing with large blobs of immutable data (logs, artifacts, and test results), we store them in Amazon S3. We handle any side-effects of S3’s eventual consistency model within our own code. This ensures that we deal with user requests correctly while writes are in process.

      See more
      Martin Johannesson
      Martin Johannesson
      Senior Software Developer at IT Minds · | 10 upvotes · 14.7K views
      atIT MindsIT Minds
      AMP
      AMP
      PWA
      PWA
      React
      React
      MongoDB
      MongoDB
      Next.js
      Next.js
      GraphQL
      GraphQL
      Apollo
      Apollo
      PostgreSQL
      PostgreSQL
      TypeORM
      TypeORM
      Node.js
      Node.js
      TypeScript
      TypeScript
      #Serverless
      #Backend
      #B2B

      At IT Minds we create customized internal or #B2B web and mobile apps. I have a go to stack that I pitch to our customers consisting of 3 core areas. 1) A data core #backend . 2) A micro #serverless #backend. 3) A user client #frontend.

      For the Data Core I create a backend using TypeScript Node.js and with TypeORM connecting to a PostgreSQL Exposing an action based api with Apollo GraphQL

      For the micro serverless backend, which purpose is verification for authentication, autorization, logins and the likes. It is created with Next.js api pages. Using MongoDB to store essential information, caching etc.

      Finally the frontend is built with React using Next.js , TypeScript and @Apollo. We create the frontend as a PWA and have a AMP landing page by default.

      See more
      MongoDB
      MongoDB
      MySQL
      MySQL
      .NET Core
      .NET Core
      C#
      C#

      Hi! I needed to choose a full stack of tools for a web drop shipping site without the payment process for a family startup proyect. It will feed from several web services (JSON), I'm looking forward a 4,200 articles tops. For web use only and for a few clients at the beginning.

      I'm considering C# with .NET Core 3.0 as is the one language I'm starting to learn. For the Database I haven´t made my mind yet, but could be MySQL or MongoDB any advice is welcome as I'm getting back to programming after year away from this awesome world. Thanks

      See more
      Nicolas Apx
      Nicolas Apx
      CEO - FullStack Javascript at Apx Development Limited · | 14 upvotes · 16.4K views
      atAPX DevelopmentAPX Development
      PostgreSQL
      PostgreSQL
      MongoDB
      MongoDB
      Node.js
      Node.js
      Python
      Python

      I am planning on building a micro-service eCommerce back-end to be easy to reuse in any project as we need. I would like to use both Python and Node.js and MongoDB & PostgreSQL , in your opinion which one would best suited for the following services:

      • Users-service
      • Products-service
      • Auth-service
      • Inventory-service
      • Order-service
      • Payment-service
      • Sku-service
      • And more not yet defined....

      Thanks

      Nicolas

      See more
      Interest over time
      Reviews of Firebird and MongoDB
      Review ofFirebirdFirebird

      free license

      How developers use Firebird and MongoDB
      Avatar of Tarun Singh
      Tarun Singh uses MongoDBMongoDB

      Used MongoDB as primary database. It holds trip data of NYC taxis for the year 2013. It is a huge dataset and it's primary feature is geo coordinates with pickup and drop off locations. Also used MongoDB's map reduce to process this large dataset for aggregation. This aggregated result was then used to show visualizations.

      Avatar of Trello
      Trello uses MongoDBMongoDB

      MongoDB fills our more traditional database needs. We knew we wanted Trello to be blisteringly fast. One of the coolest and most performance-obsessed teams we know is our next-door neighbor and sister company StackExchange. Talking to their dev lead David at lunch one day, I learned that even though they use SQL Server for data storage, they actually primarily store a lot of their data in a denormalized format for performance, and normalize only when they need to.

      Avatar of Foursquare
      Foursquare uses MongoDBMongoDB

      Nearly all of our backend storage is on MongoDB. This has also worked out pretty well. It's enabled us to scale up faster/easier than if we had rolled our own solution on top of PostgreSQL (which we were using previously). There have been a few roadbumps along the way, but the team at 10gen has been a big help with thing.

      Avatar of AngeloR
      AngeloR uses MongoDBMongoDB

      We are testing out MongoDB at the moment. Currently we are only using a small EC2 setup for a delayed job queue backed by agenda. If it works out well we might look to see where it could become a primary document storage engine for us.

      Avatar of Matt Welke
      Matt Welke uses MongoDBMongoDB

      Used for proofs of concept and personal projects with a document data model, especially with need for strong geographic queries. Often not chosen in long term apps due to chance data model can end up relational as needs develop.

      How much does Firebird cost?
      How much does MongoDB cost?
      Pricing unavailable
      News about Firebird
      More news