簡體   English   中英

哪種方法在mysql上存儲統計信息更有效?

[英]Which way is more efficient to store stats on mysql?

我為網站訪問者提供了一個統計數據庫,我需要找到哪種是存儲數據的最有效方法:

我遇到了2個選擇。

選項編號1:

+-----------------------------+
+ date        | country       +
+-----------------------------+
+  2014-03-20 | US            +
+  2014-03-20 | US            +
+  2014-03-20 | NL            +                 
+  2014-03-21 | US            +
+-----------------------------+

然后Select count(*) from table獲取訪問者數據

選項編號2:

+-----------------------------+
+ date        | country | visits+
+-----------------------------+
+  2014-03-20 |     US | 2    +
+  2014-03-20 |     NL | 1    +
+  2014-03-21 |     US | 1    +
+-----------------------------+

然后使用Select sum(visits) from table獲取訪問者數據

您認為哪個是最佳選擇? 還是有更好的選擇? 請注意這一點,以防流量很大。

提前非常感謝您。

顯然,更有效的方法是將第二個選項與count一起使用。 多行匯總為單行,僅以4字節整數為代價。 通常,具有多行相同的表效率不高。

因此,出於查詢目的,第二選擇會更好。

在創建和維護表方面,首選是更有效的。 與更新現有行相比,插入新記錄的開銷較小。 這可能沒什么大不了的,但是在某些情況下這會有所作為。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM