非常に大きなテーブルの場合、インデックス作成が非常に役立つ場合があります。しかし、データベース内の小さなテーブルが多すぎる場合の解決策は何ですか? ?
テーブルが多すぎる大規模な DB がある場合はどうなりますか。インデックスがテーブルのクエリを高速化するのに役立つため、クエリを高速化するにはどうすればよいですか?
実際の例で話しましょう。stackoverflow.com には、言うテーブルがあります。「質問」。ID、日付、投票を持っています。次に、質問テーブルに各 ID のテーブル が存在します。(このテーブルは数値 ID の名前になります。例: " q-45588 ") "questions"テーブルに簡単にインデックスを付けることができます。しかし、各質問 id の非常に多くの子テーブルについてはどうでしょうか。(ID、回答 1、回答 2、回答 3、コメント 1、コメント 2... 投票、反対票、日付、フラグなど、さまざまなものが含まれる場合があります) ?
これは、通常のアカウント ソフトウェアで発生することです。すなわち。すべての債務者の ID を持つ債務者アカウント テーブルと、その ID ごとに各テーブルが存在する (債務者の詳細を含む)
それとも設計上の問題ですか? * update * ----------------- 一部の人々は、質問テーブル、回答テーブル、コメント テーブルなど、 3 つまたは 4 つのテーブル (何兆行もある可能性があります) ですべてを行うと言うかもしれません。ユーザー テーブル。
変更されたスタックの例を次に示します
Catagory of thread:-----info----
Question
Discussion
Catagory of Thread Response:----info-----
A Answer
c comment
Theads:----A table-----
Id (key)
Thread Id number (Long data type)
status (active,normal,closed(visible but not editable), deleted, flagged, etc.
type (Ques / Dis)
votes Up
vots Down
count of views
tag 1
tag 2
tag 3
Subject
body
maker ID
date time stramp of time creation
date time stramp of time last activity
A Answer count
c comment count
Thread: (table name is thread id (long data type) (in Threads table)----A table-----
id (key)
response text
response type ( A Answer / c comment)
vote up
vote down
abuse count