999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

面向農業企業畫像系統的大數據存儲模型研究

2019-10-15 02:21:53竇旭蒙梁毅蘇航
軟件導刊 2019年8期

竇旭蒙 梁毅 蘇航

摘 要:為克服面向農業企業畫像系統在數據存儲方面存在的弊端,使數據存儲工作達到更加精簡、高效、可擴展目的,對農企畫像系統的業務場景和數據源進行分析,提出一套通用存儲模型。該模型由通用操作算子表達式、解析映射器、操作算子實現集和存儲介質組成,以服務的形式對外開放,對上屏蔽掉底層復雜的存儲工作,對下屏蔽掉上層復雜的業務場景,達到降低系統開發維護成本,提高系統工作效率的目的。為農企畫像系統數據存儲工作提供了一套通用的解決方案,對該領域同類型系統存儲工作具有一定的指導意義。

關鍵詞:農業企業;畫像系統;存儲模型;操作算子;異構數據;服務化

DOI:10. 11907/rjdk. 182810 開放科學(資源服務)標識碼(OSID):

中圖分類號:TP306 文獻標識碼:A 文章編號:1672-7800(2019)008-0036-06

Research on Big Data Storage Model for Portrait System of

Agricultural Enterprises

DOU Xu-meng,LIANG Yi,SU Hang

(Faculty of Information Technology, Beijing University of Technology, Beijing 100124, China)

Abstract: In order to improve the disadvantages of the portrait system for agricultural enterprises in data storage, and make the data storage work more concise, efficient and extensible, this paper analyzes the business scenarios and data sources of the agribusiness portrait system and proposes a general storage model. The model is composed of general operator expression, analytic mapper, operator implementation set and storage medium, and is open to the public as a service. The model can be done to block out the underlying complex storage work and on the upper block complex business scenarios, reduce the system development and maintenance costs, improve the work efficiency of the system to work on agribusiness portrait system data storage provides a general solution, the storage of the same kind of system about the field work has a certain guiding significance.

Key Words: agricultural enterprise; portrait system; storage model; operation primitives; heterogeneous data; servicing

基金項目:國家自然科學基金青年項目(61202074);農業部農業大數據重點實驗室開放基金項目(2017,2018)

作者簡介:竇旭蒙(1994-),男,北京工業大學信息學部計算機學院碩士研究生,研究方向為軟件工程與理論;蘇航(1978-),男,北京工業大學信息學部計算機學院講師、碩士生導師,研究方向為軟件自動化、程序分析與變換;梁毅(1975-),女,北京工業大學信息學部計算機學院副教授、碩士生導師,研究方向為計算機體系結構、海量數據處理、云計算、高性能計算。本文通訊作者:竇旭蒙。

0 引言

大數據應用的主要目的是通過對日志數據的分析得到精確的指標結果[1],基于此需求,畫像概念應運而生。畫像即信息標簽化,是對研究個體進行特征標簽化描述,從而得到精準的信息反饋[2]。畫像系統研究已有不少成果:Chen[3]通過分析網站上用戶的行為數據,得到不同用戶對于環境問題的關心程度;劉廣東[4]通過分析用戶的購買行為,實現對用戶的商品推送;王雪[5]通過分析各企業的公示數據,對企業運營狀況、資產、經營規模等方面進行歸類,為政府、銀行等提供參考。

農業信息化發展帶動了農業企業對信息的需求,因此,以農業企業為研究主體的畫像系統(以下簡稱“農企畫像系統”)也隨之誕生[6]。農企畫像系統有助于對農業企業屬性特征、行為趨勢進行精準評估和分類,確保農業企業管理的公平性和要素配置的高效性,對農業企業發展具有指導意義。本文以中國農業科學院信息所提出的農企畫像系統為依托,進行數據存儲相關技術的研究。

數據存儲在農企畫像系統中起著舉足輕重的作用,整個系統生命周期內數據輪轉都要依賴存儲服務,而存儲服務的架構設計和性能指標直接影響整個系統性能和結果精準度[7]。目前的畫像系統由于各功能模塊都涉及到數據的存儲操作,數據存儲服務大多散落在各功能模塊中并由其獨自維護[8],不但增加了業務模塊與存儲模塊的耦合度,沒有做到上層業務模塊與底層存儲模塊分離,而且不利于系統擴展。系統后期維護和功能迭代無形增加了更多開支[9]。

