Developers May 22, 2020

[QUESTION] Using Airtable as a DB instead of Mongo?

IndependenceDev

Hey,

I see more and more Startups using Airtable as a Database, instead of MongoDB.
Airtable have a Free plan (1200 records/base) and is already hosted (so you don't need to maintain any server, check for securities issue, etc ... )

MongoDB is free, BUT you need to host the DB, maintain the server, etc ...

What are the Pros and Cons of using Airtable instead of MongoDB? What do you guys think about this?

  1. 8

    You don't need to host MongoDB, there's the cloud service Atlas

    It has a free tier, but there are also a lot (and I seriously mean a lot) of discount codes you can apply to get a free hosted database for months, even years.

    Airtable might be a good fit for an MVP, but as soon as you need something more serious, MongoDB is probably the better choice.

    1. 6

      WTF, thanks for telling me about the coupons code, just got $500 of credits in Atlas Oo !!!

      atlas

      • NRABOY200 - $200
      • GETATLAS - $100
      • WF200 - $100
      1. 4

        Here is one more:

        • NICRABOY200 - $200
        1. 1

          Wow. Thanks!

          1. 1

            Also; I'm feeling extremely greedy right now. I want moooooorrrreeee

            XD

  2. 2

    Curious, why not firestore?

    1. 1

      Hey,
      The answer is pretty simple: I don't know how to work with Firestore in NodeJS,
      I already know MongoDB

      1. 1

        Firestore has a pretty simple NodeJS API, it's all documented pretty well with examples. If you're just doing basic CRUD stuff, it should be easy to pick up.

      2. 1

        Man, Firestore is definitely way simpler than MongoDB.

        1. 1

          And more costly. I would remain on mongo.

          1. 1

            I see. How does it compare to Airtable's pricing?

            1. 1

              It doesn't, really, because of the different nature of the nosql/sql idea.

              Airtable is 20$ for 50.000 rows ATM.

  3. 2

    MongoDB clustering / sharding is amazing and super fast. When you have a big data set it really helps. You need to host your own servers for your application servers to access the database, if your doing big data work you want it all in your own VPC.

    Real time data sync and backup saves lots of time with archiving.

    There are two major things that I use MongoDB for other then the nosql. 1 - Geo Queries, this was one of the reasons MongoDB was created. 2 - Increment operator. Think of the traditional database that you want to increment the count of an item, you read it, then add one to it, then write it back. Multiply this a by a million processes and now you have to use locks to manage the data state, otherwise you have bad data. Performance is gone. MongoDB has the "inc" operator that allows you to add a value to a field and pipelines the updates. Super fast, no need for a record or table lock.

    If your doing any analytics or statistics on any of your data you want this functionality.

    MongoDB procedures are all Javascript, very simple to use plus all the functions are build in like aggregate, map/reduce, etc.

    With Mongo Atlas its very simple and cheap to get started, lots of great tools as well. Long term you probably want your own servers for privacy and performance.

  4. 1

    Real answer is: Airtable has API limits that make it only suitable for prototyping. (5 reqs / sec)

    https://community.airtable.com/t/hitting-api-limits/22810

    Now, if your prototype / MVP needs an admin interface (like what Airtable provides), then this is still a fantastic option.

    But, if you aren't having users access the Airtable document directly and edit it, I would say, don't plan on this being anything more than a prototyping tool.

    1. 1

      If limits are a problem, caching is a solution.
      I just started using cloudfront in front of it and I'm getting amazing results: faster results and no limits.

      https://medium.com/@gtalarico/using-airtable-as-a-content-backend-e373cd0d9974

  5. 1

    I use Airtable for everything, specifically when clients need a user-friendly database. It's a beautiful tool but with that said, you need to know when it's the right tool for the job.

    I'm building a specialty CRM right now and I'm using MySQL for the main database, FireStore for the user database and Airtable for an attachment database.

    They all have their pros and cons and Airtable isn't a one-tool-fits-all solution but it is highly dynamic.

    Best bet is to play with it and see what it's capable of. You may find that it wasn't built as a document database or SQL database replacement. It's more of a user-friendly relational database where it can operate as UI as well so that you can build full applications on Airtable as long as you can build it within certain parameters.

  6. 1

    I tried to use Airtable as database (about one year ago). It had a poor API, limits to row count.

    1. 1

      This remains "weird to manage" and definitely not good with millions of rows, but for those like me, which don't have millions of rows: https://community.airtable.com/t/how-to-paginate-records-in-airtable-when-using-the-api/19359

  7. 1

    ElephantSQL has a free tier for PostgreSQL databases.

  8. 1

    Heroku has a nice free tier for Postgres too, it's 10000 rows which should be fine for smaller projects. The advantage is that you have a great (and potentially scalable) database from the start and are not reliant on some "spreadsheet" software for your database.

    https://www.heroku.com/postgres

    1. 1

      Fun Fact: I don't know how to work with SQL DB ahah

      1. 3

        The basic things you need will be very easy to learn and it’s an extremely useful skill to have. It’s not more complicated than figuring out the Airtable API or Mongo DB.