5

現在のユーザー側の MySQL データベースを変更しています。米国中のユーザーがデータベースにクエリを実行するウェブサイトとモバイルアプリがあります。関連データは 3 つのテーブルに含まれており、関連する結果をユーザーに送信するには、3 つのテーブルに対する結合クエリが必要です。

ユーザーに返される結果は小さいサイズ (<6kb) です。目標が低レイテンシーであり、スループットの優先度が低い場合、次の 2 つのデータベースのどちらがより優れたパフォーマンスを発揮しますか?

MemSQL または AWS Aurora?

どちらもハードウェアの開始コストは同じです (~$0.28/時間)。「MySQL」の社内知識を継続できるように、この段階ではこれら 2 つのデータベースのみを検討しています。

DB の頭痛の種を Aurora にアウトソーシングできる点が気に入っています。しかし、確かに MemSQL のメモリへの読み取り/書き込み機能は、低レイテンシーのソリューションでしょうか?

4

1 に答える 1

8

速度の点でインメモリに勝るものはありません。これが MemSQL の目的です。テーブルを (行ストア モードで) メモリに格納し、カスタム クエリ エンジンを使用してクエリを中間言語にキャッシュし、可能な限り高速に実行できるようにします。Aurora は従来のディスクベースの MySQL インスタンスに似ていますが、Amazon のサービスを最大限に活用するために多くのインフラストラクチャの変更と最適化が行われています。

ただし、決定する前に、「低遅延」とは何を意味するのかを理解する必要があります。これは数秒以内ですか、それともミリ秒以内ですか?

MemSQL は高速で、クエリによってはミリ秒単位で実行される可能性が高くなります。Aurora は遅くなりますが、クエリと割り当てられたリソース、およびデータの構造によっては、おそらく 1 秒未満で配信できます。

これ以上の詳細は省きますが、答えはパフォーマンスの許容範囲で判断してから実験することです。

于 2016-04-30T06:28:32.863 に答える