2010-12-16 21 views
0

これは非常に抽象的な質問かもしれませんが、適切な方向を教えてください。HOW TO:トラフィックの多いデータベース

Twitterのようなwebapp(重い挿入&読み込み)のためのDBデザインと複製の設定。

+3

男ねえ、私はあなたが以下ならば、人々はあなたによく答えるあなたを約束することができます:あなたは何を持っていない場合、あなたは* *あなたが持っているべきだと思うものを私たちに示して説明し、あなたが既に持っているものを私たちに示し、より詳細にプロジェクトに取り組んでいます。 S.O.特にあなたの質問がとても抽象的で、「私のために仕事をしてください」と聞こえる場合は、十分な詳細を与えなければ、心配するようです。私があなたに言ったことから始めるならば(詳細)、人々はあなたの質問の残りの部分をティーンにするでしょう、私はあなたに約束することができます。 – Crisfole

答えて

1

負荷が非常に高い場合は、NoSQL databasesと考えられます。このソリューションは、ほとんどの場合、データを読み取る必要があり、データロジックが複雑ではない場合に適しています。 NoSQLソリューションは、適切に構成されていると、リレーショナル・データベースよりも時間がかかることがあります。

もしあなたがMySQLを使いたいのであれば、この質問はあまりにも抽象的です。

  1. 適切なテーブル構造
  2. 適切なインデックス
  3. キャッシング
  4. 正規と非正規化
  5. クエリ
  6. クラスタリング

:あなたが考える必要があるもののトンがあります。これらすべての質問をGoogleが理解するために、これらの質問がインポートされる理由蟻。あなたがMySQLの性能を最大限に引き出すことを真剣に考えているなら、私は本当に "High performance MySQL"をお勧めします - この本は素晴らしいです。

High performance MySQL

+0

私の知る限り、NoSQLはACIDの品質が適用されてもSQLより速くはありません。アプリケーションにACIDをドロップすると、SQLソリューションはNoSQLほど高速に動作します。 –

+0

@ Victor:SQLデータベースは汎用性があるため(ほとんど)常により重くなりますが、特別な目的のdbmsは少し高速になります。 NoSQLは製品ではありません。これは、リレーショナルデータベースと何らかの点で異なるdbmsを指す用語です。この記事ではハンマーと爪をマッチングさせるのにはかなり良い仕事をしています:http://highscalability.com/blog/2010/12/6/what-the-heck-are-you-actually-using-nosql-for.html – Ronnis