Amazon RDS for Aurora vs MariaDB

Get Advice Icon

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

Amazon RDS for Aurora
Amazon RDS for Aurora

375
225
+ 1
48
MariaDB
MariaDB

4.4K
3.2K
+ 1
472
Add tool

Amazon RDS for Aurora vs MariaDB: What are the differences?

Amazon RDS for Aurora: MySQL and PostgreSQL compatible relational database with several times better performance. Amazon Aurora is a MySQL-compatible, relational database engine that combines the speed and availability of high-end commercial databases with the simplicity and cost-effectiveness of open source databases. Amazon Aurora provides up to five times better performance than MySQL at a price point one tenth that of a commercial database while delivering similar performance and availability; 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.

Amazon RDS for Aurora belongs to "SQL Database as a Service" category of the tech stack, while MariaDB can be primarily classified under "Databases".

Some of the features offered by Amazon RDS for Aurora are:

  • High Throughput with Low Jitter
  • Push-button Compute Scaling
  • Storage Auto-scaling

On the other hand, MariaDB provides the following key features:

  • Replication
  • Insert Delayed
  • Events

"MySQL compatibility " is the top reason why over 11 developers like Amazon RDS for Aurora, while over 150 developers mention "Drop-in mysql replacement" as the leading cause for choosing MariaDB.

MariaDB is an open source tool with 2.82K GitHub stars and 864 GitHub forks. Here's a link to MariaDB's open source repository on GitHub.

nrise, Docplanner, and MAK IT are some of the popular companies that use MariaDB, whereas Amazon RDS for Aurora is used by Medium, StackShare, and Zumba. MariaDB has a broader approval, being mentioned in 496 company stacks & 461 developers stacks; compared to Amazon RDS for Aurora, which is listed in 121 company stacks and 31 developer stacks.

- No public GitHub repository available -

What is Amazon RDS for Aurora?

Amazon Aurora is a MySQL-compatible, relational database engine that combines the speed and availability of high-end commercial databases with the simplicity and cost-effectiveness of open source databases. Amazon Aurora provides up to five times better performance than MySQL at a price point one tenth that of a commercial database while delivering similar performance and availability.

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

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

