[英]Mysql table design advice
我對MySQL數據庫表設計有一個一般性問題。 我有一個表,包含約65萬條記錄,每年大約增加10萬條記錄。 數據請求非常頻繁,平均每秒請求1.6次。
現在具有以下結構
id port_id date product1_price product2_price product3_price
1 1 2012-01-01 100.00 200.00 155.00
2 2 2012-01-01 NULL 150.00 255.00
3 3 2012-01-01 300.00 NULL 355.00
4 1 2012-01-02 200.00 250.00 355.00
5 2 2012-01-02 400.00 230.00 255.00
以這種方式存儲數據會更好嗎?
id port_id date product price
1 1 2012-01-01 1 100
1 2 2012-01-01 1 200
1 3 2012-01-01 1 300
1 1 2012-01-02 1 240
替代設計的優點:
替代設計的缺點:
在這兩種情況下,我們在port_id
和date
組合上都有id
列作為PRIMARY_KEY和UNIQUE鍵。
所以問題是:走哪條路? 磁盤空間無關緊要,查詢速度是最重要的方面。
感謝您的關注。
它接縫,這將取決於product
表的定義。
如果產品表由最多三部分組成的靜態組合,那么更改當前設計將無濟於事。
盡管當前的設計很難聞,但這將是與業務相關的分析。
BTW更改必須謹慎對待產品表及其用法的副作用。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.