Get Advice Icon

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

MariaDB
MariaDB

3.6K
2.6K
+ 1
472
RabbitMQ
RabbitMQ

4.5K
3.2K
+ 1
451
Add tool

MariaDB vs RabbitMQ: What are the differences?

Developers describe MariaDB as "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. On the other hand, RabbitMQ is detailed as "A messaging broker - an intermediary for messaging". RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.

MariaDB can be classified as a tool in the "Databases" category, while RabbitMQ is grouped under "Message Queue".

Some of the features offered by MariaDB are:

  • Replication
  • Insert Delayed
  • Events

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

  • Robust messaging for applications
  • Easy to use
  • Runs on all major operating systems

"Drop-in mysql replacement" is the primary reason why developers consider MariaDB over the competitors, whereas "It's fast and it works with good metrics/monitoring" was stated as the key factor in picking RabbitMQ.

MariaDB and RabbitMQ are both open source tools. It seems that RabbitMQ with 5.95K GitHub stars and 1.78K forks on GitHub has more adoption than MariaDB with 2.82K GitHub stars and 864 GitHub forks.

reddit, 9GAG, and Rainist are some of the popular companies that use RabbitMQ, whereas MariaDB is used by nrise, Docplanner, and MAK IT. RabbitMQ has a broader approval, being mentioned in 940 company stacks & 548 developers stacks; compared to MariaDB, which is listed in 496 company stacks and 461 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 RabbitMQ?

RabbitMQ gives your applications a common platform to send and receive messages, and your messages a safe place to live until received.
Get Advice Icon

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

Why do developers choose MariaDB?
Why do developers choose RabbitMQ?

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 RabbitMQ?

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

    What tools integrate with MariaDB?
    What tools integrate with RabbitMQ?

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

    What are some alternatives to MariaDB and RabbitMQ?
    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.
    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.
    See all alternatives
    Decisions about MariaDB and RabbitMQ
    StackShare Editors
    StackShare Editors
    MariaDB
    MariaDB
    MySQL
    MySQL

    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
    James Cunningham
    James Cunningham
    Operations Engineer at Sentry · | 18 upvotes · 78.1K views
    atSentrySentry
    RabbitMQ
    RabbitMQ
    Celery
    Celery
    #MessageQueue

    As Sentry runs throughout the day, there are about 50 different offline tasks that we execute—anything from “process this event, pretty please” to “send all of these cool people some emails.” There are some that we execute once a day and some that execute thousands per second.

    Managing this variety requires a reliably high-throughput message-passing technology. We use Celery's RabbitMQ implementation, and we stumbled upon a great feature called Federation that allows us to partition our task queue across any number of RabbitMQ servers and gives us the confidence that, if any single server gets backlogged, others will pitch in and distribute some of the backlogged tasks to their consumers.

    #MessageQueue

    See more
    Adam Rabinovitch
    Adam Rabinovitch
    Global Technical Recruiting Lead & Engineering Evangelist at Beamery · | 3 upvotes · 156.7K views
    atBeameryBeamery
    Kafka
    Kafka
    Redis
    Redis
    Elasticsearch
    Elasticsearch
    MongoDB
    MongoDB
    RabbitMQ
    RabbitMQ
    Go
    Go
    Node.js
    Node.js
    Kubernetes
    Kubernetes
    #Microservices

    Beamery runs a #microservices architecture in the backend on top of Google Cloud with Kubernetes There are a 100+ different microservice split between Node.js and Go . Data flows between the microservices over REST and gRPC and passes through Kafka RabbitMQ as a message bus. Beamery stores data in MongoDB with near-realtime replication to Elasticsearch . In addition, Beamery uses Redis for various memory-optimized tasks.

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

    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
    RabbitMQ
    RabbitMQ
    Kafka
    Kafka

    The question for which Message Queue to use mentioned "availability, distributed, scalability, and monitoring". I don't think that this excludes many options already. I does not sound like you would take advantage of Kafka's strengths (replayability, based on an even sourcing architecture). You could pick one of the AMQP options.

    I would recommend the RabbitMQ message broker, which not only implements the AMQP standard 0.9.1 (it can support 1.x or other protocols as well) but has also several very useful extensions built in. It ticks the boxes you mentioned and on top you will get a very flexible system, that allows you to build the architecture, pick the options and trade-offs that suite your case best.

    For more information about RabbitMQ, please have a look at the linked markdown I assembled. The second half explains many configuration options. It also contains links to managed hosting and to libraries (though it is missing Python's - which should be Puka, I assume).

    See more
    Frédéric MARAND
    Frédéric MARAND
    Core Developer at OSInet · | 2 upvotes · 87.9K views
    atOSInetOSInet
    RabbitMQ
    RabbitMQ
    Beanstalkd
    Beanstalkd
    Kafka
    Kafka

    I used Kafka originally because it was mandated as part of the top-level IT requirements at a Fortune 500 client. What I found was that it was orders of magnitude more complex ...and powerful than my daily Beanstalkd , and far more flexible, resilient, and manageable than RabbitMQ.

    So for any case where utmost flexibility and resilience are part of the deal, I would use Kafka again. But due to the complexities involved, for any time where this level of scalability is not required, I would probably just use Beanstalkd for its simplicity.

    I tend to find RabbitMQ to be in an uncomfortable middle place between these two extremities.

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

    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. PostgreSQLs 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 MariaDB and RabbitMQ
    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.

    Review ofRabbitMQRabbitMQ

    I developed one of the largest queue based medical results delivery systems in the world, 18,000+ queues and still growing over a decade later all using MQSeries, later called Websphere MQ. When I left that company I started using RabbitMQ after doing some research on free offerings.. it works brilliantly and is incredibly flexible from small scale single instance use to large scale multi-server - multi-site architectures.

    If you can think in queues then RabbitMQ should be a viable solution for integrating disparate systems.

    How developers use MariaDB and RabbitMQ
    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 Cloudify
    Cloudify uses RabbitMQRabbitMQ

    The poster child for scalable messaging systems, RabbitMQ has been used in countless large scale systems as the messaging backbone of any large cluster, and has proven itself time and again in many production settings.

    Avatar of Chris Saylor
    Chris Saylor uses RabbitMQRabbitMQ

    Rabbit acts as our coordinator for all actions that happen during game time. All worker containers connect to rabbit in order to receive game events and emit their own events when applicable.

    Avatar of Clarabridge Engage
    Clarabridge Engage uses RabbitMQRabbitMQ

    Used as central Message Broker; off-loading tasks to be executed asynchronous, used as communication tool between different microservices, used as tool to handle peaks in incoming data, etc.

    Avatar of Seungkwon Park
    Seungkwon Park uses MariaDBMariaDB

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

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

    Avatar of Analytical Informatics
    Analytical Informatics uses RabbitMQRabbitMQ

    RabbitMQ is the enterprise message bus for our platform, providing infrastructure for managing our ETL queues, real-time event notifications for applications, and audit logging.

    Avatar of Packet
    Packet uses RabbitMQRabbitMQ

    RabbitMQ is an all purpose queuing service for our stack. We use it for user facing jobs as well as keeping track of behind the scenes jobs.

    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

    How much does MariaDB cost?
    How much does RabbitMQ cost?
    Pricing unavailable
    Pricing unavailable
    News about RabbitMQ
    More news