readysettech / readyset

Readyset is a MySQL and Postgres wire-compatible caching layer that sits in front of existing databases to speed up queries and horizontally scale read throughput. Under the hood, ReadySet caches the results of cached select statements and incrementally updates these results over time as the underlying data changes.
https://readyset.io
Other
4.54k stars 126 forks source link

Investigate mariadb support #1401

Open altmannmarcelo opened 4 days ago

altmannmarcelo commented 4 days ago

Description

Investigate what is required to suport mariadb. We have had some interest in the past and it seems to be a small lift to add support for it.

The biggest difference is that mariadb uses row events (update/delete/insert) v1, different from mysql, which uses v2.

Apart from that, GTID is also different from both.

Change in user-visible behavior

Requires documentation change

nickchomey commented 4 days ago

I would love support for MariaDB. And I think there's a much larger amount of people using it than commonly estimated.

DB-Engines seems to be the most "official" ranking, but their method uses things like mentions on the web, job postings, google trends etc...

However, due to their near-complete compatibility, I almost exclusively refer to mysql when I'm actually using mariadb. I have to figure most people are the same. Its like S3-compatible, Redis-compatible, etc... People just say S3/Redis. Chromium derivatives might even apply here too - when it comes to Browser APIs, you can generally just say Chrome vs Firefox vs Safari.

The latest Stack Overflow survey suggests a much higher usage rate (17% for Mariadb, 40% for mysql, 49% for postgres), and it's probably higher.

So, if it isn't too much of an effort to add support, I think it would be well worth implementing sooner than later.

nickchomey commented 4 days ago

There's also this existing issue asking about Mariadb support. Not sure if you want to merge them somehow.

https://github.com/readysettech/readyset/issues/728