MariaDB vs PostgreSQL

Get Advice Icon

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

MariaDB
MariaDB

3.7K
2.7K
+ 1
472
PostgreSQL
PostgreSQL

17.3K
13.1K
+ 1
3.4K
Add tool

MariaDB vs PostgreSQL: What are the differences?

MariaDB: An enhanced, drop-in replacement for MySQL. 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: A powerful, open source object-relational database system. 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.

MariaDB and PostgreSQL belong to "Databases" category of the tech stack.

"Drop-in mysql replacement", "Great performance" and "Open source" are the key factors why developers consider MariaDB; whereas "Relational database", "High availability " and "Enterprise class database" are the primary reasons why PostgreSQL is favored.

MariaDB and PostgreSQL are both open source tools. It seems that PostgreSQL with 5.38K GitHub stars and 1.79K forks on GitHub has more adoption than MariaDB with 2.79K GitHub stars and 856 GitHub forks.

According to the StackShare community, PostgreSQL has a broader approval, being mentioned in 2701 company stacks & 2098 developers stacks; compared to MariaDB, which is listed in 496 company stacks and 453 developer stacks.

What is 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.

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

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

Why do developers choose MariaDB?
Why do developers choose PostgreSQL?

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

    Be the first to leave a con
    What companies use MariaDB?
    What companies use PostgreSQL?

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

    What tools integrate with MariaDB?
    What tools integrate with PostgreSQL?

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

    What are some alternatives to MariaDB and PostgreSQL?
    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.
    Percona
    It delivers enterprise-class software, support, consulting and managed services for both MySQL and MongoDB across traditional and cloud-based platforms.
    Oracle
    Oracle Database is an RDBMS. An RDBMS that implements object-oriented features such as user-defined types, inheritance, and polymorphism is called an object-relational database management system (ORDBMS). Oracle Database has extended the relational model to an object-relational model, making it possible to store complex business models in a relational database.
    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.
    Cassandra
    Partitioning means that Cassandra can distribute your data across multiple machines in an application-transparent matter. Cassandra will automatically repartition as machines are added and removed from the cluster. Row store means that like relational databases, Cassandra organizes data by rows and columns. The Cassandra Query Language (CQL) is a close relative of SQL.
    See all alternatives
    Decisions about MariaDB and PostgreSQL
    Anton Sidelnikov
    Anton Sidelnikov
    Backend Developer at Beamery · | 6 upvotes · 9.1K views
    PostgreSQL
    PostgreSQL
    MongoDB
    MongoDB

    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
    Yonas Beshawred
    Yonas Beshawred
    CEO at StackShare · | 9 upvotes · 28.7K views
    atStackShareStackShare
    MemCachier
    MemCachier
    PostgreSQL
    PostgreSQL
    Rails
    Rails
    Amazon ElastiCache
    Amazon ElastiCache
    Heroku
    Heroku
    Memcached
    Memcached
    #Caching
    #RailsCaching

    We decided to use MemCachier as our Memcached provider because we were seeing some serious PostgreSQL performance issues with query-heavy pages on the site. We use MemCachier for all <