針對上述弊端,田野[10]提出了異構數據存儲統一管理思想;譚振強[11]等為解決關系型數據庫只能滿足二維關系問題,提出了一種存儲中間處理模塊,實現二維關系與多維關系間的靈活轉變;李林[12]提出了一種基于海量圖片數據的存儲模型。以上研究只是針對某種類型的數據進行存儲模型上的優化,不適應本文多源異構數據的研究背景。劉基陽[13]在汽車行業背景下,對異構數據進行統一管理,提出了通用訪問中間件。但該研究的數據源和業務場景全部基于汽車行業下,對農業領域無法起到直接的指導作用。基于對數據存儲相關工作的研究發現,在農企畫像領域目前尚無學者根據該領域產生的異構數據特點進行研究,實現對該領域異構數據的統一管理和通用訪問,使得農企畫像系統對異構數據的存儲仍使用獨立維護的做法,不利于系統的擴展和穩定。而且農企畫像系統還需考慮數據存儲服務以何種形式對外提供[14],以及存儲服務與存儲工具如何尋址映射[15],存儲服務與其它模塊如何做到高度解耦等問題[16]。

本文提出一種通用存儲模型,該模型與狹義的存儲模型不同[17],可以理解為一套存儲架構,由通用操作算子表達式、解析映射器、操作算子實現集和底層存儲介質4部分組成,以服務的形式對外開放。存儲模型對外服務的實現依賴于通用操作算子表達式,通用操作算子表達式依賴于底層的操作算子實現,集和存儲介質兩者之間通過解析映射器進行尋址映射。該模型可對上屏蔽掉底層復雜的存儲工作,對下屏蔽掉上層復雜的業務場景,降低系統耦合程度和開發維護成本,提高系統工作效率和擴展性[18],為農企畫像系統的數據存儲提供了一套通用解決方案,對該領域同類型系統存儲工作具有一定的指導意義。

1 數據源分析

畫像系統數據來源廣泛、類型復雜、結構多樣。王藝霖[19]研究的電信用戶畫像系統數據主要來源于網絡文本、系統日志以及終端數據,以結構化、半結構化、非結構化結合的形式存在。數據處理流程分為數據獲取、數據加工、數據分析、畫像結果應用等步驟。本文研究的農企畫像系統,在數據處理過程方面與王藝霖所研究的畫像系統大致相同,如圖1所示。

[行為日志][網絡爬蟲][企業報表][數據采集層][數據獲取][爬蟲程序][報表解析][日志收集][數據加工][缺失值處理][合法性檢驗][數據變換][冗余去除][文本過濾][數據分析層][標簽提取][機器學習庫][深度學習庫][畫像展示]

圖1 農企畫像系統數據處理流程

基于對已有畫像系統和農企畫像系統相關工作調研,可對農企畫像系統數據源從4個維度進行分析。數據分為網絡原始文本、企業原始報表、企業行為日志、圖片數據、清洗加工后中間數據、特征項、標簽項、系統配置等類型。數據來源分為網絡爬蟲、批量上傳、清洗加工、分析處理、用戶輸入等。數據結構分為結構化、半結構化、非結構化。從數據操作特點分為定時批量讀寫、實時少量讀寫。表1是對系統中各種數據源特點的歸納總結。

表1 農企畫像系統數據分析

2 通用存儲模型設計

農企畫像系統存儲模型架構如圖2所示,存儲模型由上到下分為3部分。

(1)中間件:由通用操作算子集和解析映射器組成。通用操作算子集由多個基礎操作算子表達式組成,算子表達式代表了數據操作的最細粒度,具有標準性、通用性、穩定性特點。例如算子表達式可以表示數據的增加操作,任何存儲系統都不可能缺少增加數據的操作,且該操作不會因為上層業務邏輯和場景的變化而變化。因此,整套操作算子表達式可以達到通用的效果。算子表達式中會帶有各種操作維度的參數,解析映射器會根據這些參數將算子表達式對數據的操作準確映射到目標算子上。即使上層業務或底層存儲工具動態增減,只要通過算子表達式中的參數配合解析映射器,即可實現相應的數據存儲操作。因此該模型具有通用性、用戶低感知性、高可擴展性和高容錯性等特點。

(2)操作算子實現集:由多個操作算子實現組成。操作算子表達式依賴于操作算子實現,而操作算子實現又依賴于底層異構數據庫提供的操作接口,完成數據與存儲工具之間的交互。操作算子實現集應提供對底層所有存儲工具的操作支持,通過算子實現數據的傳輸或相互組合,完成算子表達式功能。

