ソーシャルネットワーキングサイトを構築しています。トラフィックが多いことを願っています。その中でphpとmysqlを使用しています。私はすでにRDBMSの種類のデータベースを使い始めました。トラフィックの多いサイトの多くがキー値データベース モデルを使用していると読みました。私の状況では、どちらに行くべきですか? この早い段階で決めたほうがいいんじゃないかな
2 に答える
今のところは、従来の RDBMS 形式の MySQL に慣れている場合はそのまま使用してください。サイト構築の第 1 段階で規模の問題を心配するよりも、できるだけ早くサイトを立ち上げて実行することが重要です。
そうは言っても、システムの一部を設計する際にスケールの問題を念頭に置いておくことは問題ありません。MySQL は、シャーディングなどのいくつかの基本的なスケーラビリティ部分ですでに非常に優れているため、おそらくしばらくは問題なく使用できるでしょう。十分に高いトラフィック レベルに達した場合でも、十分な数のインデックスを備えた適切な DB 設計があれば、稼働し続けることができます。
大量のトラフィックが予想されるので (私たち全員ではありませんか?)、実際のトラフィックを測定し、本当にスケールする必要があるかどうかを判断できるように、サーバーの負荷をログに記録/追跡することを強くお勧めします (アップまたはアウトは両方です)。負荷特性に応じた適切なオプション)
友達同士の関係のキーバリューテーブルがあればいいと思います。たとえば、人物 a には 500 人の友人がいて、人物 b には 100 人の友人がいる可能性があります。つまり、重複したデータが 1 つのテーブルに何度もコピーされるのを防ぐために、人物 1 の ID と彼の友人の ID を取得し、それらを配置します。テーブルで。これにより、整数を操作しているため、検索、挿入、および更新が高速になります。
例えば
テーブル friends_relationship id - フレンド 1 - 2 1 - 3 2 - 4 3 - 4
関係が一意であることを確認する必要があります