文/成龍 樊榮
淺談SAP系統數據歸檔
文/成龍 樊榮
本文對SAP系統數據歸檔的必要性進行分析,探討了對SAP系統數據進行數據歸檔的對策措施,對數據歸檔效益進行了分析,為公司業務拓展提供了借鑒。
SAP系統數據;數據備份時間;數據步驟
隨著企業業務的快速發展以及對SAP系統應用的深度挖掘,SAP系統數據庫的增長速度不斷提高,數據規模不斷擴大,逐漸就出現了如下問題:
1.系統性能下降。用戶會發現系統部分重要業務的運行時間平均增加了2~3倍,少數程序運行時間增加達到5倍以上,已經影響了用戶的業務處理。如錄入的業務數據涉及物料憑證(如表MSEG),運行時間由原先的幾秒,增加到十幾甚至幾十秒,頓滯感覺明顯;每月財務部門運行涉及會計科目(如表BSIS)的程序,運行時間由初始的十幾分鐘延長到3至5個小時;個別綜合類的報表,運行時間由原先的2~3小時,變為現在的8~10小時,甚至于運行30小時以上,信息嚴重滯后。作為系統的運維團隊,往往會針對用戶的抱怨協調內外部資源,采取了調整系統參數、優化程序等措施,但卻無法取得明顯效果。
2.數據備份時間增加。隨著數據庫數據量的增長,SAP系統數據備份時間會不斷延長,會占用更多的備份資源,會影響其他系統的備份操作。如很多企業采用每日在線備份策略,隨著備份時間的延長,必須不斷調整SAP系統備份起始時間,當備份時間增長到一定范圍(如果超過10個小時)時,就可能完全擠占其他系統的備份時間,危及系統安全。同時,備份時間的延長,也影響備份期間進行的業務處理及后臺數據操作,影響了業務處理和信息的及時性。
3.存儲空間需求增加。為保證系統可靠運行,企業的SAP系統采用三系統架構,即開發系統——測試系統——生產系統架構;為滿足用戶培訓及特殊測試需要,還部署了培訓系統。測試系統、培訓系統通常都是由生產系統COPY生成。為保證系統運行,會分配給SAP系統各運行環境一定存儲空間。當生產系統數據量增長時,就有可能造成系統存儲空間使用量成倍增長,若不采取數據清理措施,則必須為系統分配新的存儲空間。
為解決上述問題,保證SAP系統安全穩定運行,保障企業各項業務正常處理,企業需要采取有效措施,降低系統數據庫數據量,控制數據增長,從而提高系統性能,提高數據備份效率,控制存儲空間增長需求,減少后續備份設備和存儲設備投資。
通過實施SAP系統數據歸檔,可以將使用頻率低的歷史數據遷移到外部存儲,同時清理系統中的無效數據,是實現上述目的的一種成熟、可靠的技術方式。
1.數據的分類
這幾年,大數據這個詞頻繁被大家運用。而筆者認為所謂的大數據是在一定時間范圍內、一定的穩定環境下,通過收集、整理微觀的數據,來達到揭示宏觀發展趨勢的有效數據。因此,并不是說歷史數據期間越長越利于統計,越利于預測企業未來的發展需要。只有在穩定的外部環境下,一定期間的數據才對企業的發展具有使用的價值。
筆者認為,SAP系統的數據根據使用的頻率大致可以分為活躍數據、留存數據和死亡數據。
活躍數據是指在系統中經常使用的數據,這部分數據經常用于查詢或者統計報表使用等活動中。這類數據一般多用于日常查詢、月度的同比和環比以及年度的同比和環比,因此數據的活躍期大約在2年左右。
留存數據是指在系統中會偶然使用,大多數處于沉淀狀態,這部分數據多用于數據統計和備查狀態,大約是指3~5年的數據。
死亡數據是指在系統中徹底沉淀,幾乎甚至完全不在使用的數據,而這部分數據作為企業的寶貴財富又不能輕易刪除的數據。同時,這部分數據可能會因為企業的發展,流程的再造、重組和優化后,與現有的業務略有不同。如果繼續作為決策依據,就可能對企業使用產生誤導,從而處于靜止或者死亡的狀態。這部分通常是指保存時間在5年以上的數據。
通過如上的分析,可以得出結論:數據并不是越多越好,并不是保存期間越長的數據越有用。可以通過一定的技術手段,把這部分進行整理和遷移,釋放出所占有的空間,保證活躍數據和留存數據的使用效率。
2.數據的處理方法
目前,數據的處理方式主要可以分為如下四種:
(1)數據避免(Data Prevention):將業務處理過程中不再需保存的數據,通過系統配置實現這類數據不再寫入數據庫中,避免數據生成的手段。
(2)數據歸總(Data Summarization):對于系統中過于明細的數據,在使用中完全不需要的數據,可以通過修改配置直接產生匯總后的數據。
(3)數據刪除(Data Deletion):數據庫中完全沒有使用價值的冗余數據、垃圾數據及無效數據,可以在系統中直接刪除。
(4)數據歸檔(Data Archiving):對于業務上已經不再經常使用的死亡數據,但是因為法律法規、審計等的其他要求,或者不能直接完全刪除的數據,則可以通過數據歸檔的方式,將數據從數據庫中選取出來,進行壓縮等必要處理后,遷移到外部存儲設備,以備查和長期保存。
數據分析、策略和處理效果分析如下圖:

