私はこの構造の多くのオブジェクトを持っています:
~ PlaceID
= Upvotes
= Downvotes
= Names
- Title
+ Upvotes
+ Downvotes
- Other names[]
+ Upvotes
+ Downvotes
= Location
- Lat
- Long
- Address
= Images
- Top
+ id/url
+ Upvotes
+ Downvotes
- Others[]
+ Upvotes
+ Downvotes
= Comments[]
- id
- Text
- Upvotes
- Downvotes
- ReplyTo
整理しておくために、多くのリンクを含むスキーマをレイアウトしました。これはテーブルの例です:
7741 (プレイスID)
______________________________________________________________________________
names | location | upvotes | downvotes | images | Comments
_______________________________________________________________________________
7741_names | 7741_location | 20 | 3 | 7741_images | 7741_comments
次に、たとえば 7741_images (スコアでソートされているため、「トップ」アイテムが簡単に取得できます):
imgID | score | upvotes | downvotes | url |
________________________________________________________
7741_21 | 98 | 44 | 1 | /img/7741_21.png |
7741_14 | 94 | 40 | 2 | /img/7741_14.png |
オブジェクトごとに多数のテーブルを使用するこのドリルダウン スタイルでは、クエリが非常に遅くなったり、非常に具体的なクエリが過度に冗長になったりしますか? (100k の場所の場合?)
私はスキーマの設計を担当したことがないので、明らかなことを見逃していたらすみません。