MySQL 8.2 Introduces Transparent Read/Write Splitting(infoq.com)
infoq.com
MySQL 8.2 Introduces Transparent Read/Write Splitting
https://www.infoq.com/news/2023/11/mysql-read-write-splitting/
15 comments
ProxySQL is a complex jet engine requiring manual tuning. 99% of MySQL users will be satisfied with the simple configuration and automatic query parsing of MySQL Router.
> ProxySQL is a complex jet engine
You’re not wrong. Getting ProxySQL config correct to do exactly what you want and nothing else can be quite the undertaking. Even moreso if you want to have it be HA and capable of live ruleset reloads.
You’re not wrong. Getting ProxySQL config correct to do exactly what you want and nothing else can be quite the undertaking. Even moreso if you want to have it be HA and capable of live ruleset reloads.
Yeah, in the last 2 releases of PostgreSQL there is not even a single feature that was useful for me, so I'm kinda disappointed. and there are so many missing features in postgresql (stop using threads for connections, automatically precompile all parameterized queries, "real" materialized views, etc...)
Not MySQL, but with the MariaDB and MaxScale combo this has been possible for quite some time. The only drawback in my opinion is that you'll need a duplicate set of grants, one for accessing the database for the maxscale process and one for accessing the database as the client user. It is free to use for small clusters (3 node).
I've been a happy MaxScale user for a couple of years now, it is simple to configure and very robust.
I've been a happy MaxScale user for a couple of years now, it is simple to configure and very robust.
Handling stale data needs to be considered when implementing it.
ORMs like Prisma execute an update query and follow it up with a select. This would result in stale data being returned most of the time. If you use this data expecting your update to be contained in it you are going to have a bad time (statemachines, etc.)
Can PostgreSQL do this?
Not natively, no. You’d need to front it with something like PgCat [0].
[0]: https://github.com/postgresml/pgcat
[0]: https://github.com/postgresml/pgcat
Glad to see it.
Any scalability simplification features like this are very welcome, and necessary to compete with other databases at this point such as CockroachDB and Vitess
Any scalability simplification features like this are very welcome, and necessary to compete with other databases at this point such as CockroachDB and Vitess
> compete
Isn't Vitess built on top of MySQL?
Isn't Vitess built on top of MySQL?
Iirc Vitess is not built on MySQL. It is MySQL compatible (for queries/ connections) but that's about it.
You are not remembering correctly.
That doesn't seem right.
https://vitess.io/docs/16.0/overview/architecture/
https://vitess.io/docs/16.0/overview/architecture/
[0]: https://github.com/sysown/proxysql