王琪
摘要:隨著數(shù)字化油田和企業(yè)信息化的發(fā)展,每天都會(huì)產(chǎn)生海量的數(shù)據(jù),如何合理的對(duì)這些數(shù)據(jù)進(jìn)行存儲(chǔ)和應(yīng)用成為數(shù)據(jù)管理人員巨大的挑戰(zhàn)。除了我們常用的結(jié)構(gòu)化數(shù)據(jù)之外,還包含大量格式不確定的非結(jié)構(gòu)化數(shù)據(jù)。這類(lèi)非結(jié)構(gòu)化數(shù)據(jù)依靠現(xiàn)有的數(shù)據(jù)庫(kù)無(wú)法處理,我們急需一種新的數(shù)據(jù)處理方式來(lái)應(yīng)對(duì)不斷增長(zhǎng)的非結(jié)構(gòu)化數(shù)據(jù)。采用Hadoop數(shù)據(jù)管理技術(shù)能夠有效緩解不斷增長(zhǎng)的非結(jié)構(gòu)化數(shù)據(jù)處理造成的壓力。
關(guān)鍵詞:非結(jié)構(gòu)化數(shù)據(jù);NoSQL系統(tǒng);Hadoop;Oracle
中圖分類(lèi)號(hào):TP311? 文獻(xiàn)標(biāo)識(shí)碼:A
文章編號(hào):1009-3044(2021)29-0142-00
1引言
在油田開(kāi)發(fā)的過(guò)程中,隨著油田數(shù)字化建設(shè)的不斷深入,積累了大量數(shù)據(jù)資源,除了統(tǒng)建系統(tǒng)為核心產(chǎn)生的大量結(jié)構(gòu)化的傳統(tǒng)的數(shù)據(jù)之外,也產(chǎn)生了大量非結(jié)構(gòu)化數(shù)據(jù)和半結(jié)構(gòu)化數(shù)據(jù),這些數(shù)據(jù)主要包含各類(lèi)圖紙、文檔附件、影音錄像、地震體文件、數(shù)模建模工區(qū)文件等。如何合理的對(duì)這些數(shù)據(jù)進(jìn)行科學(xué)的管理,分類(lèi)規(guī)劃、分析,最大程度獲取這些數(shù)據(jù)的價(jià)值,合理利用整合數(shù)據(jù)資產(chǎn)是我們勢(shì)在必行的工作。
2企業(yè)結(jié)構(gòu)化數(shù)據(jù)和非結(jié)構(gòu)化數(shù)據(jù)的產(chǎn)生和區(qū)別
結(jié)構(gòu)化數(shù)據(jù),是指固定類(lèi)型的數(shù)據(jù),例如:井號(hào)、類(lèi)別、沉沒(méi)度等都屬于結(jié)構(gòu)化的數(shù)據(jù),通過(guò)這些字段項(xiàng)可以準(zhǔn)確地找到需要的信息;只要系統(tǒng)中提供結(jié)構(gòu)化數(shù)據(jù)的采集頁(yè)面,就可以獲取到相關(guān)內(nèi)容。
非結(jié)構(gòu)化數(shù)據(jù),類(lèi)型和標(biāo)準(zhǔn)不固定,視頻、音頻、井震信息、工區(qū)文件等都是非結(jié)構(gòu)化數(shù)據(jù)。如果需要從非結(jié)構(gòu)化數(shù)據(jù)中提取其中的信息,必須先對(duì)數(shù)據(jù)進(jìn)行非結(jié)構(gòu)化處理。企業(yè)日常生產(chǎn)過(guò)程中的非結(jié)構(gòu)化數(shù)據(jù),最主要的就是以工區(qū)文件為主的大文件,單個(gè)文件大小有時(shí)甚至達(dá)到30G 以上。這類(lèi)文件通常無(wú)法使用傳統(tǒng)FTP或通信設(shè)備共享,設(shè)備傳輸存在安全隱患。基于以上問(wèn)題,非結(jié)構(gòu)化數(shù)據(jù)管理體系的構(gòu)建勢(shì)在必行。
通過(guò)對(duì)某采油廠14個(gè)單位跟蹤調(diào)研發(fā)現(xiàn),其中有大量非結(jié)構(gòu)化數(shù)據(jù)沒(méi)有建庫(kù)。目前采油廠非結(jié)構(gòu)化數(shù)據(jù)的存儲(chǔ)和流轉(zhuǎn),大都采用郵件、FTP 以及即時(shí)通訊等工具傳輸;本地服務(wù)器、計(jì)算機(jī)、移動(dòng)硬盤(pán)存儲(chǔ)。這些工具傳遞文件時(shí)速度不穩(wěn)定,安全性得不到保障,并且無(wú)法很好地滿足企業(yè)中一對(duì)多的高頻數(shù)據(jù)傳遞場(chǎng)景。
2.1目前采油廠的非結(jié)構(gòu)化數(shù)據(jù)主要類(lèi)型
1)數(shù)模、建模工區(qū)文件、相帶圖、地震數(shù)據(jù)體文件等。
2)圖紙、附件、影音、視頻、文件,存儲(chǔ)在特定服務(wù)器中,生成編號(hào)地址,再將地址或編號(hào)存在Oracle服務(wù)器中,通過(guò)訪問(wèn)地址獲取、查看。
3)數(shù)字化建設(shè)實(shí)時(shí)產(chǎn)生的數(shù)據(jù)包括流量數(shù)據(jù)、監(jiān)控?cái)?shù)據(jù)等,存入實(shí)時(shí)數(shù)據(jù)庫(kù)pSpace中。
以上這些非結(jié)構(gòu)化數(shù)據(jù)大部分存儲(chǔ)在特定硬盤(pán)或服務(wù)器中由專業(yè)人員保存。
2.2現(xiàn)有存儲(chǔ)方式存在的問(wèn)題
目前采油廠數(shù)據(jù)庫(kù)主要包括 Oracle、VFOX 以及pSpace。但對(duì)比Hadoop架構(gòu),都存在不同程度的使用問(wèn)題。
1)Oracle11G 以上版本已經(jīng)開(kāi)始支持非結(jié)構(gòu)化數(shù)據(jù)的檢索,但在執(zhí)行效率和成本上遠(yuǎn)遠(yuǎn)不及Hadoop,這在存儲(chǔ)實(shí)時(shí)數(shù)據(jù)上表現(xiàn)得非常明顯。
2)VFOX數(shù)據(jù)庫(kù)作為老牌數(shù)據(jù)庫(kù)優(yōu)勢(shì)在于操作簡(jiǎn)便,易于掌握,但安全性和兼容性較差,并且不能處理非結(jié)構(gòu)化數(shù)據(jù)。
3)pSpace是企業(yè)級(jí)實(shí)時(shí)歷史數(shù)據(jù)庫(kù),pSpace可以構(gòu)成一個(gè)復(fù)雜的企業(yè)信息化系統(tǒng),但功能性較為單一,多用于配合傳統(tǒng)數(shù)據(jù)庫(kù)補(bǔ)充使用。
除此之外,存儲(chǔ)在FTP或存儲(chǔ)介質(zhì)中的非結(jié)構(gòu)化數(shù)據(jù)也存在很多問(wèn)題:1)不方便共享;2)安全性存在隱患,數(shù)據(jù)容易遺失,需要多個(gè)存儲(chǔ)介質(zhì)進(jìn)行備份。
3 Hadoop的基本屬性及特點(diǎn)
3.1關(guān)于Hadoop
目前很多企業(yè)把Hadoop作為數(shù)據(jù)庫(kù)使用,但Hadoop并不是數(shù)據(jù)庫(kù),而是一個(gè)由Apache基金會(huì)所開(kāi)發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu),主要解決海量數(shù)據(jù)的存儲(chǔ)和海量數(shù)據(jù)的分析問(wèn)題,允許分布式處理多臺(tái)(可以達(dá)數(shù)千臺(tái))計(jì)算機(jī)上的大數(shù)據(jù)集。使用基礎(chǔ)的功能——底層結(jié)構(gòu)HDFS處理海量數(shù)據(jù)群,作為一種先進(jìn)的分布式存儲(chǔ)框架,它能夠最大限度地完成對(duì)數(shù)據(jù)采集、存儲(chǔ)、分析、處理、保管和交托。它的核心是HDFS,是一個(gè)支持跨多臺(tái)計(jì)算機(jī)存儲(chǔ)大數(shù)據(jù)集的 Hadoop 文件系統(tǒng),可以說(shuō)Hadoop是為了大數(shù)據(jù)的發(fā)展應(yīng)運(yùn)而生的。
Hadoop 的結(jié)構(gòu)部署如圖1所示:
Hadoop 的基本組件包括以下幾種:
1)HBase:來(lái)源于Google 的BigTable;是一個(gè)高可靠性、高性能、面向列、可伸縮的分布式數(shù)據(jù)庫(kù)。
2)Hive:是基于hadoop架構(gòu)的數(shù)據(jù)倉(cāng)庫(kù)的工具,可以將結(jié)構(gòu)化的sql數(shù)據(jù)文件進(jìn)行映射并且可以作為數(shù)據(jù)庫(kù)表來(lái)處理sql查詢等功能。
3)Pig:這是 Hadoop 的客戶端是一個(gè)數(shù)據(jù)操作的數(shù)據(jù)分析引擎,使用特定的語(yǔ)法操作HDFS部件中的相關(guān)數(shù)據(jù)。
4)ZooKeeper:來(lái)源于 Google 的 Chubby;可以有針對(duì)性的解決傳統(tǒng)分布式應(yīng)用系統(tǒng)存在的協(xié)調(diào)問(wèn)題以及分布式管理的操作困難。
5)Ambari:是一種用于集成管理的工具,輔助集群決策管理。
6)Sqoop:Apache Sqoop(TM)是一種在 Apache Hadoop 和結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)(如關(guān)系數(shù)據(jù)庫(kù))之間傳輸批量數(shù)據(jù)的工具。它是 Hadoop 生態(tài)系統(tǒng)的一部分。
7)Mahout:一個(gè)可擴(kuò)展的機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘庫(kù)。
3.2 Hadoop與Oracle對(duì)比
目前采油廠的非結(jié)構(gòu)化數(shù)據(jù),大部分存在本地硬盤(pán)中,或使用FTP共享,不但不容易保存,并且數(shù)據(jù)價(jià)值并沒(méi)有被充分挖掘。
例如:地震數(shù)據(jù)體文件,單個(gè)文件大小可最高達(dá)到50G 以上,傳輸困難,而一臺(tái)計(jì)算機(jī)存儲(chǔ)空間有限,大部分文件存儲(chǔ)在移動(dòng)硬盤(pán)中,隨著數(shù)據(jù)量的不斷增長(zhǎng),普通存儲(chǔ)介質(zhì)已經(jīng)不能滿足工作需求。尤其在地質(zhì)技術(shù)人員需要同時(shí)使用時(shí)只能分別拷貝到自己的計(jì)算機(jī)內(nèi),傳輸時(shí)間長(zhǎng)、效率低。
我們做了一個(gè)對(duì)比試驗(yàn):在相同實(shí)驗(yàn)環(huán)境下,使用Java語(yǔ)言接口分別對(duì)Hbase數(shù)據(jù)庫(kù)及Oracle數(shù)據(jù)庫(kù)文件傳輸結(jié)果進(jìn)行效率比對(duì)。總計(jì)傳輸了50個(gè)共960M 的附件文檔,Oracle共計(jì)耗時(shí)1980秒,而HBase僅耗時(shí)136秒;而如果下載同等大小的文件,Oracle需要耗時(shí)296秒,但HBase僅需103秒。從測(cè)試結(jié)果可以看出,使用HBase存儲(chǔ)非結(jié)構(gòu)化數(shù)據(jù),文件吞吐執(zhí)行效率優(yōu)于Oracle,更優(yōu)于傳統(tǒng)存儲(chǔ)介質(zhì)或FTP。當(dāng)文件大小超過(guò)一定量時(shí),無(wú)法有效的通過(guò)ORACLE進(jìn)行文件管理。
而Hadoop另一核心組件HDFS,則是為了存儲(chǔ)大文件而存在的:它將每個(gè)文件存儲(chǔ)成一系列可以配置大小的數(shù)據(jù)塊,除了最后一個(gè),所有數(shù)據(jù)塊都是同樣大小的。并且每個(gè)數(shù)據(jù)塊都有副本,每個(gè)副本系數(shù)都是可配置的。應(yīng)用程序可以指定每個(gè)文件的副本數(shù)目。每個(gè)文件都是一次性寫(xiě)入的(讀多寫(xiě)少模式)。
3.3 Hadoop 的安全性
對(duì)于數(shù)據(jù)的來(lái)說(shuō),擁有的數(shù)據(jù)越多,對(duì)數(shù)據(jù)的保護(hù)就越重要。 Hadoop 的安全性一直廣受質(zhì)疑。為了解決安全性問(wèn)題, Hadoop設(shè)置了 Simple 和 Kerberos這兩種安全機(jī)制。Simple 是一種認(rèn)證與授權(quán)服務(wù)機(jī)制; Kerberos是基于認(rèn)證服務(wù)器的一種機(jī)制。經(jīng)測(cè)試,這兩種機(jī)制均有比較安全的效果。
同時(shí),隨著 Hadoop 的廣泛應(yīng)用。很多大數(shù)據(jù)資源廠商都針對(duì)Hadoop發(fā)布了安全補(bǔ)充方案。比如DataGuise for Hadoop 以及DataStax等配套資源,這也為我們安全的使用Hadoop提供了技術(shù)支持和后續(xù)保障。
4 Hadoop架構(gòu)在非結(jié)構(gòu)化數(shù)據(jù)管理的應(yīng)用前景
4.1利用Hadoop存儲(chǔ)油田非結(jié)構(gòu)化數(shù)據(jù)的方式
4.2 Hadoop數(shù)據(jù)架構(gòu)的搭建:
1)文件存取使用統(tǒng)一接口,封裝對(duì)數(shù)據(jù)中心所有的非結(jié)構(gòu)化數(shù)據(jù)的讀寫(xiě)操作接口;
2)以HDFS對(duì)大文件負(fù)責(zé)存儲(chǔ),并作為文件協(xié)議標(biāo)準(zhǔn);
3)以 HBase通過(guò)維護(hù)一張文件表完成對(duì)小文件的存儲(chǔ)并作為文件協(xié)議標(biāo)識(shí)。
搭建一個(gè)Hadoo分布式存儲(chǔ)架構(gòu),通常只需要三到五臺(tái)計(jì)算機(jī),成本低廉并且 Hadoop 和Storm作為開(kāi)源的框架,幾乎是免費(fèi)的,有效地降低了企業(yè)應(yīng)用成本。
該架構(gòu)能將實(shí)時(shí)計(jì)算和離線計(jì)算都是在一個(gè)架構(gòu)或一個(gè)集群中,所需要的數(shù)據(jù)共用共享,共享的非結(jié)構(gòu)化數(shù)據(jù)一次寫(xiě)入,多次讀取,寫(xiě)入后存儲(chǔ)在HDFS上就不能修改,但可以把文件下載到本地,把HDFS上的文件刪除,修改后再上傳到HDFS 上,實(shí)現(xiàn)文件的修改,確保共享文件的安全性和實(shí)時(shí)性,以及數(shù)據(jù)源的唯一性。在此基礎(chǔ)上,甚至可以進(jìn)一步構(gòu)建大數(shù)據(jù)技術(shù)生態(tài)體系。
5總結(jié)
隨著大數(shù)據(jù)時(shí)代的發(fā)展,很多運(yùn)營(yíng)商深切認(rèn)識(shí)到 Hadoop 的價(jià)值,開(kāi)發(fā)的軟件和數(shù)據(jù)庫(kù)都為 Hadoop 提供了接口。比如我們現(xiàn)在一直在用的Oracle。 Oracle從11G版本開(kāi)始就為Ha?doop提供了免費(fèi)接口,幾乎可以做到無(wú)縫銜接,這就使我們?cè)诠芾砥髽I(yè)數(shù)據(jù)時(shí)有了更加便捷的管理途徑。之前提過(guò)Hadoop 是為大數(shù)據(jù)時(shí)代而生的,盡管由于開(kāi)發(fā)時(shí)間尚短,存在許多不足,比如對(duì)于傳統(tǒng)結(jié)構(gòu)化數(shù)據(jù)的處理方面還不能完全取代Ora?cle,但隨著大數(shù)據(jù)的發(fā)展以及技術(shù)的不斷創(chuàng)新,終有一天能夠?yàn)槠髽I(yè)數(shù)據(jù)建設(shè)提供更加堅(jiān)實(shí)的支撐。
數(shù)據(jù)建設(shè)和管理是一項(xiàng)復(fù)雜的系統(tǒng)工程,作為數(shù)據(jù)管理人員,我們的主要任務(wù),就是利用先進(jìn)的理念和技術(shù),打破傳統(tǒng)的模式,對(duì)數(shù)據(jù)進(jìn)行全方位的管理和升級(jí),在實(shí)踐中尋找方法,開(kāi)拓道路,為油田高質(zhì)量高效益發(fā)展提供數(shù)據(jù)支撐。
參考文獻(xiàn):
[1] Sanger F, Nicklen S. DNA sequencing with chain-terminating [P].74, 5463–5467(1977).
[2] Schuster S C. Next-generation sequencing transforms today's biology[J].Nature Methods,2008,5(1):16-18.
[3]解增言,林俊華,譚軍,等.DNA測(cè)序技術(shù)的發(fā)展歷史與最新進(jìn)展[J].生物技術(shù)通報(bào),2010(8):64-70.
[4] Rusk N.Cheap third-generation sequencing[J].Nature Methods, 2009,6(4):244.
[5] Venter J C,Adams M D,Myers E W,etal.The sequence of the human genome[J].Science,2001,291(5507):1304-1351.
[6]于聘飛,王英,葛芹玉.高通量DNA測(cè)序技術(shù)及其應(yīng)用進(jìn)展[J].南京曉莊學(xué)院學(xué)報(bào),2010,26(3):1-5.
[7]衣春翔.哈工大牽頭啟動(dòng)十萬(wàn)人基因組計(jì)劃——繪制中國(guó)人精細(xì)基因組圖譜[N].黑龍江日?qǐng)?bào),2017-12-29(3).
[8] Jeffrey Dean, Sanjay Ghemawat. MapReduce: Simplified Data Processing on Large Clusters[C]. America: Google, Inc., 2004:137-149.
【通聯(lián)編輯:唐一東】