資料庫資料量過大處理 分表

2022-03-05 00:59:54 字數 882 閱讀 6954

記錄一下,個人理解。。。

資料表中資料太多的話,剛開始可以用索引之類的來優化。隨著業務多。。難免效能就下來了。 這時候就需要去思考,怎麼處理,就想到了把資料來源分開,把一張表分開成幾張表。。

首先如何判斷用不用判斷,以及分表後的後端,綜合考慮之後,直接開幹。。

--exec sp_spaceused '表名'  --查詢表所佔空間

先分析下,一張表活動資料如果上百萬級別的話,就可以考慮分表了。。。

分表可以寫乙個簡單的服務,或者開乙個簡單的執行緒。。按照表名+月份  或者表名+年份來安排。。

以後查詢的時候,根據時間去查詢所對應的表。。。

月份表獲取表名例子:

private

static list gettableindex(datetime? fromtime, datetime? totime, string

tablename)

if (!totime.hasvalue)

datetime dtday1 = new datetime(fromtime.value.year, fromtime.value.month, 1

); datetime dtday =totime.value;

while (dtday >=dtday1)

return

listtablename;

}

對於orm框架不太友好 需要專門去維護一下   或者寫sql去查在轉成orm物件。

PHPExcel匯出資料量過大處理

今天使用phpexce外掛程式導不出資料,發現是資料量過大的原因,這裡只做簡單的處理。1 匯出超時處理 在執行頁面新增 set time limit 0 2 記憶體溢位 在執行頁面新增 ini set memory limit 1024m 簡單來說就是在執行頁面新增了以下兩行 set time li...

資料庫資料量過大導致執行緩慢的解決方案

我們知道最直接最簡單的方法就是把該錶的資料量變小,那麼把錶資料變少有什麼辦法呢?最簡單最直接的方法就是再建立一張具有相同結構的資料表,建好表之後,再把不需要經常呼叫的資料放到該備用表中,當需要查詢的時候,再查該錶,這種方法雖笨但很直接,我以oracle為例,oracle可以將表進行分割槽,這是一種好...

如何應對資料庫表資料量過大而導致的響應速度變慢

1.我們知道最直接最簡單的方法就是把該錶的資料量變小,那麼把錶資料變少有什麼辦法呢?最簡單最直接的方法就是再建立一張具有相同結構的資料表,建好表之後,再把不需要經常呼叫的資料放到該備用表中,當需要查詢的時候,再查該錶,這種方法雖笨但很直接,我以oracle為例,oracle可以將表進行分割槽,這是一...