(3)存儲介質:由多種異構數據庫和文件系統組成,可實現存儲介質的動態增減,能夠對農企畫像系統產生的多源、異構、海量數據進行有效存儲。

3 操作算子定義

由于農企畫像系統中異構數據復雜、業務場景多樣,導致數據操作類型多種多樣。本文從數據源特點與系統應用場景出發,提出一套具有高度通用性的操作算子表達式[20]。操作算子表達式的目的是制定一套標準、通用、穩定的數據操作規范。算子表達式格式如下:

算子表達式定義規則:operationType:returnValue→operationCondition;其中operationCondition=(data,specialCondition)。

operationType代表算子表達式操作類型,returnValue代表算子表達式操作結果,operationCondition代表算子表達式操作條件值,operationCondition由data和specialCondition組成,其中data代表操作數據,specialCondition代表具體的操作條件。用戶在使用算子表達式時,如果operationCondition包含的兩項參數有具體值則可作為操作條件傳入;若某項為空,直接采用置空處理即可。算子表達式中各項指標的值如表2-表5所示。

例如,對于網頁文本數據,若獲取某一時間段內某個網頁的文本數據,算子表達式可以定義為:select:collection→operationCondition;在operationCondition中,data值為text,specialCondition值為webCrawlerName和time。用戶在使用算子表達式時只需傳入操作類型、期望返回值、操作條件,即可完成對數據的操作。算子表達式具有一定的通用性,即使將本例更換數據類型、操作類型,只要遵循定義規范,依然可以定義出符合要求的算子表達式,這充分體現了算子表達式的通用性、穩定性特點。

表2 operationType值及含義

表3 returnValue值及含義

表4 data值及含義

表5 specialCondition值及含義

算子表達式的操作請求最終是依靠算子實現集完成的。可以把算子表達式看作是任務策劃者,把算子實現集看作任務的實施者。算子實現集提供了多源異構數據最細粒度的操作實現,是整套存儲模型的中流砥柱。算子表達式和算子實現之間可以是一對多、一對一、多對一、多對多的邏輯關系。

為使存儲模型達到上下屏蔽、動態可擴展,在算子表達式和算子實現集之間引入解析映射器。解析映射器可將算子表達式的傳入參數進行解析,然后通過映射將請求轉交給對應的算子實現。即使上層算子表達式或下層算子實現發生變化,只要解析映射器始終保有一份最新的映射關系,即可完成數據存儲工作,同時也屏蔽了上下層的互相感知。三者關系如圖3所示。

圖3 通用存儲模型架構

以上3種組件協助工作,首先完成多源異構數據的存儲;其次做到上層業務與下層存儲互相屏蔽的解耦效果;最后使整個存儲模型具有通用化、標準化、穩定化、可擴展特點。

4 操作算子實現

本文以農企畫像系統中的特征值處理為例,對存儲模型實現過程進行描述。特征值的分析依賴多種數據源,其中包含網頁文本、企業報表、操作日志等,這些數據結構多樣,讀寫場景也各不相同,需要使用不同的存儲工具,例如不同類型的數據庫。如果不使用本文提出的存儲模型進行數據處理,則需要在業務代碼中嵌入不同數據庫的操作代碼,使得開發人員不能將精力完全集中于業務層面,需要兼顧數據存儲相關功能的代碼開發。使用本文存儲模型時,只需按照算子表達式的規范定義好算子表達式,傳入對應的查詢條件,即可得到多種查詢結果。整個處理流程分為調用存儲模型及數據處理兩部分。

業務層面調用存儲模型偽代碼如下:

Input:compantName公司名稱,startTime查詢起始時間,endTime查詢結束時間,webCrawlerName爬蟲名稱,reportName報表名稱

Output:combineData含有網頁文本,企業報表,操作日志的數據組合

Initialization:combineData, list

1:function dataSelect(webCrawlerName,reportName,compantName,startTime,endTime)

2:list.get(0).data ← text

3:list.get(0).operationCondition ← webCrawlerName[×]time

4:list.get(1).data ← report

5:list.get(1).operationCondition ← compantName[×]reportName

6:list.get(2).data ← log

7:list.get(2).operationCondition ← compantName[×]time

8:combineData.text ← select×collection×list.get(0)

9:combineData.report ← select×collection×list.get(1)

