本發(fā)明具體涉及一種基于大數(shù)據(jù)的社保指標(biāo)倉庫的構(gòu)建系統(tǒng)及其方法,屬于大數(shù)據(jù)應(yīng)用技術(shù)領(lǐng)域。
背景技術(shù):
目前,在大數(shù)據(jù)時代背景下,社保家底數(shù)據(jù)如征繳企業(yè)養(yǎng)老保險基金金額、社保覆蓋人口比例等的統(tǒng)計分析面臨挑戰(zhàn)。社保的大量數(shù)據(jù)處于分散存儲狀態(tài),存在信息孤島現(xiàn)象,社保統(tǒng)計信息服務(wù)決策、服務(wù)管理、服務(wù)社會的巨大潛力尚未開發(fā);基于數(shù)據(jù)庫的統(tǒng)計查詢、人工多口徑信息提取等手段落后,導(dǎo)致統(tǒng)計數(shù)據(jù)客觀性、真實性、便捷性存在問題
隨著信息化技術(shù)的不斷發(fā)展,社會保險系統(tǒng)已經(jīng)積累了大量的業(yè)務(wù)數(shù)據(jù)。通過收集、整理、挖掘、利用社保業(yè)務(wù)數(shù)據(jù),構(gòu)建社保統(tǒng)計指標(biāo),實現(xiàn)從多個角度或者從不同的考察范圍來觀察某一指標(biāo)或多個指標(biāo),進(jìn)行分析對比,找出這些指標(biāo)間隱藏的內(nèi)在關(guān)系,并預(yù)測這些指標(biāo)的發(fā)展趨勢,為社會保險改革決策提供科學(xué)的依據(jù)。是深化大數(shù)據(jù)在社會保險服務(wù)應(yīng)用的有效手段。
聯(lián)機分析處理(olap)是一種將原始數(shù)據(jù)轉(zhuǎn)化為可從多視角觀察數(shù)據(jù)的軟件技術(shù)。olap的主要工作就是將數(shù)據(jù)倉庫中的數(shù)據(jù)轉(zhuǎn)換到多維數(shù)據(jù)結(jié)構(gòu)中,并且對上述多維數(shù)據(jù)結(jié)構(gòu)執(zhí)行有效且非常復(fù)雜的多維查詢。
傳統(tǒng)的數(shù)據(jù)倉庫一般采用集中式結(jié)構(gòu)化存儲方式,單節(jié)點運行計算,配置起來比較簡單。然而社保統(tǒng)計指標(biāo)的重要數(shù)據(jù)來源就是社保業(yè)務(wù)數(shù)據(jù),社保業(yè)務(wù)數(shù)據(jù)普遍分散在各個社保領(lǐng)域(養(yǎng)老、醫(yī)療)的業(yè)務(wù)數(shù)據(jù)庫中,加之社保業(yè)務(wù)數(shù)據(jù)具有地域分布廣、涉及系統(tǒng)多、數(shù)據(jù)規(guī)模大、結(jié)構(gòu)較松散等問題。往往要對多張數(shù)據(jù)表中成千上萬條數(shù)據(jù)進(jìn)行綜合查詢,傳統(tǒng)數(shù)據(jù)倉庫的性能越來越難以滿足這類復(fù)雜的查詢需求,且隨著數(shù)據(jù)量的積累,數(shù)據(jù)倉庫擴(kuò)容將是一個巨大的問題。
對海量社保數(shù)據(jù)的多維查詢分析,查詢速度是評價系統(tǒng)性能的關(guān)鍵因素。當(dāng)前國內(nèi)外關(guān)于大數(shù)據(jù)聯(lián)機分析處理的研究成果多種多樣,但是針對社保應(yīng)用海量數(shù)據(jù)實現(xiàn)的分布式多維分析系統(tǒng)不多見。普遍是通過優(yōu)化計算策略、查詢操作方法來實現(xiàn)多維分析效率的提升。
技術(shù)實現(xiàn)要素:
本發(fā)明為了解決上述問題,提供一種社保大數(shù)據(jù)指標(biāo)倉庫的構(gòu)建方法及系統(tǒng)。系統(tǒng)以社保業(yè)務(wù)數(shù)據(jù)為數(shù)據(jù)源,利用大數(shù)據(jù)處理技術(shù)和分布式存儲技術(shù)構(gòu)建一種準(zhǔn)確的、定時更新的以立方體結(jié)構(gòu)存儲組織的多維統(tǒng)計指標(biāo)庫,并提供指標(biāo)快速查詢和展示功能。
本方法和系統(tǒng)將指標(biāo)構(gòu)建分為數(shù)據(jù)采集階段和指標(biāo)倉庫構(gòu)建階段。
數(shù)據(jù)采集階段,分為批量導(dǎo)入和變更同步兩個部分。批量導(dǎo)入是將分散于各地市的社保業(yè)務(wù)數(shù)據(jù)按照設(shè)計的組織原則,一次性經(jīng)過抽取、轉(zhuǎn)換,整合到統(tǒng)一的過程庫(基于hbase數(shù)據(jù)庫),完成從業(yè)務(wù)數(shù)據(jù)庫到業(yè)務(wù)過程數(shù)據(jù)庫的初始批量導(dǎo)入;變更同步階段,在各個業(yè)務(wù)數(shù)據(jù)庫中配置oraclestreams,分析redo日志,將包含業(yè)務(wù)數(shù)據(jù)庫變更操作的消息分發(fā)到oracle高級隊列,然后將變更消息轉(zhuǎn)換成消息流,利用apachestorm將變更數(shù)據(jù)同步到業(yè)務(wù)過程數(shù)據(jù)庫hbase中。保證整合后的業(yè)務(wù)過程數(shù)據(jù)庫的實時性和準(zhǔn)確性。
指標(biāo)倉庫構(gòu)建階段。基于開源大數(shù)據(jù)引擎kylin,借助hive工具加載數(shù)據(jù),按照多維分析模型定義的事實表、維表、事實表和維表的連接關(guān)系,進(jìn)行多維指標(biāo)立方的預(yù)計算,并以立方體組織形式將數(shù)據(jù)保存到指標(biāo)庫中(基于hbase數(shù)據(jù)庫)。設(shè)置指標(biāo)計算周期,定時自動執(zhí)行增量數(shù)據(jù)的指標(biāo)立方體構(gòu)建。
本方法及系統(tǒng)提供的查詢展示功能包括,根據(jù)多維查詢請求,解析多維數(shù)據(jù)模型信息及kylin引擎識別的查詢語句,實現(xiàn)快速從指標(biāo)倉庫中獲取數(shù)據(jù),并按需求的方式將結(jié)果展示。
為了實現(xiàn)上述目的,本發(fā)明采用如下的技術(shù)方案:
基于大數(shù)據(jù)的社保指標(biāo)倉庫的構(gòu)建系統(tǒng),包括:
社保業(yè)務(wù)數(shù)據(jù)庫,為社保指標(biāo)倉庫的計算提供原始數(shù)據(jù)來源,為數(shù)據(jù)的變更同步提供增量變更消息流;
業(yè)務(wù)數(shù)據(jù)采集模塊,用于完成從業(yè)務(wù)數(shù)據(jù)到社保業(yè)務(wù)過程數(shù)據(jù)的批量導(dǎo)入和變更同步;
數(shù)據(jù)預(yù)處理模塊,用于對數(shù)據(jù)格式、類型、表結(jié)構(gòu)等進(jìn)行轉(zhuǎn)換處理,將數(shù)據(jù)轉(zhuǎn)為apachekylin(一種大數(shù)據(jù)分布式計算引擎)計算所支持的數(shù)據(jù)模式;
指標(biāo)計算模塊,用于定義、調(diào)度、執(zhí)行指標(biāo)計算任務(wù),根據(jù)設(shè)置的計算周期,自動定時執(zhí)行指標(biāo)計算;
指標(biāo)元數(shù)據(jù)存儲模塊,用于存儲社保指標(biāo)數(shù)據(jù)模型相關(guān)信息,指標(biāo)立方體構(gòu)建信息;
社保數(shù)據(jù)存儲模塊,為社保業(yè)務(wù)過程數(shù)據(jù)和社保指標(biāo)倉庫數(shù)據(jù)提供分布式存儲支持,構(gòu)建社保業(yè)務(wù)過程庫和社保指標(biāo)倉庫;
數(shù)據(jù)查詢展示模塊,用于定義查詢需求及執(zhí)行查詢,并將結(jié)果展示。
所述社保業(yè)務(wù)數(shù)據(jù)庫,包括redo日志分析模塊,aq模塊(advancedqueue,即高級隊列);
所述redo日志分析模塊,基于oraclestreams技術(shù),用于分析業(yè)務(wù)數(shù)據(jù)庫中的redo日志,產(chǎn)生變更消息發(fā)送到aq模塊存儲;
所述aq模塊,是一種oracle數(shù)據(jù)庫提供的消息隊列,接受和臨時存儲redo日志分析模塊發(fā)送的變更消息流;
所述業(yè)務(wù)數(shù)據(jù)采集模塊,包括批量導(dǎo)入模塊、變更同步模塊;
所述批量導(dǎo)入模塊,用于加載各地市的業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù),將數(shù)據(jù)批量導(dǎo)入到分布式存儲的業(yè)務(wù)過程數(shù)據(jù)庫中,并創(chuàng)建數(shù)據(jù)表索引,提高數(shù)據(jù)查詢等操作效率;
所述變更同步模塊,用于將業(yè)務(wù)數(shù)據(jù)庫中自批量導(dǎo)入以后變更的數(shù)據(jù)實時同步到過程庫中。storm增量拓?fù)浣邮崭呒夑犃?aq)中的變更消息流,對其進(jìn)行解析,將變更數(shù)據(jù)同步到過程庫中。并進(jìn)行相應(yīng)的數(shù)據(jù)表索引更新。實現(xiàn)從業(yè)務(wù)數(shù)據(jù)庫到業(yè)務(wù)過程庫的變更同步;
所述數(shù)據(jù)預(yù)處理模塊,包括hive與過程庫hbase整合模塊,數(shù)據(jù)轉(zhuǎn)換模塊。
所述hive與過程庫hbase整合模塊,用于創(chuàng)建hive外表,與過程庫hbase數(shù)據(jù)庫中的表相關(guān)聯(lián),實現(xiàn)hive從hbase中實時讀取數(shù)據(jù),且hive對外表的操作會同時更新到hbase對應(yīng)的表中。指標(biāo)數(shù)據(jù)計算基于kylin實現(xiàn)的,kylin支持從hive中查詢數(shù)據(jù),需要搭建kylin查詢hbase數(shù)據(jù)的橋梁;
所述數(shù)據(jù)轉(zhuǎn)換模塊,用于進(jìn)行數(shù)據(jù)類型、數(shù)據(jù)格式、數(shù)據(jù)取值的轉(zhuǎn)換、抽取、表連接等。根據(jù)社保統(tǒng)計指標(biāo)需求,實現(xiàn)對其所需業(yè)務(wù)數(shù)據(jù)的預(yù)處理轉(zhuǎn)換。社保業(yè)務(wù)數(shù)據(jù)存在結(jié)構(gòu)松散,數(shù)據(jù)噪聲多等問題,kylin進(jìn)行指標(biāo)預(yù)計算對數(shù)據(jù)格式、表結(jié)構(gòu)等有一定的要求,通過該模塊實現(xiàn)相應(yīng)的數(shù)據(jù)預(yù)處理工作;
所述指標(biāo)計算模塊,包括多維數(shù)據(jù)模型定義模塊,指標(biāo)計算任務(wù)調(diào)度模塊,指標(biāo)計算任務(wù)池;
所述多維數(shù)據(jù)模型定義模塊,根據(jù)社保統(tǒng)計指標(biāo)的不同分析主題模塊,定義相應(yīng)的多維數(shù)據(jù)模型,包括數(shù)據(jù)源(事實表、維表、事實表與維表連接關(guān)系)的定義,以及統(tǒng)計指標(biāo)、指標(biāo)維度、聚合函數(shù)的定義,每一個數(shù)據(jù)模型對應(yīng)一個指標(biāo)計算任務(wù);
社保指標(biāo)倉庫不同的主題模塊包括:
參保人員情況(具體包括新增參保人數(shù)、減少的參保人數(shù)、參???cè)藬?shù)等)、
享受待遇情況(具體包括領(lǐng)取待遇人次,領(lǐng)取待遇減少人次等)、
社?;鹗杖肭闆r(具體又包括收入總額、單位繳費額、個人繳付額、財政繳費額、劃入醫(yī)療個人賬戶金額、劃入養(yǎng)老個人賬戶金額等)、
社保基金支出情況(總支出,統(tǒng)籌支出、個人賬戶支出等)等。
分析的角度包括:時間(年度、季度、月度等);地區(qū)(省級、市級、區(qū)級等)、人員屬性(年齡、人群、人員類別、人員狀態(tài)等)、單位屬性(單位性質(zhì)、經(jīng)濟(jì)類型、所屬產(chǎn)業(yè)等)、業(yè)務(wù)屬性(險種、發(fā)放類別、醫(yī)療支出[醫(yī)療統(tǒng)籌類別、疾病類別]、工傷[傷殘等級、工傷類別]等)。
結(jié)合分析的主題模型和業(yè)務(wù)數(shù)據(jù)特點,各個主題模塊分別包括以下數(shù)據(jù)模型:
參保人員情況(參保人數(shù)數(shù)據(jù)模型、參保變動數(shù)據(jù)模型)、
享受待遇情況(參保待遇數(shù)據(jù)模型)、
社?;鹗杖肭闆r(職工基金收入數(shù)據(jù)模型、居民基金收入數(shù)據(jù)模型、醫(yī)療個人賬戶收入數(shù)據(jù)模型、養(yǎng)老個人賬戶收入數(shù)據(jù)模型)、
社?;鹬С銮闆r(醫(yī)療支出立方體、生育支出立方體、失業(yè)支出立方體、養(yǎng)老支出立方體、醫(yī)療個人賬戶支出立方體、養(yǎng)老個人賬戶支出立方體等)
所述計算任務(wù)調(diào)度模塊,根據(jù)數(shù)據(jù)模型定義模塊中關(guān)于立方體模型的定義,添加指標(biāo)數(shù)據(jù)計算任務(wù),配置各個任務(wù)計算周期。定時執(zhí)行指標(biāo)計算任務(wù),啟動kylin大數(shù)據(jù)計算引擎,進(jìn)行相應(yīng)的各維度組合下的指標(biāo)值的計算,以數(shù)據(jù)立方的組織方式存儲到hbase數(shù)據(jù)庫中;
所述指標(biāo)計算任務(wù)池,包含大量數(shù)據(jù)模型立方體計算任務(wù),每一個計算任務(wù)對應(yīng)社保不同的統(tǒng)計主題模塊,并且每一個計算任務(wù)包括主題模塊下的所有立方體數(shù)據(jù)模型作業(yè),被配置為一個定時的調(diào)度作業(yè)。以實現(xiàn)變更數(shù)據(jù)的計算;
所述指標(biāo)元數(shù)據(jù)信息存儲模塊,存儲社保指標(biāo)數(shù)據(jù)模型相關(guān)信息,指標(biāo)立方體構(gòu)建信息;
所述社保數(shù)據(jù)存儲模塊,包括社保業(yè)務(wù)過程數(shù)據(jù)庫和社保指標(biāo)數(shù)據(jù)倉庫;
所述社保過程數(shù)據(jù)庫,是一種分布式存儲的hbase數(shù)據(jù)庫,用于將大規(guī)模業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù)分布式存儲,為分布式計算提供基礎(chǔ),為社保指標(biāo)數(shù)據(jù)倉庫的構(gòu)建提供實時數(shù)據(jù)支持;
所述社保指標(biāo)立方體倉庫,是一種分布式存儲的hbase數(shù)據(jù)庫,也是本方法及系統(tǒng)構(gòu)建的目標(biāo)數(shù)據(jù)庫;社保指標(biāo)倉庫是一種涵蓋所有社保統(tǒng)計指標(biāo)的各個維度的數(shù)據(jù)直觀展現(xiàn);
所述數(shù)據(jù)查詢展示模塊,包括查詢定義模塊,查詢模塊,結(jié)果展示模塊;
所述查詢定義模塊,從指標(biāo)元數(shù)據(jù)模塊獲取數(shù)據(jù)倉庫信息,定義要查詢的指標(biāo)、維度、過濾條件及查詢結(jié)果展示形式。結(jié)果展示形式包括表格、餅圖、柱狀圖、折線圖幾類;
所述數(shù)據(jù)查詢模塊,將查詢需求解析為相應(yīng)的查詢語句。通過kylin接口,執(zhí)行數(shù)據(jù)查詢?nèi)蝿?wù),返回查詢結(jié)果;
所述結(jié)果展示模塊,將查詢結(jié)果通過相應(yīng)的展示組件呈現(xiàn)。
本發(fā)明提供的基于大數(shù)據(jù)的社保指標(biāo)倉庫的構(gòu)建方法,包括以下步驟:
步驟201,配置業(yè)務(wù)數(shù)據(jù)采集模塊,抽取分散在各個社保業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù),整合集中到基于分布式存儲的業(yè)務(wù)過程數(shù)據(jù)庫中,為進(jìn)行社保指標(biāo)倉庫的構(gòu)建提供數(shù)據(jù)支持;
步驟202,完成業(yè)務(wù)過程數(shù)據(jù)庫的初始批量導(dǎo)入后,在業(yè)務(wù)數(shù)據(jù)庫配置oraclestreams實現(xiàn)redo日志分析,捕獲增量變更消息到aq高級隊列中存儲;
步驟203,配置業(yè)務(wù)數(shù)據(jù)采集模塊,構(gòu)建運行storm增量拓?fù)?。storm拓?fù)浣邮軄碜愿呒夑犃兄械淖兏?,將變更?shù)據(jù)同步到業(yè)務(wù)歷程數(shù)據(jù)庫,并更新索引表,保證業(yè)務(wù)過程庫的一致性和實時性;
步驟204,配置數(shù)據(jù)預(yù)處理模塊,添加數(shù)據(jù)轉(zhuǎn)換任務(wù)。數(shù)據(jù)預(yù)處理模塊中的hive與hbase整合模塊建立過程庫hbase到hive的外表,實現(xiàn)從hive實時讀取過程庫hbase表數(shù)據(jù)。數(shù)據(jù)預(yù)處理模塊中的數(shù)據(jù)轉(zhuǎn)換模塊根據(jù)配置信息建立hive視圖,實現(xiàn)數(shù)據(jù)類型、格式轉(zhuǎn)換及多表連接等數(shù)據(jù)預(yù)處理;
步驟205,配置指標(biāo)計算模塊,完成指標(biāo)數(shù)據(jù)模型定義,并通過作業(yè)調(diào)度模塊執(zhí)行和作業(yè)定義相匹配的指標(biāo)計算任務(wù)池中的任務(wù),完成從社保業(yè)務(wù)過程庫到社保指標(biāo)倉庫的計算。元數(shù)據(jù)存儲模塊保存相應(yīng)的數(shù)據(jù)模型、指標(biāo)計算信息;指標(biāo)立方體的預(yù)計算是基于kylin大數(shù)據(jù)引擎實現(xiàn)的,kylin支持大規(guī)模數(shù)據(jù)立方的快速計算;
步驟206,完成指標(biāo)倉庫的構(gòu)建后,可以進(jìn)行快速的olap查詢分析。從指標(biāo)元數(shù)據(jù)存儲模塊中獲取已構(gòu)建指標(biāo)立方體相關(guān)信息,定義多維分析需求。解析查詢需求,從指標(biāo)倉庫中預(yù)計算好的數(shù)據(jù)中執(zhí)行查詢,將查詢結(jié)果返回給展示模塊,展示模塊根據(jù)需求配置進(jìn)行結(jié)果展示。
本發(fā)明實現(xiàn)的有益效果
本發(fā)明提供了基于社會保障業(yè)務(wù)數(shù)據(jù)的社保統(tǒng)計指標(biāo)立方體的倉庫的構(gòu)建方法及系統(tǒng)。具體是將地區(qū)分布廣、涉及系統(tǒng)多、數(shù)據(jù)規(guī)模大、數(shù)據(jù)噪聲多、結(jié)構(gòu)較松散的社保業(yè)務(wù)數(shù)據(jù),進(jìn)行清洗、轉(zhuǎn)換、整合等處理,集中到基于分布式存儲的社保指標(biāo)倉庫中。實現(xiàn)了數(shù)據(jù)的有效匯聚整合,提高了數(shù)據(jù)之間的關(guān)聯(lián)性,保證了社保統(tǒng)計信息的質(zhì)量和時效。為社保數(shù)據(jù)服務(wù)決策、服務(wù)管理、服務(wù)社會提供支持。能夠?qū)崿F(xiàn)快速多角度分析問題,為制作報表、分析報告等提供有價值的數(shù)據(jù)信息。
附圖說明
圖1為本發(fā)明的一種社保大數(shù)據(jù)指標(biāo)倉庫的快速構(gòu)建方法及系統(tǒng)的架構(gòu)圖;
圖2為本發(fā)明的一種社保大數(shù)據(jù)指標(biāo)倉庫構(gòu)建方法及系統(tǒng)的初始化流程圖。
具體實施方式
下面結(jié)合附圖對本發(fā)明的具體實施方式進(jìn)行說明:
本發(fā)明提供了一種基于大數(shù)據(jù)的社保指標(biāo)倉庫的構(gòu)建系統(tǒng)及構(gòu)建方法。
一種社保大數(shù)據(jù)指標(biāo)倉庫的構(gòu)建系統(tǒng),如圖1所示,由數(shù)據(jù)源模塊101(包括redo日志分析模塊,aq模塊)、業(yè)務(wù)數(shù)據(jù)采集模塊102(包括批量導(dǎo)入模塊,變更同步模塊)、數(shù)據(jù)預(yù)處理模塊103(hive與hbase整合模塊,數(shù)據(jù)轉(zhuǎn)換模塊)、指標(biāo)計算模塊104(包括數(shù)據(jù)模型定義模塊、任務(wù)調(diào)度模塊、指標(biāo)計算任務(wù)池)、指標(biāo)元數(shù)據(jù)存儲模塊105、數(shù)據(jù)存儲模塊106(包括社保業(yè)務(wù)過程數(shù)據(jù)庫,社保指標(biāo)立方體數(shù)據(jù)倉庫)、數(shù)據(jù)查詢展示模塊107(包括查詢定義模塊,數(shù)據(jù)查詢模塊,結(jié)果展示模塊)六部分組成;
數(shù)據(jù)源模塊101,即社保業(yè)務(wù)數(shù)據(jù)庫,主要為業(yè)務(wù)數(shù)據(jù)采集模塊提供數(shù)據(jù)抽取來源,同時為數(shù)據(jù)的增量計算提供變更消息;數(shù)據(jù)源模塊101的功能通過業(yè)務(wù)數(shù)據(jù)庫數(shù)據(jù)、redo日志分析模塊1011以及aq模塊1012共同完成;redo日志分析模塊1011主要負(fù)責(zé)分析redo日志,捕獲業(yè)務(wù)數(shù)據(jù)庫數(shù)據(jù)更新操作,生成相應(yīng)的變更消息發(fā)送至aq模塊;aq模塊1012主要負(fù)責(zé)臨時存儲來自redo日志分析模塊產(chǎn)生的變更消息,為業(yè)務(wù)變更同步模塊提供變更消息流。
業(yè)務(wù)數(shù)據(jù)采集模塊102,主要負(fù)責(zé)從各地市的業(yè)務(wù)數(shù)據(jù)庫中抽取數(shù)據(jù)并導(dǎo)入到分布式存儲的業(yè)務(wù)過程數(shù)據(jù)庫中,為構(gòu)建社保指標(biāo)倉庫提供分布式化存儲的數(shù)據(jù)來源;業(yè)務(wù)數(shù)據(jù)采集模塊102的功能通過批量導(dǎo)入模塊1021、變更同步模塊1022共同完成;批量導(dǎo)入模塊1021主要負(fù)責(zé)將社保業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù)一次性初始導(dǎo)入社保業(yè)務(wù)過程數(shù)據(jù)庫;變更同步模塊主要負(fù)責(zé)接收aq模塊1012中的變更消息,并進(jìn)行解析轉(zhuǎn)化應(yīng)用到社保業(yè)務(wù)過程數(shù)據(jù)庫中,實現(xiàn)從社保業(yè)務(wù)數(shù)據(jù)庫到社保業(yè)務(wù)過程數(shù)據(jù)庫的數(shù)據(jù)變更同步。
數(shù)據(jù)預(yù)處理模塊103,主要負(fù)責(zé)實現(xiàn)hive查詢過程庫hbase中的數(shù)據(jù),并對數(shù)據(jù)類型、格式、內(nèi)容、表結(jié)構(gòu)等進(jìn)行轉(zhuǎn)換。數(shù)據(jù)預(yù)處理模塊103的功能通過hive與hbase整合模塊1031、數(shù)據(jù)轉(zhuǎn)換模塊1032共同完成;hive與hbase整合模塊1031,主要負(fù)責(zé)創(chuàng)建hive外表,與過程庫hbase數(shù)據(jù)庫中的表相關(guān)聯(lián),實現(xiàn)hive從hbase中實時讀取數(shù)據(jù),且hive對外表的操作會同時更新到hbase對應(yīng)的表中。為kylin通過hive查詢數(shù)據(jù)提供橋梁。數(shù)據(jù)轉(zhuǎn)換模塊1032,用于進(jìn)行數(shù)據(jù)類型、數(shù)據(jù)格式、數(shù)據(jù)取值的轉(zhuǎn)換、抽取、表連接等,以滿足kylin計算需求。
指標(biāo)計算模塊104,主要負(fù)責(zé)指標(biāo)計算任務(wù)的定義和調(diào)度,進(jìn)行指標(biāo)倉庫的構(gòu)建。指標(biāo)計算模塊104通過數(shù)據(jù)模型定義模塊1041、任務(wù)調(diào)度模塊1042、指標(biāo)計算任務(wù)池1043共同完成;數(shù)據(jù)模型定義模塊1041對應(yīng)各個社保主題,定義相應(yīng)的數(shù)據(jù)模型,包括事實表、維表的定義、維度、度量、聚合函數(shù)的設(shè)置。任務(wù)調(diào)度模塊1042根據(jù)數(shù)據(jù)模型定義模塊中關(guān)于立方體模型的定義,添加指標(biāo)數(shù)據(jù)計算任務(wù),配置各個任務(wù)計算周期。定時執(zhí)行指標(biāo)計算任務(wù)。指標(biāo)計算任務(wù)池1043,主要負(fù)責(zé)整合所有的計算任務(wù),供任務(wù)調(diào)度模塊調(diào)度運行。
指標(biāo)元數(shù)據(jù)存儲模塊105,主要負(fù)責(zé)存儲數(shù)據(jù)模型、指標(biāo)構(gòu)建模型等元數(shù)據(jù)信息,為指標(biāo)倉庫管理、數(shù)據(jù)查詢展示模塊提供信息目錄。
社保數(shù)據(jù)存儲模塊106,主要負(fù)責(zé)將社保業(yè)務(wù)過程數(shù)據(jù)庫1061和社保指標(biāo)立方體數(shù)據(jù)庫1062進(jìn)行分布式存儲,為海量社保大數(shù)據(jù)提供了良好的數(shù)據(jù)存儲安全保障機制,同時提高了數(shù)據(jù)倉庫數(shù)據(jù)存儲的橫向擴(kuò)展能力。
數(shù)據(jù)查詢展示模塊107,包括查詢定義模塊1071、查詢模塊1072、結(jié)果展示模塊1073,主要提供查詢界面,列出可查詢數(shù)據(jù),進(jìn)行查詢需求的定義和結(jié)果展示形式定義,并按要求執(zhí)行查詢,以需求的形式展示查詢結(jié)果。
一種社保大數(shù)據(jù)指標(biāo)倉庫的構(gòu)建方法與系統(tǒng),如圖2所示,它包括以下步驟:
步驟201,配置業(yè)務(wù)數(shù)據(jù)采集模塊102中的批量導(dǎo)入模塊1021,抽取分散在各個社保業(yè)務(wù)數(shù)據(jù)庫中的數(shù)據(jù),整合集中到基于分布式存儲的業(yè)務(wù)過程數(shù)據(jù)庫中,為進(jìn)行社保指標(biāo)倉庫的構(gòu)建提供數(shù)據(jù)支持;
步驟202,完成業(yè)務(wù)過程數(shù)據(jù)庫的批量導(dǎo)入后,在業(yè)務(wù)數(shù)據(jù)庫配置oraclestreams實現(xiàn)redo日志分析,捕獲增量變更消息到aq高級隊列中存儲;
步驟203,配置業(yè)務(wù)數(shù)據(jù)采集模塊102中的變更同步模塊1022,構(gòu)建運行storm增量拓?fù)?。storm拓?fù)浣邮軄碜愿呒夑犃兄械淖兏ⅲ瑢⒆兏鼣?shù)據(jù)同步到業(yè)務(wù)歷程數(shù)據(jù)庫,并更新索引表,保證過程庫的一致性和實時性;
步驟204,配置數(shù)據(jù)預(yù)處理模塊,添加數(shù)據(jù)轉(zhuǎn)換任務(wù)。hive與hbase整合模塊1031建立過程庫hbase到hive的外表,實現(xiàn)從hive實時讀取過程庫hbase表數(shù)據(jù)。轉(zhuǎn)換模塊1032根據(jù)配置信息建立hive視圖,實現(xiàn)數(shù)據(jù)類型、格式轉(zhuǎn)換及多表連接等數(shù)據(jù)預(yù)處理;
步驟205,配置指標(biāo)計算模塊,完成指標(biāo)數(shù)據(jù)模型定義,并通過作業(yè)調(diào)度模塊執(zhí)行和作業(yè)定義相匹配的指標(biāo)計算任務(wù)池中的任務(wù),完成從業(yè)務(wù)歷程庫到社保指標(biāo)倉庫的計算。元數(shù)據(jù)存儲模塊保存相應(yīng)的數(shù)據(jù)模型、指標(biāo)計算信息;指標(biāo)立方體的預(yù)計算是基于kylin大數(shù)據(jù)引擎實現(xiàn)的,kylin支持大規(guī)模數(shù)據(jù)立方的快速計算;
步驟206,完成指標(biāo)倉庫的構(gòu)建后,可以進(jìn)行快速的olap查詢分析。數(shù)據(jù)查詢定義模塊1061從指標(biāo)元數(shù)據(jù)中獲取已構(gòu)建指標(biāo)立方體相關(guān)信息,定義多維分析需求提交給數(shù)據(jù)查詢模塊1062,數(shù)據(jù)查詢模塊解析需求,從指標(biāo)倉庫預(yù)計算好的數(shù)據(jù)中獲取查詢結(jié)果返回給展示模塊,展示模塊根據(jù)需求配置進(jìn)行結(jié)果展示。
以上所述是本發(fā)明的優(yōu)選實施方式,應(yīng)當(dāng)指出,對于本技術(shù)領(lǐng)域的普通技術(shù)人員來說,在不脫離本發(fā)明所述原理的前提下,還可以作出若干改進(jìn)和潤飾,這些改進(jìn)和潤飾也應(yīng)視為本發(fā)明的保護(hù)范圍。