0

だから私はこの追跡アプリケーション atm を開発しています。それは 2 つの Web サーバーで実行され、目的は訪問者の行動を追跡することです。

データはマスターであるサーバー A で収集されます。そのために MYSQL ブラックホール エンジンを使用することにしました。これは、実際には挿入を実行せず、それらをログ ファイルに書き込むだけであり、データを含む 1 つのテーブルを複製するためです。スレーブであるサーバー B にリアルタイムで送信します。

サーバー B には、統計レポートを生成するために使用されるアプリケーションのレポート部分があります。そのため、統計レポートを作成するために実際に 99% 以上の読み取り操作が行われ、ユーザーがたとえば、新しいキャンペーンを作成したり、キャンペーンを削除したり、ユーザー名/パスワードを更新したりします。

ここで、レポート部分にどの MYSQL エンジンを使用する必要があるかという疑問が生じましたが、MYISAM と INNODB のどちらのエンジンが最速の読み取りをサポートしているのかわかりません。

どんな助けでも大歓迎です:)

PS: サーバー B のレポート データベースは大量のデータを収集することを忘れていました。そのため、年間数億行のデータを処理する必要があり、統計レポートを作成できる必要がある可能性は十分にあります。このデータから非常に迅速に。

4

2 に答える 2

2

ほとんどの読み取りの要件に基づいて、MYISAM と言います。大幅に単純化して、大量の読み取りには MYISAM を使用し、大量の書き込みには INNODB を使用します。

Developer99は、選択に役立つ小さなチャートを作成しました。

                                                    My ISAM   InnoDB
Required full text Search                             Yes     
Require Transactions                                           Yes
frequent select queries                               Yes     
frequent insert,update,delete                                  Yes
Row Locking (multi processing on single table)                 Yes
Relational base design                                         Yes
于 2012-10-16T03:05:41.047 に答える
0

テーブルの関係に基づいています。MyISAM は歴史的に InnoDB よりも高速であると見なされてきましたが、最近のバージョンの InnoDB では、それははるかに小さなユース ケース セットに当てはまります。MyISAM は通常、読み取り専用テーブルのテーブル スキャンで高速です。

于 2012-10-16T03:08:58.423 に答える