10:combineData.log ← select×collection×list.get(2)

11:return combineData

12:end function

如上偽代碼表示業務邏輯層只需組織好操作所需的條件,按照操作規范對算子表達式進行調用即可得到操作結果。存儲模型內部在接收到用戶的調用請求后,將算子表達式進行拆分解析,按照解析條件調用映射器,得到對應的映射地址,然后調用算子完成目標地址的數據操作,流程如圖4所示。

解析映射器是用動態可配置方式實現對目標數據庫、目標表、目標字段的記錄和修改,確保算子表達式請求能準確對應到某個算子實現上,并且算子實現能夠準確操作對應地址的數據庫、表名以及字段。本文解析映射器實現主要通過幾張記錄關鍵維度信息的表,具體關聯關系如圖5所示。

存儲模型內部處理偽代碼如下(以操作日志查詢為例,無論數據類型數據結構如何變化,存儲模型內部的工作原理都是相同的):

Input:operationType操作類型,operationCondition操作算子條件

Output:combineData.log日志數據(可能為空)

Initialization:combineData

1:function select(operationType,operationCondition)

2:desTableId ← tableMapping(operationCondition.compantName)

3:desDatabase ← databaseMapping(desTableId)

4:combineData.log← databaseMapping(desTableId)

5:log← databaseMapping(desTableId)

6:if log.isEmpty(),goto step 7,else goto step 8

7:combineData.log ← text

8:combineData.log ← null

9:return combineData.log

10:end function

5 結語

本文以中國農業科學院信息所農企畫像系統為基礎,提出農企領域的通用存儲模型,將數據存儲工作從業務邏輯中拆分出來,實現模塊間的松耦合,增強系統的可迭代和可維護性。提出的操作算子表達式具有標準性、通用性、穩定性特點,可為該領域同類系統提供一種數據存儲的通用解決方案和操作規范;使用者只需按規范對算子表達式進行調用,即可實現特定業務場景下的數據存儲工作。算子表達式底層依賴算子實現集支持,算子實現集從農業領域的數據源和操作場景出發,完成對多源異構數據的各類型存儲操作。有了算子表達式和算子實現集的共同協作,整個存儲模型就可做到對上屏蔽底層數據源,對下屏蔽上層業務邏輯的效果,實現對異構數據的統一存儲、統一管理。進一步提出解析映射器概念,將解析映射器作為算子表達式與算子實現集溝通的橋梁,滿足用戶數據源的尋址映射、底層數據源的地址切換、存儲工具的動態擴增等需求;提升了通用存儲模型的靈活性、低感知度,增強了存儲模型的通用性。

本文研究還可延伸,未來可在通用存儲模型響應性能方面實現優化,加入多級緩存手段,同時對緩存命中率進一步優化,實現性能和數據訪問準確性方面的提升和突破。

參考文獻:

[1] H G, J W, Z W, et al. Modeling of user portrait through social media[C]. 2018 IEEE International Conference on Multimedia and Expo (ICME), 2018: 1-6.

[2] NIE J, HUANG L, CUI P, et al. Social media profiler: inferring your social media personality from visual attributes in portrait[M]. China: Springer Verlag, 2016.

[3] CHEN Z M, HU Z Y. User portrait study on UGC website[J]. Computer Systems & Applications,2017,26(1):24-30.

[4] 劉廣東. 基于“用戶畫像”的商品推送系統設計與實現[D]. 西安:西安電子科技大學, 2017.

[5] 王雪. 基于企業畫像的公示數據查詢系統設計與實現[D]. 大連:大連海事大學, 2017.

[6] 趙恒. “互聯網+稅務”:用大數據為企業“畫像”[N]. 中國稅務報,2015-08-28 (A2).

[7] KHAN F A,REHMAN M U,KHALID A,et al. An intelligent data service framework for heterogeneous data sources[J]. Journal of Grid Computing,2018(2): 1-13.

[8] KIM H S, RAVINDRA P, ANYANWU K. A semantics-aware storage framework for scalable processing of knowledge graphs on Hadoop[C]. Boston, MA:2017 IEEE International Conference on Big Data, 2017:193-202.

[9] 張銳,趙瑞鋒,王海柱,等. 基于統一模型的電網大數據存儲與分析服務平臺的實現[J]. 電子技術與軟件工程,2018(21): 153-154.

[10] 田野,袁博,李廷力. 物聯網海量異構數據存儲與共享策略研究[J]. 電子學報,2016, 44(2): 247-257.

