Google offers Cloud Pub/Sub, a managed message oriented middleware supporting many-to-many asynchronous messaging between applications.
N/A
MariaDB Platform
Score 9.5 out of 10
N/A
MariaDB is an open-source relational database made by the original developers of MySQL, supported by the MariaDB Foundation and a community of developers. The community states recent additional capabilities as including clustering with Galera Cluster 4, compatibility with Oracle Database, and Temporal Data Tables, allowing one to query the data as it stood at any point in the past.
If you want to stream high volumes of data, be it for ETL streaming or event sourcing, Google Cloud Pub/Sub is your go-to tool. It's easy to learn, easy to observe its metrics and scales with ease without additional configuration so if you have more producers of consumers, all you need to do is to deploy on k8s your solutions so that you can perform autoscaling on your pods to adjust to the data volume. The DLQ is also very transparent and easy to configure. Your code will have no logic whatsoever regarding orchestrating pubsub, you just plug and play. However, if you are not in the Google Cloud Pub/Sub environment, you might have trouble or be most likely unable to use it since I think it's a product of Google Cloud.
With a pub/sub architecture the consumer is decoupled in time from the publisher i.e. if the consumer goes down, it can replay any events that occurred during its downtime.
It also allows consumer to throttle and batch incoming data providing much needed flexibility while working with multiple types of data sources
A simple and easy to use UI on cloud console for setup and debugging
It enables event-driven architectures and asynchronous parallel processing, while improving performance, reliability and scalability
Simpler learning curve. MariaDB is a cleaner, simpler system that is (IMO) easier to learn and easier to manage effectively than many other database systems.
Lower hardware requirements. After migrating to MariaDB from another database software system, we find that our hardware needs have substantially decreased.
MariaDB support is very responsive. It's like they actually care. On the few occasions we've run into technical issues, support has always come through with what we needed. Once it was showing me a relatively new feature the server supported that I wasn't aware of, that, once I was able to properly make use of it helped me resolve a serious production performance issue.
Architectural flexibility. As an example, the ready availability of synchronous (Galera) versus asynchronous replication schemes without being locked into one of the other by enormous technical complexity or punitive licensing, allows the customer to find what really works best for their needs.
Driver Support - Some third party applications use database drivers that cause unexplained slowness with MariaDB. This can be worked around by using the MySQL drivers, but it's not clear what causes the problem in the first place.
Support - While online communities are helpful in diagnosing problems, there isn't as much professional documentation/support available for MariaDB as some of the other major database options.
Data Visualization - It would be helpful if there were more built in options for analyzing statistics and generating reports.
It serves all of our purposes in the most transparent way I can imagine, after seeing other message queueing providers, I can only attest to its quality.
It is easy to create Google Cloud Pub/Sub topics from both Web Console and CLI commands.
Google Cloud Pub/Sub supports creation of one or more subscriptions.
By supporting a BigQuery Pub/Sub subscription to automatically write to a BigQuery table it simplifies development by avoiding implementation of a custom micro service for writes to BigQuery.
MariaDB is very usable and stable to be used in production settings as an alternative to MySQL. The shortcomings of SQL are present but well understood in the community, and if the decision were to be made again, I would choose MariaDB over MySQL on future projects.
They have decent documentation, but you need to pay for support. We weren't able to answer all our questions with the documentation and didn't have time to setup support before we needed it so I can't give it a higher rating but I think it tends to be a bit slow unless you're a GCP enterprise support customer.
We have launched several inquiries to MariaDB support and they have always responded very quickly and have not been tutoring for the duration of the incident/problem.
Likewise, they want to hold constant meetings with the client to get their opinion as well as how they can help.
I see a very human support and concerned about the customer.
Having used Amazon Web Services SNS & SQS I can say that even if the latter may offer more features, Google Cloud Pub/Sub is easier to use. On the other hand, usage of SNS & SQS as well as documentation and troubleshooting is easier with the AWS solution. Since we are not using GCP only for Pub/Sub the choice depends on other variables.
MariaDB stacks up the the competition just fine. Due to is ture open source nature we do not have to worry about licencing and spending money on nothing. Moreover, MariaDB does everything that we need to get done. We can run data that is a million rows or many smaller projects on the same environment with little overhead. One of the best features that MariaDB has is the ability of backup or dump data to standard text sql statements. That was one of the reasons why we choose MariaDb because it makes backups or transferring data a snap
You can just plug in consumers at will and it will respond, there's no need for further configuration or introducing new concepts. You have a queue, if it's slow, you plug in more consumers to process more messages: simple as that.