[pgsql-jp: 37280] Re: 主キーによる高速化について

Kiyoshi Mizuno kiyoshi_mizuno @ mail.toyota.co.jp
2006年 6月 23日 (金) 08:40:43 JST


水野です。


まず

>  ・既存ページが1日に10万アクセスあります。

についてですが、こちらはDB設計だけでなくWEBシステム全体、
つまり リクエスト解析+DB検索+HTML生成 で応答レスポンスを
確保しなければなりません。
単純計算では1日は86400秒ですから、平均して1アクセス0.8秒以内
ならOKという事になります。
しかし実際には1日の中でアクセスの山谷があるはずので、応答速度に
ついてはもっと細かい(厳しい)要件定義が必要でしょう。


>  ・商品数が10万点に達しても問題なく稼動させたい

10万件程度のレコード数であれば以前にもこのMLで実用的に
稼動させている方がいますので、適切なマシンスペックとDB設計を
すれば大丈夫でしょう。


>  ・商品は複数のカテゴリに所属可能にしてほしい

ですが、用途は
(1)商品IDが所属する商品カテゴリ一覧を取得する
(2)商品カテゴリに所属する商品IDの一覧を取得する
の2つですから、商品マスタにカテゴリIDを持つ必要はないと
思います。

> ------------------------------
> [カテゴリマスタ]
> 1) カテゴリID(PK)
> 2) カテゴリ名
> 
> [商品マスタ]
> 1) 商品ID(PK)
> 2) 商品名
> 【いらない】 3) カテゴリID(PK) ←主キーに設定
> 
> [カテゴリ商品引当データ]
> 1) カテゴリID(PK)
> 2) 商品ID(PK)
> -----------------------------

として、特定カテゴリの商品一覧が欲しい時には
[商品マスタ]と[カテゴリ商品引当データ]を商品IDで結合して
SELECTすれば用は足りると思います。





pgsql-jp メーリングリストの案内