1

非常に大規模なデータベース(最大1億5000万行)がいくつかあります。最初にデータを挿入した後は、ほとんど何もINSERT's行われていません。の多くのSELECT's使用法JOINS

私はInfoBright(コミュニティバージョン)を何度もいじっています。これは優れたエンジンだと思いますが、個人的には、InfoBrightを正常に(高速に)実行するのに問題がありました。

だから私は他の誰かがMySQL用の他の高速無料ストレージエンジンをお勧めできるかどうか疑問に思っていましたか?

私はちょうど今チェックアウトしていtokudbます; 他にチェックアウトするものはありますか?

4

4 に答える 4

3

InfiniDBも確認する必要があります。http://infinidb.org/(最速の1つ)

エンジンのベンチマークを行う前に、考慮しなければならないことがたくさんあります。マルチコアプロセッサ、メモリ、構成などのハードウェア。スキーマなどに関連するものと、これらすべてがエンジンパフォーマンスにどのように影響するかを設計します。

エンジンのベンチマーク(他のエンジンタイプの名前)については、このブログをチェックしてください-http ://www.mysqlperformanceblog.com/2010/01/07/star-schema-bechmark-infobright-infinidb-and-luciddb/

この比較はスタースキーマ設計用であることに注意してください。カラム型データベースエンジンが要件に合わない場合は、InnoDBの拡張バージョンであるXtraDBを調べることができます(最速ではありませんが、ACIDに準拠しています)。

ps-参照整合性チェック、ACIDコンプライアンスなど、各エンジンのプロパティ(重要)を常に追跡します。クエリのパフォーマンスが10%向上するのに比べて、これらの制限が大きな取引ブレーカーになる場合があります。

于 2011-05-21T19:58:39.433 に答える
2

使用するDBMSを考慮するだけでなく、テーブル、インデックス、およびクエリの最適化にも焦点を当てる必要があります。複数の結合がある場合は常に、最初に最も選択的な関係で結合し、次に選択性の低い関係で結合します。クエリ実行プランを分析します。QEPで頻繁にヒットする列にインデックスを作成します。

于 2011-05-21T18:51:58.140 に答える
2

スフィンクスを見たことがありますか?これは検索エンジンですが、クエリなしの検索もサポートしています。これは、インデックスを使用した標準のSELECTクエリに似ています。大規模なデータセットを処理する場合に非常に役立つことがわかりました。これは非常に高速で、数百万(または数億)の投稿領域で増加しているトラフィックの多いフォーラムで頻繁に使用されます。

また、SphinxSEと呼ばれるMySQLのプラグインもあります。これにより、MySQLストレージエンジンとして機能し、統合のセットアップが非常に簡単になります。インデクサープログラムにクエリを提供してインデックスを作成し、すべての設定が完了すると、通常のテーブルであるかのようにクエリを実行できます。

http://sphinxsearch.com/docs/2.0.1/sphinxse-overview.html(注、1.0より前からあまり使用していません)

于 2011-05-21T18:55:45.127 に答える
0

ブレット-Infobrightを使用すると、次の方法で最高のパフォーマンスが得られます。1)ナレッジグリッドを可能な限り活用する2)結合を減らす3)「ルックアップ」を作成する

Knowledge-Gridはメモリ内にあるため、フィルターを追加するだけで多くのクエリ時間をなくすことができます。また、結合の代わりにネストされた選択を使用することを検討してください。そうすることで、(その場でパックツーパックノードを生成する代わりに)作成済みのナレッジノードを使用できます。

より高速であると思われるクエリがある場合は、それらを投稿してください。クエリをより高速に実行できるように変更する可能性があります。

乾杯、

ジェフ

于 2011-07-21T15:51:41.343 に答える