隋合軾
(國網營口供電公司,遼寧 營口 115002)
基于一體機架構的海量數據集中與處理
隋合軾
(國網營口供電公司,遼寧 營口 115002)
通過營銷管控信息系統建設實踐,針對供電企業(yè)各專業(yè)系統海量數據集中與處理,提出了基于數據庫一體機的解決方案,從業(yè)務邏輯、數據架構、物理架構等方面論述實現途徑,并以實例驗證數據庫一體機方案的技術優(yōu)勢。
數據庫一體機;海量數據;數據集中;數據處理
隨著集約化、精益化管理的不斷深入推進,電網企業(yè)各專業(yè)系統亟需針對多級部署的專業(yè)系統數據實現橫向集成,縱向集中,便于上級機構即時訪問、處理、分析。以總部營銷管控信息系統建設為例,提出基于數據庫一體機架構的海量數據實時處理方案,并以實際運行案例驗證取得的實踐效果。
建設總部營銷管控信息系統,最終形成縱貫總部、省、地市三級營銷信息管控系統,支撐營銷業(yè)務統一策劃、統籌部署、全程管控,實現營銷關鍵指標、核心業(yè)務、重要業(yè)務環(huán)節(jié)的實時監(jiān)控、動態(tài)評價、持續(xù)改進,有利于提升公司總部營銷戰(zhàn)略決策能力、運營管控能力、風險防范能力、服務監(jiān)督能力、市場拓展能力。針對這樣一個大規(guī)模數據處理并要求實時展現的重要業(yè)務系統的建設,經過大量的前期論證分析,在比對了多種方案后,確定選擇Oracle Exadata數據庫一體機方案,并進行了系列開發(fā)和驗證工作。
2.1 總體架構
總部營銷管控信息系統以27個網省的營銷業(yè)務應用系統為數據源,通過數據庫復制技術將數據從網省復制到總部,數據包括各省的稽查監(jiān)控業(yè)務匯總數據和用戶的明細數據。系統采用B/S架構,包括運營動態(tài)和稽查監(jiān)控兩大功能。其中,運營動態(tài)模塊直接使用各網省的上傳數據,對電量、電價、電費、服務質量以及設備等信息進行實時展示。這些數據在網省的系統中已經安裝統一的結構進行了處理,在總部利用數據庫復制技術實現了“多表對一表”的集中,從業(yè)務的角度來看,這些數據基本是實時的,即網省的變化會立即同步到總部;稽查監(jiān)控模塊在直接使用這些實時數據的同時,還需要利用存儲過程生成不同維度的數據,支撐稽查監(jiān)控任務的開展。
總部營銷管控信息系統建設模式采取總部一級部署應用,總體架構如圖1所示。即在總部管理信息大區(qū)部署一套軟件,橫向集成總部運行管控系統與EMS、營銷分析與輔助決策、電網GIS空間信息服務平臺等系統數據及應用集成??v向貫通總部運行管控系統與網省營銷稽查監(jiān)控、營銷業(yè)務應用、用電信息采集、電動汽車、能效管理等系統形成數據交換、流程貫通[1]。
圖1 總部營銷管控信息系統總體架構
2.2 數據架構
總部營銷管控信息系統采用數據復制技術,實現網省用電信息采集的縱向數據上傳,為了避免從各個網省復制上來的數據之間的主鍵、外鍵沖突等問題,在總部將每個省的上傳數據獨立存儲,既每個網省建立一個schema,同時建立總部schema作為各網省schema的“上級用戶”,該用戶有權限訪問存儲在總部的各網省schema內的數據。
總部的數據存儲采用27個網省schema加1個總部schema的方式,數據架構如圖2所示。網省schema用于存儲該網省的基礎數據(包括實時數據、明細數據、分析數據等);總部schema存儲來自總部運行管控系統產生的基礎數據、管理數據和從各網省數據中生成的匯總數據,供前端應用對其進行訪問。將網省用電信息采集系統、營銷業(yè)務應用系統中的數據,按照總部營銷管控信息系統的要求歸集到數據準備區(qū)(為了保障網省用電信息采集系統的正常使用,在網省用電信息采集系統中劃分數據應用區(qū)和數據準備區(qū))。總部的數據接收區(qū)和網省數據準備區(qū)數據結構完全一致,去除所有的主、外鍵關系,降低由于數據校驗引起的同步風險。
這里數據傳輸是指各網省數據從網省準備庫傳遞至總部鏡像庫的過程。經分析測算,各網省傳輸至總部的數據量較大,更新數據達10 MB/s,并且實時性要求高,一般要求為min級。數據傳輸擬采用數據庫復制技術,在數據源端進行數據壓縮,然后上傳至總部,可以節(jié)省網絡帶寬、縮短傳輸時間。根據總部營銷運行管控系統的技術需求,引入目前較為流行的數據庫復制軟件Oracle Golden Gate(OGG),通過分析數據庫重做日志(redolog)和歸檔日志,形成sql隊列,將數據傳輸至目標庫后應用到目標數據庫[2]。數據復制技術需要在原庫與目標庫都部署配制相應的軟件,但要求對數據庫資源的占用相對較小,實時性較強,數據吞吐量也較大。
圖2 總部營銷管控信息系統數據架構
2.3 物理架構
根據所使用的數據庫服務器不同,總部營銷信息管控系統的物理部署架構有兩種選擇:一種是基于小型機數據庫的物理部署架構、另一種是基于數據庫一體機的物理部署架構,如圖3所示[3]。兩種架構的區(qū)別在于前者數據庫服務器使用小型機雙RAC架構,而后者數據庫服務器使用數據庫一體機。
對前述兩種物理部署架構進行了對比分析,結果如表1所示??梢钥闯?,基于數據庫一體機的物理部署架構除初始投資較高外,在體系架構、處理能力、擴容投資、智能存儲、運維成本、空間占用、電能消耗等方面都具有較明顯優(yōu)勢[4]。
表1 兩種物理部署架構的對比分析表
2.4 系統負載
圖3 基于數據庫一體機的物理部署架構圖
從業(yè)務的角度看,總部營銷管控信息系統是一個大數據準實時查詢和在線分析為主的混合型應用系統,由于系統處理的是電網公司核心的商業(yè)信息和管理,使用人員多為公司高級管理人員,系統可預見未來的并發(fā)數不會太高,但對響應時間會非常敏感。同時,盡管系統采用B/S架構,但在應用服務器層更多的是表示層邏輯的處理,而大量的業(yè)務邏輯和數據處理的工作在數據庫服務器上實現,因此,數據庫服務的處理能力將是系統整體性能的關鍵。從其運行方式上來看,主要的負載主要有3個方面:①通過Oracle Golden Gate從27個網省實時復制上來的數據的處理;②來自應用服務器的數據服務請求處理;③利用存儲過程實現的ETL(Extract,Transfer和Load,即提取,轉換和裝載)功能的處理。
系統負載情況如圖4所示。從圖中可以看出,總部營銷管控信息系統是一個存儲I/O密集型的系統,數據從網省上傳到最終被應用服務器使用至少要經過多次海量數據的I/O操作,過程可描述為:①OGG將網省數據寫入隊列文件;②OGG將隊列文件內的記錄寫入Schame OMAC的對應表中;③存儲過程從Schame OMAC抽取數據,經過清洗、轉換,加載到Schame SGACMS的表中;④應用服務器訪問兩個Schame中的數據。
圖4 總部營銷管控信息系統負載
以現有數據范圍,系統在線5年估算,系統數據達到PB級。同時,由于電力客戶數量眾多,明細數據是按日產生的,因此單一的表中記錄數最終會在達到百億條以上,單一表的大小在數百個GB。而這些表一般都是包含電量、電費、電價等重要數據的表,并且業(yè)務處理多為多表關聯、聚合、分組等大I/O、高CPU資源占用的操作,對數據庫服務器系統的性能要求非常高。
3.1 技術優(yōu)勢
總部營銷管控信息系統屬于數據密集型的應用,并對響應時間敏感,并發(fā)訪問有限,業(yè)務邏輯處理多在數據庫層進行,因此系統處理能力焦點在數據庫服務器。數據庫一體機架構的技術優(yōu)勢主要體現如下。
a.系統I/O能力
與傳統數據庫系統相比,Oracle Exadata突破了制約系統性能和容量的I/O瓶頸。傳統的存儲系統性能的提升大多靠增加硬盤驅動器的數量取得,而Oracle Exadata的存儲服務器可以感知數據,卸載數據庫服務器的負載,通過采用大規(guī)模并行架構,通過更高的帶寬(40 GB/s Infiniband端口帶寬、Smart Flash Cache緩存高達5.3 TB)連接加快了并行數據處理并減少了數據移動(EHCC混合列壓縮、分區(qū)修建、存儲索引、Smart Scan智能掃描等)[5]。通過檢索SPC-1和SPC-2的測試結果可以發(fā)現,當前大部分高端存儲的IOPS指標基本在200 000左右,而Exadata做高可達1 500 100。
b.混合負載
Oracle Exadata可在1個平臺上很好支持混合負載(OLTP+OLAP),而傳統架構由于不能突破性能上的限制,一般采用業(yè)務處理系統和查詢分析系統分離的設計,這種架構由于需要兩個系統間的數據傳遞,穩(wěn)定和實時性都大打折扣,并且維護成本和難度都較高。
c.性能優(yōu)化方式
數據庫系統的性能優(yōu)化一般都首先集中在應用層面,既優(yōu)化SQL語句,然后在進行系統層面的調整,但優(yōu)化的難度很大。Oracle Exadata為性能的優(yōu)化提供了更多的方法和便利條件,降低了系統優(yōu)化的難度,如混合列壓縮、分區(qū)修建、智能掃描等。
3.2 實例驗證
以上各項技術優(yōu)勢在項目測試中得以驗證,僅舉幾例,列表說明。
例1:以CTAS(Create Table As Select)方式創(chuàng)建不同壓縮方式的表,然后從dba_segments查詢其大小,并與原始table比較得到壓縮率,測試結果見表2。
表2 EHCC數據壓縮前后測試結果
例2:使用Exadata的各個技術,依次運行原系統SQL語句,測試結果見表3。
表3 原系統SQL語句加載Exadata的各個技術測試結果
例3:與售電統計相關的5、6個類似的SQL,運行速度極為緩慢,執(zhí)行大約需要15 min,頁面圖表無法顯示,用戶體驗極差,須進行優(yōu)化,測試結果見表4。
表4 原系統SQL語句經優(yōu)化并加載Exadata的各個技術測試結果
通過總部營銷管控系統建設過程中逐步探索,及對Exadata數據庫一體機在數據壓縮能力、I/O性能和數據處理能力的測試,和系統試運行過程中TOP SQL的優(yōu)化實踐,得到如下結論。
a.總部營銷管控系統這類由下向上逐級數據集中與處理,對數據實時性、完整性、準確性,以及海量數據即時分析提出了更高要求,需要就總部、網省甚至地市各專業(yè)系統建設現狀做出通盤考量再選擇適合的技術路線。
b.數據庫一體機的先進的架構和創(chuàng)新性的功能,在大規(guī)模數據處理方面具有傳統數據庫系統無法比擬的優(yōu)勢;如40 GB的infiniband內存互聯、Smart Flash Cache、Smart scan、混合列壓縮、存儲索引等[6]。
c.數據庫一體機具有混合負載,在線OLAP處理能力具有優(yōu)勢,并能夠滿足不斷的業(yè)務創(chuàng)新和功能擴展的需求。
[1]王 楠,陳曉光,高明雙.建立可控的信息網絡安全準入機制[J].東北電力技術,2014,35(5):43-44.
[2]OGG產品介紹及應用場景,應用案例[EB].http://www. oracle.com/technetwork/cn/community/developer?day/4?ogg?app?case?2002394?zhs.pdf.
[3]孟凡博.電力通信傳輸容災架構體系研究[J].東北電力技術,2014,35(7):25-27.
[4]Oracle Exadata Technology Portal on OTN[EB].http:∥www.oracle.com/technology/products/bi/db/exadata.
[5]Oracle Exadata white papers[R].http:∥www.oracle.com/technetwork/database/features/availability/xmigration?11?133466. dbf,http://www.oracle.com/technetwork/middleware/bi?foundation/exadata?smart?flash?cache?twp?v5?1?128560.pdf.
[6]曉 召.大數據VS數據庫一體機[DB].http:∥blog. sina.com.cn/s/blog_7ca5799101013dtb.html.
Massive Data Concentration and Processing Based on Database Machine
SUI He?shi
(State Grid Yingkou Electric Power Supply Company,Yingkou,Liaoning 115002,China)
According to concentration and processing of massive data in each professional system of power grid enterprise,this paper proposes the solutions based on the database machine by combining the construction of the power?marketing information monitoring sys?tem,elucidates implementation approach from the business logic,data architecture,physical architecture etc.Introducing the exam?ple,the technology advantage of the solutions are verified.
Database machine;Massive data;Data concentration;Data processing
TM274
A
1004-7913(2015)09-0012-04
隋合軾(1970—),男,碩士,高級工程師,現從事運營監(jiān)測(控)管理工作。
2015-06-30)