Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

MySQL Cluster with MySQL innoDB persistent store

We are working on a database solution for a high available (5 9s) application with high performance and data consistency needs. We are planning to use MySQL Cluster as the primary in-memory datastore backed up by a secondary innoDB MySQL datastore for persistent storage.

The proposed approach is that the online application will only interact with the in-memory DB (MySQL cluster) and the MySQL Cluster will propagate the data to the innoDB instance through asynchronous replication / messaging for persistent storage.

Can MySQL cluster or MySQL on its own support this requirement?

Update:

Regarding the answers provided so far:

Is this doable using just MySQL 5.1 by using the MEMORY engine for the primary datastore and the innoDB engine for the secondary datastore?

Can MySQL replicate the data inserted into the primary datastore to the secondary datastore asynchronously using an event based delayed insert approach?


1 Answers

You can replicate tables across different storage engines using MySQL. You could have tables on one server in the memory storage engine replicated to an innodb table somewhere else, or any other combination of storage engines. MySQL's binary log format is compatible with all storage engine types.

(Fun fact: This is just about the only use of the blackhole storage engine. It sends all writes to /dev/null but still logs its changes to the binary log, which means it can be replicated to a real table somewhere else asynchronously.)

See Arjen Lentz' article here: http://dev.mysql.com/tech-resources/articles/storage-engine/part_1.html

like image 186
ʞɔıu Avatar answered Dec 07 '25 03:12

ʞɔıu



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!