私は助けてくれるリンクを見つけることができませんでしたので、皆さんにお尋ねします。MySQLの制限はいくらですか?どのくらい保存できますか?
mysqlの制限はありますか?同時にいくつのクエリを実行できますか?
チャットログを他のアカウント履歴とともにデータベースに保存したいので、どのくらいの頻度でクリアする必要がありますか?
私は助けてくれるリンクを見つけることができませんでしたので、皆さんにお尋ねします。MySQLの制限はいくらですか?どのくらい保存できますか?
mysqlの制限はありますか?同時にいくつのクエリを実行できますか?
チャットログを他のアカウント履歴とともにデータベースに保存したいので、どのくらいの頻度でクリアする必要がありますか?
同時にいくつのクエリを実行できますか?
これは、クエリが意味することと、「同時に」という意味に依存します。
私の経験では、単調なクエリの場合、うまくチューニングされた1台のMySQLサーバで1秒あたり10,000クエリを実行できます。
しかし、多くのクエリではわずかな時間がかかりますが、1秒あたりのクエリは「同時に」と同じではありません。 10,000 qpsのスループットを持っていても、わずか数百のクエリの同時並行性がピークになることがあります。
スケーラビリティを向上させるために、ほとんどのサイトでは、1台のサーバーがトラフィックを増やすことなく、複数のMySQLサーバーを使用しています。たとえば、Wikipediaは毎秒25,000件のクエリを実行し、20台以上のサーバーに分散しています。 https://www.mysql.com/why-mysql/case-studies/mysql-cs-wikipedia.html
ハイエンドサーバーのベンチマークでは、1秒あたり100万件を超えるクエリが実行されていることが証明されています。 https://www.flamingspork.com/blog/2014/06/03/1-million-sql-queries-per-second-mysql-5-7-on-power8/
MySQLマニュアルには、テーブルサイズなどのアーキテクチャ上の制限が記載されたhttps://dev.mysql.com/doc/refman/5.7/en/limits.htmlというこのページがあります。
私が管理するシステムでは、最大のテーブルは50億行以上あります。この表の索引付けとパーティション化には注意が必要です。この表の問合せには注意が必要です。
私たちは、それぞれが1億以上の行を持つ他の多くのテーブルを持っています。これらは、管理と問い合わせがずっと簡単です。これらの表にはパーティション化は必要ありません。
サーバーの容量も重要です。より多くのRAM、より多くのCPUコア、高速ディスクは、すべてデータベースサーバーのパフォーマンスにとって重要です。多くのスケーラビリティを得ることができますが、コストがかかります。
最終的に、アプリケーションの作業負荷の下で、あなたが余裕があるサーバーでどれくらいのことができるかを知る必要がありますか?これはスタックオーバーフローの誰かがあなたに答えてくれるものではありません。あなたはそれを自分でテストしなければなりません。
FacebookはMySQLを使用しています。 Facebookよりも多くのデータを保存しますか? – Strawberry
あなたのハードウェアとアーキテクチャに依存するので、この質問に対する答えを見つけることはできません。 – JNevill
@Strawberry私はFacebookが彼らのニーズに合わせてSQL構造を書き直してカスタマイズしたので、他の誰もが使用するアウト・ザ・ボックス・コードではありません – Martin