根據了解,四種數據處理的方式中,數據避免、匯總和刪除主要是針對局部數據,效果不是太明顯。而數據歸檔則是針對整個數據庫層面,將數據從數據庫中遷移處理,同時還可以按照既定的歸檔對象和歸檔條件,建立長期穩定的歸檔運行計劃(AOP~Archiving Operation Plan),定期移出歸檔數據,即可保證數據量維持在一定的范圍。根據經驗一般數據歸檔后,可降低30%~50%數據空間,并保持數據空間維持在一定范圍內。
3.數據歸檔
(1)數據歸檔總體架構
數據歸檔的目的是將SAP系統中訪問頻率低的歷史數據遷移至外部存儲,以文檔的形式保存,同時建立系統訪問歸檔數據的路徑。系統總體如下圖。

(2)數據的步驟:
1)選擇合適的歸檔對象。
通常情況下,可以通過配置SAP Solution Manager,得出分析報告,找出數據量較大或者增長速度最快的表(Tables),得到數據處理的相關建議。從這些表里面分析得出需要歸檔的對象(Object,例如,EKKO 是一個大的表屬于對象MM_EKKO = 采購憑證),再與業務部門、相關職能部門一起確定數據歸檔項目的范圍。下圖舉例說明歸檔對象的確定和處理方法:

2)歸檔數據處理及查詢。
歸檔數據處理及查詢就是利用SAP提供的數據歸檔開發工具(ADK~Archive Development Kit),對已經確定數據歸檔范圍內的記錄,進行選取、創建、刪除、遷移和讀取等相關操作。具體如下圖:

第一步選取(Selection):根據已確定的數據歸檔范圍,從歸檔對象所對應的表中,找到符合條件的憑證,做選取標識。
第二步創建(Creation):將有標識的數據讀取出來,壓縮處理后,寫入歸檔文件,該文件以操作系統文件的形式存儲。
第三步刪除(Deletion):從數據庫中刪除有標識的記錄。
第四步遷移(Migration):將歸檔文件遷移到外部存儲介質中(如磁帶、光盤等)。
第五步讀取(Retrieval):通過SAP標準的T~code,或者SAP ADK將歸檔文件中的數據重新讀回到SAP中,進行查詢。
后續再通過數據重組等操作,釋放出數據庫中磁盤空間,達到減少數據庫規模,提供系統使用效率的目的。
通過對SAP系統數據庫數據的歸檔,可以更好地保證SAP系統穩定運行的需要,主要表現在:
1.提升系統性能,改善用戶體驗
SAP系統歸檔后,部分歷史數據從數據庫中遷移出來,從而達到減少數據庫數據量的目的。實施數據歸檔后,系統整體性能提升預計在30%~40%之間,可以明顯改進用戶體驗,降低用戶業務處理時間,提高工作效率。
2.降低硬件投資
歸檔項目實施后,可節省30%~50%的磁盤空間,通過數據周期性歸檔,可以控制系統數據增長,在目前的系統使用環境下,可以保證企業不再為SAP系統增加新的存儲投資。
3.降低系統運行風險
數據歸檔后,預計可縮短40%~50%的備份時間,為進一步完善數據備份機制提供了空間,可以有效防止備份失敗情況的發生,從而提高系統安全性,降低系統運行風險。
(作者單位:中國航空油料集團公司/解放軍后勤工程學院)
從1994年正式進入中國30年來,SAP在中國已有300多家用戶。康佳、中國石化、紅塔集團、中遠集團、海爾集團、聯想集團、長虹集團、一汽大眾、上海通用、李寧集團、三菱電梯、上海浦發行這樣一大批行業領頭羊在深深意識到ERP重要性的同時,從與SAP的信息投入中獲得了巨大的經濟回報。