3


0

高性能とデータの一貫性を必要とする高可用性(5 9 s)アプリケーション用のデータベースソリューションを開発中です。 私たちは、MySQL Clusterを永続的なストレージ用のセカンダリinnoDB MySQLデータストアによってバックアップされたプライマリインメモリデータストアとして使用することを計画しています。

提案されているアプローチは、オンラインアプリケーションはインメモリDB(MySQLクラスタ)とのみ対話し、MySQL Clusterは永続ストレージの非同期レプリケーション/メッセージングを通じてデータをinnoDBインスタンスに伝播するというものです。

MySQLクラスタまたはMySQL自身がこの要件をサポートできますか?

更新:

これまでに提供された回答に関して:

プライマリデータストアにMEMORYエンジンを使用し、セカンダリデータストアにinnoDBエンジンを使用することで、MySQL 5.1だけを使用してこれを実行できますか?

MySQLは、イベントベースの遅延挿入アプローチを使用して、プライマリデータストアに挿入されたデータをセカンダリデータストアに非同期的に複製できますか?

2 Answer


4


MySQLを使用すると、異なるストレージエンジン間でテーブルを複製できます。 メモリストレージエンジン内の1つのサーバー上のテーブルを他の場所のinnodbテーブル、またはその他のストレージエンジンの組み合わせに複製することができます。 MySQLのバイナリログフォーマットはすべてのストレージエンジンタイプと互換性があります。

(おかしな事実:これはブラックホールストレージエンジンの唯一の使用法に関するものです。 すべての書き込みを/ dev / nullに送信しますが、それでも変更内容をバイナリログに記録します。つまり、非同期で他の場所の実際のテーブルに複製することができます。)

こちらのArjen Lentzの記事を参照してください。http://dev.mysql.com/tech-resources/articles/storage-engine / part_1.html


0


はい、クラスタを複製することは可能です。

MySQLクラスタは現在外部キーをサポートしていないことに注意してください。 だからあなたはあなた自身のキー依存関係追跡ソリューションを作る必要があります(一般的な方法はトリガーです)