[11] 譚振強,陳莘萌,馮舸. 基于關系數據庫的多維數據存儲模型[J]. 小型微型計算機系統, 2001, 22(7): 885-888.

[12] 李林. 基于hadoop的海量圖片存儲模型的分析和設計[D]. 杭州: 杭州電子科技大學, 2011.

[13] 劉基陽. 面向多源異構數據的數據集成中間件的設計與開發[D]. 成都: 電子科技大學, 2018.

[14] M C N, H? S W. Data storage adapter in big data platform[C]. 2015 8th International Conference on Database Theory and Application (DTA),2015:6-9.

[15] J R, S V. A study on storage mechanism for heterogeneous sensor data on big data paradigm[C]. 2017 International Conference on Electrical, Electronics, Communication, Computer, and Optimization Techniques (ICEECCOT),2017: 342-345.

[16] ALKHELAIWI A, DAN G. Smart city data storage optimization in the cloud[C]. 2018 IEEE Fourth International Conference on Big Data Computing Service and Applications,2018:153-160.

[17] N N,M N,M K. Application sensitive energy management framework for storage systems[J]. IEEE Transactions on Knowledge and Data Engineering,2015, 27(9): 2335-2348.

[18] JIANG L, XU L D, CAI H, et al. An iot-oriented data storage framework in cloud computing platform[J]. IEEE Transactions on Industrial Informatics, 2014, 10(2): 1443-1451.

[19] 王藝霖. 基于大數據技術的電信用戶畫像系統的實現與應用[D]. 北京:北京郵電大學, 2018.

[20] COWEN C C, GALLARDO-GUTIéRREZ E A. A new class of operators and a description of adjoints of composition operators[J]. Journal of Functional Analysis,2006, 238(2): 447-462.

(責任編輯:杜能鋼)

主站蜘蛛池模板: 久久伊人色| 日韩在线欧美在线| 亚洲AⅤ综合在线欧美一区| 一个色综合久久| 综合久久久久久久综合网| 国产精品美乳| 色丁丁毛片在线观看| 操国产美女| 91久久夜色精品国产网站| 免费看一级毛片波多结衣| 91欧洲国产日韩在线人成| 国产精品美女自慰喷水| 国产精品久久久久鬼色| 精品久久久久无码| 欧美精品aⅴ在线视频| 欧美日韩午夜| 在线国产资源| 伊人天堂网| 四虎影视永久在线精品| 国产第一页屁屁影院| 人妻免费无码不卡视频| 国产亚洲精品无码专| 国产丝袜无码一区二区视频| 亚洲第一色网站| 久久婷婷国产综合尤物精品| 亚洲区第一页| 国产精品微拍| 国产成人a毛片在线| 国产九九精品视频| 4虎影视国产在线观看精品| 九月婷婷亚洲综合在线| 亚洲国产精品日韩专区AV| 伊人福利视频| 亚洲天堂网视频| 欧美国产日韩另类| 国内精品伊人久久久久7777人| 色偷偷一区二区三区| 久久久久久久久亚洲精品| 在线观看无码a∨| 中文字幕欧美成人免费| 亚洲精品久综合蜜| 婷婷99视频精品全部在线观看| 久久6免费视频| 久久99精品国产麻豆宅宅| 久久无码高潮喷水| 日韩无码一二三区| 久久香蕉国产线看精品| 亚洲中文在线看视频一区| 另类重口100页在线播放| 精品视频91| 波多野结衣的av一区二区三区| 欧美日韩国产在线播放| 成人中文在线| 巨熟乳波霸若妻中文观看免费| 91精品综合| 免费看一级毛片波多结衣| 亚洲精品片911| 黄色片中文字幕| 亚洲IV视频免费在线光看| 亚洲天堂免费| 一级毛片基地| 欧美久久网| 国产91小视频| AV网站中文| 一级毛片免费高清视频| 国产91高清视频| 亚洲午夜片| 国产成人AV综合久久| 亚洲中文字幕精品| 1024国产在线| 播五月综合| 国产自产视频一区二区三区| 中文字幕有乳无码| 精品国产成人a在线观看| 亚洲欧美另类日本| 99久久国产精品无码| 国产呦精品一区二区三区下载| 天天色天天综合| 国模极品一区二区三区| 国产极品嫩模在线观看91| 在线看片免费人成视久网下载| 国产真实乱子伦精品视手机观看|