Why do developers choose Amazon RDS for Aurora?
Why do developers choose MariaDB?

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

    Be the first to leave a con
    What companies use Amazon RDS for Aurora?
    What companies use MariaDB?

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

    What tools integrate with Amazon RDS for Aurora?
    What tools integrate with MariaDB?

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

    What are some alternatives to Amazon RDS for Aurora and MariaDB?
    Amazon RDS
    Amazon RDS gives you access to the capabilities of a familiar MySQL, Oracle or Microsoft SQL Server database engine. This means that the code, applications, and tools you already use today with your existing databases can be used with Amazon RDS. Amazon RDS automatically patches the database software and backs up your database, storing the backups for a user-defined retention period and enabling point-in-time recovery. You benefit from the flexibility of being able to scale the compute resources or storage capacity associated with your Database Instance (DB Instance) via a single API call.
    Google Cloud SQL
    MySQL databases deployed in the cloud without a fuss. Google Cloud Platform provides you with powerful databases that run fast, don’t run out of space and give your application the redundant, reliable storage it needs.
    DigitalOcean Managed Databases
    Build apps and store data in minutes with easy access to one or more databases and sleep better knowing your data is backed up and optimized.
    Books
    It is an immutable double-entry accounting database service. It supports many clients and businesses at global scale, leaning on Google Cloud Spanner and Google Kubernetes Engine to make that possible.
    ClearDB
    ClearDB uses a combination of advanced replication techniques, advanced cluster technology, and layered web services to provide you with a MySQL database that is "smarter" than usual.
    See all alternatives
    Decisions about Amazon RDS for Aurora and MariaDB
    StackShare Editors
    StackShare Editors
    MySQL
    MySQL
    MariaDB
    MariaDB

    Airbnb’s web experience is powered by a Rails monolith, called Monorail, that talks to several different Java services. MySQL databases store business data and are partitioned by functionality, with messages and calendar management, for example, stored separately from the main booking flow in their own databases.

    As traffic to the site continued growing, though, “one notable resource issue with MySQL databases [was] the increasing number of database connections from application servers.”

    Airbnb uses AWS’s Relational Database Service (RDS) to power their MySQL instances, and “RDS uses the community edition of MySQL server, which employs a one-thread-per-connection model of connection management.” With Airbnb’s scale, this meant that their databases would hit the C10K problem, which states that “there is an upper bound in the number of connections that MySQL server can accept and serve without dramatically increasing the number of threads running, which severely degrades MySQL server performance.”

    When an RDS MySQL server hits resource limits, users will have trouble connecting to the site.

    MySQL does have dynamic thread pooling, but it’s only available in the enterprise edition; AWS MySQL RDS, though, doesn’t offer this feature, meaning Airbnb didn’t have access to dynamic thread pooling out-of-the-box.

    After surveying several options, the team chose MariaDB MaxScale, which is “a MySQL database proxy that supports intelligent query routing in between client applications and a set of backend MySQL servers.”

    Instead of using the MariaDB MaxScale off-the-shelf, however, they decided to fork it and implement their own version that would include connection pooling. Other MaxScale features, like request throttling and query blocklisting were implemented as well.

    To enable horizontal scaling of the web application, the team deployed a MaxScale database proxy service in between app servers and MySQL servers. Through the service discovery system SmartStack, applications now “discover and connect to the database proxy service instead of the MySQL database,” allowing horizontal scaling to meet capacity demands.

    Additionally, new Airbnb MaxScale proxy server instances can be launched to further enable horizontal scaling.

    See more
    Tim Specht
    Tim Specht
    ‎Co-Founder and CTO at Dubsmash · | 13 upvotes · 81K views
    atDubsmashDubsmash
    PostgreSQL
    PostgreSQL
    Heroku
    Heroku
    Amazon RDS
    Amazon RDS
    Amazon DynamoDB
    Amazon DynamoDB
    Redis
    Redis
    Amazon RDS for Aurora
    Amazon RDS for Aurora
    #SqlDatabaseAsAService
    #NosqlDatabaseAsAService
    #Databases
    #PlatformAsAService

    Over the years we have added a wide variety of different storages to our stack including PostgreSQL (some hosted by Heroku, some by Amazon RDS) for storing relational data, Amazon DynamoDB to store non-relational data like recommendations & user connections, or Redis to hold pre-aggregated data to speed up API endpoints.

    Since we started running Postgres ourselves on RDS instead of only using the managed offerings of Heroku, we've gained additional flexibility in scaling our application while reducing costs at the same time.

    We are also heavily testing Amazon RDS for Aurora in its Postgres-compatible version and will also give the new release of Aurora Serverless a try!

    #SqlDatabaseAsAService #NosqlDatabaseAsAService #Databases #PlatformAsAService

    See more
    AWS Elastic Beanstalk
    AWS Elastic Beanstalk
    Heroku
    Heroku
    Ruby
    Ruby
    Rails
    Rails
    Amazon RDS for PostgreSQL
    Amazon RDS for PostgreSQL
    MariaDB
    MariaDB
    Microsoft SQL Server
    Microsoft SQL Server
    Amazon RDS
    Amazon RDS
    AWS Lambda
    AWS Lambda
    Python
    Python
    Redis
    Redis
    Memcached
    Memcached
    AWS Elastic Load Balancing (ELB)
    AWS Elastic Load Balancing (ELB)
    Amazon Elasticsearch Service
    Amazon Elasticsearch Service
    Amazon ElastiCache
    Amazon ElastiCache

    We initially started out with Heroku as our PaaS provider due to a desire to use it by our original developer for our Ruby on Rails application/website at the time. We were finding response times slow, it was painfully slow, sometimes taking 10 seconds to start loading the main page. Moving up to the next "compute" level was going to be very expensive.

    We moved our site over to AWS Elastic Beanstalk , not only did response times on the site practically become instant, our cloud bill for the application was cut in half.

    In database world we are currently using Amazon RDS for PostgreSQL also, we have both MariaDB and Microsoft SQL Server both hosted on Amazon RDS. The plan is to migrate to AWS Aurora Serverless for all 3 of those database systems.

    Additional services we use for our public applications: AWS Lambda, Python, Redis, Memcached, AWS Elastic Load Balancing (ELB), Amazon Elasticsearch Service, Amazon ElastiCache

    See more
    Julien DeFrance
    Julien DeFrance
    Principal Software Engineer at Tophatter · | 16 upvotes · 1.1M views
    atSmartZipSmartZip
    Rails
    Rails
    Rails API
    Rails API
    AWS Elastic Beanstalk
    AWS Elastic Beanstalk
    Capistrano
    Capistrano
    Docker
    Docker
    Amazon S3
    Amazon S3
    Amazon RDS
    Amazon RDS
    MySQL
    MySQL
    Amazon RDS for Aurora
    Amazon RDS for Aurora
    Amazon ElastiCache
    Amazon ElastiCache
    Memcached
    Memcached
    Amazon CloudFront
    Amazon CloudFront
    Segment
    Segment
    Zapier
    Zapier
    Amazon Redshift
    Amazon Redshift
    Amazon Quicksight
    Amazon Quicksight
    Superset
    Superset
    Elasticsearch
    Elasticsearch
    Amazon Elasticsearch Service
    Amazon Elasticsearch Service
    New Relic
    New Relic
    AWS Lambda
    AWS Lambda
    Node.js
    Node.js
    Ruby
    Ruby
    Amazon DynamoDB
    Amazon DynamoDB
    Algolia
    Algolia

    Back in 2014, I was given an opportunity to re-architect SmartZip Analytics platform, and flagship product: SmartTargeting. This is a SaaS software helping real estate professionals keeping up with their prospects and leads in a given neighborhood/territory, finding out (thanks to predictive analytics) who's the most likely to list/sell their home, and running cross-channel marketing automation against them: direct mail, online ads, email... The company also does provide Data APIs to Enterprise customers.

    I had inherited years and years of technical debt and I knew things had to change radically. The first enabler to this was to make use of the cloud and go with AWS, so we would stop re-inventing the wheel, and build around managed/scalable services.

    For the SaaS product, we kept on working with Rails as this was what my team had the most knowledge in. We've however broken up the monolith and decoupled the front-end application from the backend thanks to the use of Rails API so we'd get independently scalable micro-services from now on.

    Our various applications could now be deployed using AWS Elastic Beanstalk so we wouldn't waste any more efforts writing time-consuming Capistrano deployment scripts for instance. Combined with Docker so our application would run within its own container, independently from the underlying host configuration.

    Storage-wise, we went with Amazon S3 and ditched any pre-existing local or network storage people used to deal with in our legacy systems. On the database side: Amazon RDS / MySQL initially. Ultimately migrated to Amazon RDS for Aurora / MySQL when it got released. Once again, here you need a managed service your cloud provider handles for you.

    Future improvements / technology decisions included:

    Caching: Amazon ElastiCache / Memcached CDN: Amazon CloudFront Systems Integration: Segment / Zapier Data-warehousing: Amazon Redshift BI: Amazon Quicksight / Superset Search: Elasticsearch / Amazon Elasticsearch Service / Algolia Monitoring: New Relic

    As our usage grows, patterns changed, and/or our business needs evolved, my role as Engineering Manager then Director of Engineering was also to ensure my team kept on learning and innovating, while delivering on business value.

    One of these innovations was to get ourselves into Serverless : Adopting AWS Lambda was a big step forward. At the time, only available for Node.js (Not Ruby ) but a great way to handle cost efficiency, unpredictable traffic, sudden bursts of traffic... Ultimately you want the whole chain of services involved in a call to be serverless, and that's when we've started leveraging Amazon DynamoDB on these projects so they'd be fully scalable.

    See more
    Joshua Dean Küpper
    Joshua Dean Küpper
    CEO at Scrayos UG (haftungsbeschränkt) · | 6 upvotes · 122.6K views
    atScrayos UG (haftungsbeschränkt)Scrayos UG (haftungsbeschränkt)
    Nextcloud
    Nextcloud
    MariaDB
    MariaDB
    PostgreSQL
    PostgreSQL
    GitLab
    GitLab
    Sentry
    Sentry

    We primarily use MariaDB but use PostgreSQL as a part of GitLab , Sentry and Nextcloud , which (initially) forced us to use it anyways. While this isn't much of a decision – because we didn't have one (ha ha) – we learned to love the perks and advantages of PostgreSQL anyways. PostgreSQL's extension system makes it even more flexible than a lot of the other SQL-based DBs (that only offer stored procedures) and the additional JOIN options, the enhanced role management and the different authentication options came in really handy, when doing manual maintenance on the databases.

    See more
    Interest over time
    Reviews of Amazon RDS for Aurora and MariaDB
    Review ofMariaDBMariaDB

    MySQL was founded by Allan Larsson, Michael Widenius and David Axmark in the year 1995, 19 years ago. It was released under the name of co-founder Michael Widenius daughter, ‘My‘. This project was released under GNU General Public License as well as under certain Proprietary License. MySQL was owned by MySQL AB firm until it went into the hands of Oracle Corporation. It is written in Programming Language – C and C++ and is available for Windows, Linux, Solaris, MacOS and FreeBSD.

    In the year 2009, Michael Widenius started working on MarisDB as a fork of MySQL. In the year 2012 the bricks of nonprofit MariaDB Foundation was laid. It was named after the founder’s daughter Maria.

    MariaDB is a fork of MySQL Relational Database Management System which again is released under GNU General Public License. It is written in Programming Language – C, C++, Perl and Bash and is available for Systems Linux, Windows, Solaris, MacOS and FreeBSD.

    How developers use Amazon RDS for Aurora and MariaDB
    Avatar of Scrayos UG (haftungsbeschränkt)
    Scrayos UG (haftungsbeschränkt) uses MariaDBMariaDB

    Aside from Redis, we use MariaDB to store long-term information like user-data and big-data like regeneration-information for our open-world servers. We extensively use the relational aspects of MariaDB in joins, nested queries and unions.

    Avatar of Seungkwon Park
    Seungkwon Park uses MariaDBMariaDB

    mysql보다 mariaDB가 join면에서 우수하다는 문서를 읽었습니다. 이 부분은 저의 블로그에서도 다뤘고 저의 word press 블로그는 mysql 대신 mariaDB 를 사용합니다.

    특히 limit 기능이 pagenation 처리를 할 때 너무 직관적이고 편해서 mariaDB, mysql을 사랑합니다.

    Avatar of Ana Phi Sancho
    Ana Phi Sancho uses MariaDBMariaDB

    Introduced in computer science course.managing relational database management systems, database analytics, and for data processing

    Avatar of nrise
    nrise uses MariaDBMariaDB

    수 백만개가 넘는 태그 키워드의 자동완성을 위해서 별도의 데이터베이스를 구축하였습니다. MariaDB 는 MySQL 을 포크한 프로젝트입니다. MySQL 과의 강력한 호환성을 지니며, 큰 튜닝 없이 강력한 성능을 보장합니다.

    Avatar of Dolls Kill
    Dolls Kill uses MariaDBMariaDB

    MariaDB has allowed us to easily scale out our DB cluster. Also has better replication tools than MySQL

    Avatar of Secumail
    Secumail uses Amazon RDS for AuroraAmazon RDS for Aurora

    Managed MySQL clustered database so I dont have to deal with the required infrastructure

    Avatar of RedLine13
    RedLine13 uses Amazon RDS for AuroraAmazon RDS for Aurora

    Core database for managing users, teams, tests, and result summaries

    Avatar of Yaakov Gesher
    Yaakov Gesher uses Amazon RDS for AuroraAmazon RDS for Aurora

    We moved our database from compose.io to AWS for speed and price.

    Avatar of Bùi Thanh
    Bùi Thanh uses Amazon RDS for AuroraAmazon RDS for Aurora
    • Performance, HA and Scalable.
    • AutoScale replicas.
    How much does Amazon RDS for Aurora cost?
    How much does MariaDB cost?
    Pricing unavailable