有時候測試大規模資料,300萬條。
這時有幾點是我們需要注意的。
1.對作成的資料,選擇乙個字段設定上特殊的值。
通過這個特殊值來判斷表中的資料是這次大規模的測試資料,還是已有資料。
同時也方便將來刪除。
2.確認資料的有效性。
比如,db中有的字段是加密後的字段,程式中會將這個資料解密。
如果無法解密則會報錯,所以我們要確認db中有加密的資料字段。
特別需要注意的是,有寫字段也許不是我們的查詢條件,
但是在處理中需要使用。因此,下面的第四步就非常重要!!!
(主要對非查詢條件字段判斷)
3.確認資料的可行性。
程式執行時,抽取的資料要求滿足一些特殊條件,
我要事先將這些資料準備好。
(主要對查詢條件字段進行判斷)
4.先作出一小部分資料,執行一下,
確認不會出現問題,在大規模作成。
5.可以考慮用儲存過程實現。
6.不要讓儲存過程執行迴圈300萬次。
可以執行100次儲存過程,每次執行3萬件。
7.確認資料生成時,是否產生備份,
不然,300萬條的資料足夠佔滿70g的空間。
8.注意系統時間
注意,是伺服器上的系統時間。
(有時伺服器的時間不會是標準的北京時間,或是某個時區的時間)
(比如我們的伺服器時間,在東八區時間和東九區之間)
大規模資料實戰
前後端處理分離解耦,前批處理 有向圖編譯,後端為有向圖優化 自動資源分配 自動監控 錯誤跟蹤 首先我們忘掉所有的框架,我們想做的業務設計其實是就是乙個count 乙個topk 衡量指標很簡單是sla 工程一致性模型,強一致性,弱一致性,最終一致性 cloud spanner 就是強一致性,業務級的資...
Python大規模資料插入Postgresql
需要owner許可權 alter table t rs standard satellite image add constraint unique source product id unique source product id batchinsert批量插入 def batchinsert ...
Bloom Filter 大規模資料處理利器
bloom filter 是由bloom 在1970 年提出的一種多雜湊函式對映的快速查詢演算法。通常應用在一些需要快速判斷某個元素是否屬於集合,但是並不嚴格要求 100 正確的場合。一.例項 為了說明 bloom filter 存在的重要意義,舉乙個例項 假設要你寫乙個網路蜘蛛 web crawl...