在乙個專案上線過程中,由於一些模型資料量巨大,抽數十分緩慢,長期在黃燈狀態,
monitor
的訊息是:
missing messages.
處理幾次類似問題後,總結了一點經驗:
首先檢查系統的一些引數設定是否正確,和抽數相關的引數包括:
1. sm59
2. s
biw進行傳輸設定:
idoc
頻率:多少個資料
idoc
後返回乙個訊息
idoc
(monitor
中,要收到訊息
idoc
才能確認資料傳輸完成,否則一直等待直到報
missing messages
錯誤)。當
idoc
資料報比較大時,建議降低頻率,這樣可以及時發現問題。一般在
5-10
之間,不超過20。
idoc
資料報:每個資料報包含幾條記錄
,通常在
5000~20000
之間。一般,每個載入程序不要超過
100個資料報,因此大抽取大量業務資料時,最好將該值設得大一點。例如:
50000
(oracle/sql server)
或10000
(informix)
3. 根據資料量,估計設定
infopackage
執行時的最長等待時間
, 並設定好
timeout
的時間
4. 設定trfc
最大連線數:
sm58
然後,根據監控器反饋的資訊及時處理問題:
1. 若監控器的
***x from yyyy
一直在變化,說明資料一直在傳輸中,正常情況下會一直到
***x=yyyy
,yyyy
為源的資料量。
2. 若監控器的
***x from yyyy
不動了,則有問題,應當看看
detail
的訊息。一般會出現
missing messages,
是抽數執行緒太多造成
sql
死鎖。這時,則應通過
sm50
觀察抽數程序是否扔在工作。若抽數程序不動了,應去
sm58
觀察trfc
的情況,手工執行
(f6)
死鎖的trfc
以及長時間等待的
trfc
。此時sm50
中的程序應該繼續工作了。
3. 觀察監控器,直到資料全部抽取到
bw並完成處理。若資料全部抽完(
***x=yyyy)
,但一直出於
missing messages
的黃燈或紅燈狀態,則可以手工置紅
request
,然後手工更新資料報,然後再手工置綠。有時,還需要手工
roll up.
4. 資料量大的話,最好先做
full update,
然後再做無資料的
initial
5. 資料量很大的話(千萬以上),
full update
時,最好按時間段或憑證號分次上數。
...滿懷希望,期待未知的旅程。
pasted from <>
大資料量處理
看看這個,異曲同工,永遠不超時 該程式是針對非常龐大的資料庫開發的,沒有用迴圈 用途 對過萬條資料的資料庫字段內容批量替換 資料庫連線 dim beeyee dbname,connstr,conn,intsn1 dim content,num,intsn,intidno,strcodea,strco...
航測大資料量處理 大資料量處理及優化措施
1 首先考慮垂直拆分庫,不同的表拆分到不同的庫中,例如使用者庫 產品庫 支付庫 2 然後考慮水平拆分庫,將乙個表的資料放到多張表中,例如按照使用者 時間 訂單號 3 插入資料的時候不建立索引 4 待資料已經插入完成後,建立索引 5 正確的指定索引字段 6 使用批量插入資料庫的方式代替單條資料的插入 ...
mysql大資料量處理
2008 07 11 10 41 58 分類 mysql 舉報 字型大小訂閱 以下是個人的總結,有不對的地方大家指點 設計上 冗餘 有些能冗餘的就冗餘吧,盡量少關聯表 垂直分割槽,一條記錄中有text,varchar 這些能拆出來就拆出來,能用小的型別就用小的型別,如 char替換varchar之類...