丘寬
【摘要】? ? 隨著企業(yè)規(guī)模發(fā)展,企業(yè)的預(yù)算管理成為促進(jìn)企業(yè)健康成長的重要基礎(chǔ)?,F(xiàn)代企業(yè)的預(yù)算管理涉及各個業(yè)務(wù)的復(fù)雜數(shù)據(jù)處理,需要能夠跟蹤預(yù)算的執(zhí)行過程,通過對預(yù)算執(zhí)行數(shù)據(jù)的監(jiān)控,實(shí)現(xiàn)一定程度的預(yù)測,因此對預(yù)算管理平臺具有較高的要求。傳統(tǒng)的預(yù)算管理平臺功能較為單一,數(shù)據(jù)處理功能較弱,無法應(yīng)對日益復(fù)雜的企業(yè)業(yè)務(wù)發(fā)展。隨著大數(shù)據(jù)技術(shù)的發(fā)展,Hadoop等分布式平臺得到廣泛應(yīng)用。通過Hadoop平臺可以存儲規(guī)模龐大的企業(yè)數(shù)據(jù),并提供較強(qiáng)的計算能力,同時支持進(jìn)行數(shù)據(jù)挖掘,實(shí)現(xiàn)預(yù)算的預(yù)測等,因此本文對基于Hadoop的分布式預(yù)算管理平臺進(jìn)行研究。
【關(guān)鍵詞】? ? 分布式? ? 預(yù)算管理平臺? ? Hadoop
一、緒論
預(yù)算管理平臺用于支撐企業(yè)的日常經(jīng)營以及企業(yè)戰(zhàn)略的實(shí)現(xiàn),是現(xiàn)代企業(yè)中的重要信息系統(tǒng)。通過預(yù)算管理,統(tǒng)一分析企業(yè)中的各項(xiàng)數(shù)據(jù),跟蹤企業(yè)各項(xiàng)業(yè)務(wù)的發(fā)展,用于分析企業(yè)的資金、財務(wù)、業(yè)務(wù)流程的執(zhí)行。企業(yè)預(yù)算管理涉及企業(yè)業(yè)務(wù)發(fā)展的各個方面,需要針對企業(yè)業(yè)務(wù)的各項(xiàng)數(shù)據(jù)進(jìn)行深入分析,因此需要全面整合企業(yè)的各項(xiàng)數(shù)據(jù)。隨著現(xiàn)代企業(yè)的發(fā)展,各項(xiàng)業(yè)務(wù)數(shù)據(jù)逐漸增加,為提供企業(yè)制定預(yù)算、監(jiān)控預(yù)算執(zhí)行的科學(xué)性,需要預(yù)算管理系統(tǒng)提供較為強(qiáng)大的計算能力,在進(jìn)行預(yù)算計劃時,能夠提供部分預(yù)測功能。
傳統(tǒng)的預(yù)算管理系統(tǒng)功能主要基于Oracle等傳統(tǒng)數(shù)據(jù)庫進(jìn)行架構(gòu),傳統(tǒng)數(shù)據(jù)庫在數(shù)據(jù)存儲、存儲計算等方面的能力較為有限,對于大規(guī)模的數(shù)據(jù)其計算效率較低,并且難以擴(kuò)展。同時,對于數(shù)據(jù)挖掘、機(jī)器學(xué)習(xí)等功能的支撐也較為有限。近年來,以Hadoop為基礎(chǔ)的大數(shù)據(jù)平臺得到廣泛的應(yīng)用。Hadoop平臺采用分布式架構(gòu),能夠方便的進(jìn)行橫向擴(kuò)展,當(dāng)系統(tǒng)資源無法支撐企業(yè)預(yù)算功能時,可以通過在集群中增加服務(wù)器的方式快速提高系統(tǒng)的性能。同時,由于預(yù)算管理的數(shù)據(jù)一般涉及企業(yè)的核心數(shù)據(jù),雖然傳統(tǒng)的Oracle架構(gòu)提供了冷備以及熱備等方式應(yīng)對突發(fā)故障,但是也很難避免核心數(shù)據(jù)的丟失。而分布式Hadoop采用分布備份的方式,將核心數(shù)據(jù)分布在不同的服務(wù)器上,其數(shù)據(jù)安全性得到進(jìn)一步的保障。同時,分布式Hadoop提供各類機(jī)器學(xué)習(xí)的庫,如Mahout等,擴(kuò)展了系統(tǒng)的學(xué)習(xí)能力。因此,本文基于Hadoop框架設(shè)計企業(yè)預(yù)算管理平臺。
二、系統(tǒng)需求分析
預(yù)算管理平臺涉及對預(yù)算的編制與計劃、預(yù)算的執(zhí)行管理、預(yù)算監(jiān)督、預(yù)算基礎(chǔ)數(shù)據(jù)維護(hù)等功能,如圖1所示。
(1)預(yù)算編制與計劃。預(yù)算編制與計劃模塊提供年度、季度、月度預(yù)算以及特殊預(yù)算編制等功能。預(yù)算編制的基礎(chǔ)在于以詳實(shí)的企業(yè)數(shù)據(jù)為依托,對企業(yè)未來發(fā)展所需預(yù)算進(jìn)行科學(xué)預(yù)測,因此需要系統(tǒng)能夠提供全面的數(shù)據(jù),以及預(yù)測功能。
(2)預(yù)算管理。預(yù)算管理模塊提供對預(yù)算的查詢、預(yù)算預(yù)警以及預(yù)算的統(tǒng)計功能。對預(yù)算的查詢需要快速響應(yīng),同時對預(yù)算執(zhí)行中可能存在的偏差進(jìn)行預(yù)測以及預(yù)警,并提供完善的報表統(tǒng)計功能。
(3)預(yù)算執(zhí)行。預(yù)算執(zhí)行模塊提供預(yù)算監(jiān)控、預(yù)算跟蹤以及預(yù)算執(zhí)行分析功能。該模塊可以跟蹤預(yù)算的詳細(xì)執(zhí)行情況,并分析執(zhí)行的信息。
(4)核心數(shù)據(jù)管理。核心數(shù)據(jù)管理模塊提供對核心數(shù)據(jù)的入庫、核心數(shù)據(jù)加工以及核心數(shù)據(jù)的備份與恢復(fù)等功能。通過核心數(shù)據(jù)管理模塊匯總企業(yè)的各項(xiàng)核心數(shù)據(jù),并轉(zhuǎn)化為標(biāo)準(zhǔn)的數(shù)據(jù)格式提供給系統(tǒng)進(jìn)行計算。
三、系統(tǒng)框架設(shè)計
本文基于Hadoop技術(shù)棧設(shè)計企業(yè)預(yù)算管理系統(tǒng)。Hadoop基于集群方式管理企業(yè)預(yù)算管理系統(tǒng)中的各項(xiàng)數(shù)據(jù),對企業(yè)數(shù)據(jù)進(jìn)行大規(guī)模存儲,同時提供計算能力分析企業(yè)預(yù)算數(shù)據(jù),同時提供機(jī)器學(xué)習(xí)接口,通過對預(yù)算管理數(shù)據(jù)的分析,提供不同尺度的預(yù)算的預(yù)測以及預(yù)算執(zhí)行過程中的預(yù)警功能。本文設(shè)計的預(yù)算管理系統(tǒng)架構(gòu)如圖2所示。
基于Hadoop的預(yù)算管理系統(tǒng)采用五層架構(gòu)。首先是基礎(chǔ)層,包括Hadoop集群主機(jī)、存儲以及網(wǎng)絡(luò)等要素。第二層為ETL層,通過ETL將各業(yè)務(wù)系統(tǒng)數(shù)據(jù)采集到Hadoop集群中進(jìn)行標(biāo)準(zhǔn)計算、數(shù)據(jù)挖掘等。第三層為存儲層,為了方便預(yù)算管理系統(tǒng)訪問各業(yè)務(wù)數(shù)據(jù),通過ETL工具采集各個業(yè)務(wù)系統(tǒng)的數(shù)據(jù)并存儲到Hadoop集群。通過ETL匯總的預(yù)算基礎(chǔ)數(shù)據(jù),通過建立數(shù)據(jù)倉庫模型進(jìn)行管理,在構(gòu)建數(shù)據(jù)倉庫模型時,基于Hive技術(shù)進(jìn)行實(shí)現(xiàn)。其中可以構(gòu)建貼源的ODS層,主要存儲7天左右的業(yè)務(wù)原始數(shù)據(jù)。通過對原始數(shù)據(jù)進(jìn)行初步計算,得到DWD層,然后進(jìn)一步為預(yù)算管理系統(tǒng)的各個模塊提供面向應(yīng)用的DW層,通過匯總DW層的主題模型形成ST系統(tǒng)模型層。為了能夠降低系統(tǒng)內(nèi)部各個模塊的耦合性,本文設(shè)計服務(wù)層,通過API接口、文件接口、消息機(jī)制的方式提供系統(tǒng)服務(wù)。系統(tǒng)的最上層為應(yīng)用層,提供預(yù)算管理平臺各個業(yè)務(wù)模塊的功能。
四、系統(tǒng)關(guān)鍵技術(shù)
本節(jié)分析預(yù)算管理系統(tǒng)實(shí)現(xiàn)的關(guān)鍵技術(shù),主要包括Hadoop集群構(gòu)建、 數(shù)據(jù)模型實(shí)現(xiàn)以及系統(tǒng)服務(wù)實(shí)現(xiàn)。
1、Hadoop架構(gòu)構(gòu)建
本文基于Hadoop技術(shù)棧搭建預(yù)算管理系統(tǒng),系統(tǒng)集群中包括主節(jié)點(diǎn)以及數(shù)據(jù)節(jié)點(diǎn),其中主節(jié)點(diǎn)用于管理與協(xié)調(diào)各個子節(jié)點(diǎn),數(shù)據(jù)節(jié)點(diǎn)用于存儲數(shù)據(jù)。在計算框架上,選擇Map/Reduce框架,該框架將數(shù)據(jù)任務(wù)分布到各個子節(jié)點(diǎn),然后匯總處理各個子節(jié)點(diǎn)的計算結(jié)果。在Hadoop的調(diào)度上,本文采用YARN進(jìn)行分布式調(diào)度,將不同的Job Tracker分布到集群的服務(wù)器上。在數(shù)據(jù)倉庫構(gòu)建上,本文選擇Hive作為數(shù)據(jù)倉庫的實(shí)現(xiàn)基礎(chǔ)平臺,Hive對外提供SQL的訪問機(jī)制。ETL選擇Kettle將各個中心的數(shù)據(jù)進(jìn)行匯總,如圖3所示。
2、數(shù)據(jù)模型實(shí)現(xiàn)
在預(yù)算管理平臺中,基于Hadoop匯總各個業(yè)務(wù)系統(tǒng)的數(shù)據(jù)以后,基于Hive構(gòu)建數(shù)據(jù)模型,數(shù)據(jù)模型有利于對預(yù)算數(shù)據(jù)進(jìn)行標(biāo)準(zhǔn)化,并形成中心主題,然后提供給預(yù)算管理系統(tǒng)使用。同時,通過數(shù)據(jù)模型,也為數(shù)據(jù)挖掘以及預(yù)測奠定數(shù)據(jù)基礎(chǔ)。通過以下形式化過程,構(gòu)建預(yù)算管理的模型,保障數(shù)據(jù)的一致性。假設(shè)∑表示預(yù)算管理模型,其中預(yù)算規(guī)則為C,數(shù)據(jù)D∈C,r∈R,a,b∈I,則定義如下的模型構(gòu)建過程:
(1)包含關(guān)系構(gòu)建,∑├C?D,其中CI?DI。檢測所有滿足I├∑的的數(shù)據(jù)模型以及關(guān)系。
(2)數(shù)據(jù)實(shí)例檢測,∑├a:C。檢測所有滿足I├∑的數(shù)據(jù)模型,是否滿足aI?DI。
(3)數(shù)據(jù)關(guān)系檢測,∑├(a,b),檢測所有滿足I├∑的數(shù)據(jù)模型,是否滿足aI,bI?rI。
(4)數(shù)據(jù)概念檢測,∑├(a,b,C),檢測所有滿足I├∑的數(shù)據(jù)模型,是否滿足aI,bI?CI。
(5)數(shù)據(jù)模型一致性檢測,∑├,檢測所有滿足├∑的數(shù)據(jù)模型,是否滿足I?CI。
通過依照以上形式規(guī)則,可以構(gòu)建預(yù)算管理系統(tǒng)中的各類數(shù)據(jù)模型,并且可以通過形式規(guī)則保障數(shù)據(jù)模型的一致性,從而保障模型的安全。
3、系統(tǒng)服務(wù)實(shí)現(xiàn)
本文設(shè)計預(yù)算管理系統(tǒng)服務(wù)如圖4所示。API Gateway是微服務(wù)系統(tǒng)的對外服務(wù)接口,外部系統(tǒng)只有通過網(wǎng)關(guān)才能訪問系統(tǒng)內(nèi)部的各項(xiàng)功能。外部應(yīng)用一般將請求發(fā)送給網(wǎng)關(guān),網(wǎng)關(guān)進(jìn)行權(quán)限認(rèn)證等處理以后,會根據(jù)請求的不同發(fā)送給注冊中心。注冊中心維護(hù)了微服務(wù)系統(tǒng)中各種服務(wù)的基本信息,只有要注冊中心注冊的微服務(wù)才能被外部系統(tǒng)訪問。通過注冊中心,將請求發(fā)送給具體的微服務(wù)模塊進(jìn)行處理。在調(diào)用具體的微服務(wù)時,一般采用RestFul接口的形式,目前RestFul接口調(diào)用對系統(tǒng)消耗的資源最少,調(diào)用也最為方便。
五、總結(jié)
本文基于Hadoop架構(gòu)設(shè)計企業(yè)預(yù)算管理平臺,通過分析預(yù)算平臺的需求,設(shè)計系統(tǒng)的框架,然后詳細(xì)分析了Hadoop架構(gòu)的搭建、數(shù)據(jù)模型的構(gòu)建以及微服務(wù)中心的實(shí)現(xiàn)。
參? 考? 文? 獻(xiàn)
[1]李喜歡. 基于業(yè)財一體化的企業(yè)PPP業(yè)務(wù)全面預(yù)算管理系統(tǒng)優(yōu)化[J]. 國際商務(wù)財會, 2020(7):17-19.
[2]石鍇. 企業(yè)財務(wù)管理信息化中智能預(yù)算管理系統(tǒng)研究[J]. 辦公室業(yè)務(wù), 2020,9(1):10-14.
[3]魯志芳. 基于Hadoop技術(shù)的大數(shù)據(jù)分析應(yīng)用系統(tǒng)的研究與設(shè)計[J]. 電子設(shè)計工程, 2019(16),10:18.