0

私は 2 つの Web サイトを開発しています - 1 つはほとんどテーブルがなく、もう 1 つは 50 以上のテーブルがあります。PHPとMySQLを使用しています。

両方の Web サイトのテーブルのいくつかは、毎年 10 万行を優に超える数を受け取ると予想されます。StackOverflow の投稿で、MySQL では数十万行は問題にならないという記事を読みました。しかし、私の Web サイトでは、行数は約 10 年以上で「巨大」になります。

また、これらのテーブルからのデータベース アクセス数は、予想されるピーク時に非常に高くなります。

それで、私は2つの質問があります。まず、MySQL は VLDB などのシナリオに対応できますか? 次に、インデックス作成などの手法を使用してデータベース アクセスを高速化したとしても、MySQL は極端な負荷の下で多数のリクエストを処理できますか? そうでない場合、代わりにどの DBMS を使用する必要がありますか?

4

3 に答える 3

1

うーん、MySQL は、トラフィックの少ないサイトから最もトラフィックの多いサイトまで、多くの Web サイトで常に使用されています。Google/Amazon のようなトラフィックが発生し、文字通り独自のソリューションをコーディングする必要がない限り、MySQL は負荷を問題なく処理します。データベース構造/適切なインデックス作成/負荷分散にもっと焦点を当てます。ソフトウェアは問題なく動作します。必然的にそれを台無しにするのはユーザーです。

于 2012-10-24T16:53:05.587 に答える
1

良いニュースは、10 年後のコンピューターは現在のコンピューターよりもはるかに高速になるということです。それだけで、多くのスケーリングが可能になるはずです。

データを正しく構造化し、それに応じてサーバーを調整できる場合、MySQL はデータを処理できます。数百万行が問題になることはめったになく、Tumblr とそのJetpantsツールセットの場合のように、慎重な計画により数十億行にまで達した例もあります。

書き込みまたは読み取りアクティビティの頻度や強度については、あまり詳しく説明していません。「非常に高い」とは、1 分あたり数百を意味する場合もあれば、1 秒あたり数百万を意味する場合もあります。

于 2012-10-24T16:55:29.513 に答える
1

パフォーマンスが mySQL でどの程度スケーリングされるかは、主に次の要素に依存します。

  1. データベースがどれだけうまく設計されているか。
  2. データがどの程度適切にインデックス化されているか。
  3. クエリがどれだけうまく書かれているか。

これら 3 つが上限に達しても、データを分割してサーバーをクラスター化することはできますが、正直なところ、1,000 万行の DB は、多くの人が「中規模の」データベースと呼ぶ可能性があります。

于 2012-10-24T17:05:25.087 に答える