国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種數(shù)據(jù)處理平臺和系統(tǒng)的制作方法

      文檔序號:11677736閱讀:250來源:國知局
      一種數(shù)據(jù)處理平臺和系統(tǒng)的制造方法與工藝

      本發(fā)明涉及數(shù)據(jù)處理技術(shù)領(lǐng)域,具體而言,涉及一種數(shù)據(jù)處理平臺和系統(tǒng)。



      背景技術(shù):

      目前,隨著大數(shù)據(jù)時代的到來,大數(shù)據(jù)的存儲與查詢成為大數(shù)據(jù)領(lǐng)域的熱點之一。大數(shù)據(jù)就是巨量數(shù)據(jù)集合,通過分布式的方式存儲到大數(shù)據(jù)存儲系統(tǒng)中。大數(shù)據(jù)存儲系統(tǒng)會在已存儲存量數(shù)據(jù)的基礎(chǔ)上,對后來得到的增量數(shù)據(jù)繼續(xù)進(jìn)行存儲。而對增量數(shù)據(jù)的處理可以實時動態(tài)的根據(jù)數(shù)據(jù)源的改變,對數(shù)據(jù)及時處理并將處理結(jié)果增量導(dǎo)入數(shù)據(jù)庫以備后續(xù)利用。

      相關(guān)技術(shù)中,對增量數(shù)據(jù)進(jìn)行處理時,spark集群會抽取增量數(shù)據(jù)并做同步分析和存儲,完成后spark集群將同步分析處理后的增量數(shù)據(jù)導(dǎo)入hbase;hbase對同步分析處理后的增量數(shù)據(jù)進(jìn)行抽取,并將抽取的數(shù)據(jù)導(dǎo)入elasticsearch,elasticsearch建立導(dǎo)入的增量數(shù)據(jù)的索引,從而完成對增量數(shù)據(jù)的處理。

      在實現(xiàn)本發(fā)明過程中,發(fā)明人發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在如下問題:

      隨著時間的推移,spark集群中存儲的數(shù)據(jù)越來越多,存儲壓力越來越大。



      技術(shù)實現(xiàn)要素:

      有鑒于此,本發(fā)明實施例的目的在于提供一種數(shù)據(jù)處理平臺和系統(tǒng),以減輕spark集群的存儲壓力。

      第一方面,本發(fā)明實施例提供了一種數(shù)據(jù)處理平臺,包括:相互交互的spark集群、elasticsearch集群和hbase集群;

      所述spark集群,用于監(jiān)測數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù),對所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理,并把處理后的增量數(shù)據(jù)導(dǎo)入elasticsearch集群和hbase集群,其中,所述增量數(shù)據(jù)包括:數(shù)據(jù)類型標(biāo)識;

      所述hbase集群,用于存儲所述spark集群處理后的所述增量數(shù)據(jù);

      所述elasticsearch集群,用于將處理后的所述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第一種可能的實施方式,其中:所述elasticsearch集群,包括:多個elasticsearch節(jié)點;

      所述多個elasticsearch節(jié)點分別與所述spark集群和所述hbase集群交互;

      所述多個elasticsearch節(jié)點均用于將處理后的所述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并;

      當(dāng)所述多個elasticsearch節(jié)點中有elasticsearch節(jié)點出現(xiàn)故障時,故障elasticsearch節(jié)點獲取所述hbase集群中存儲的所述增量數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù)。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第二種可能的實施方式,其中:所述故障elasticsearch節(jié)點獲取所述hbase集群中存儲的所述增量數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù),包括:

      所述故障elasticsearch節(jié)點向所述elasticsearch集群中其他elasticsearch節(jié)點發(fā)送第一增量數(shù)據(jù)恢復(fù)指令,所述第一增量數(shù)據(jù)恢復(fù)指令中攜帶有數(shù)據(jù)恢復(fù)時間段;

      當(dāng)在預(yù)設(shè)的恢復(fù)數(shù)據(jù)獲取時長內(nèi)收到其他elasticsearch節(jié)點返回的所述數(shù)據(jù)恢復(fù)時間段內(nèi)增量數(shù)據(jù)的恢復(fù)數(shù)據(jù)時,所述故障elasticsearch節(jié)點通過增量數(shù)據(jù)的恢復(fù)數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù);

      當(dāng)在預(yù)設(shè)的恢復(fù)數(shù)據(jù)獲取時長內(nèi)未收到其他elasticsearch節(jié)點返回的所述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)恢復(fù)數(shù)據(jù)時,向所述hbase集群發(fā)送第二增量數(shù)據(jù)恢復(fù)指令,所述第二增量數(shù)據(jù)恢復(fù)指令中攜帶有數(shù)據(jù)恢復(fù)時間段和所述故障elasticsearch節(jié)點的標(biāo)識;

      所述故障elasticsearch節(jié)點獲取所述hbase集群返回的增量恢復(fù)數(shù)據(jù),并通過所述增量恢復(fù)數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù)。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第三種可能的實施方式,其中:所述故障elasticsearch節(jié)點獲取所述hbase集群返回的增量恢復(fù)數(shù)據(jù),并通過所述增量恢復(fù)數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù),包括:

      所述故障elasticsearch節(jié)點獲取所述hbase集群返回的增量恢復(fù)數(shù)據(jù),所述增量恢復(fù)數(shù)據(jù)攜帶有數(shù)據(jù)類型標(biāo)識;

      所述故障elasticsearch節(jié)點將所述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)刪除;

      所述故障elasticsearch節(jié)點獲取預(yù)存的不同類型數(shù)據(jù)的索引文件,所述索引文件包括:索引標(biāo)識;

      當(dāng)具有未查詢的索引標(biāo)識時,所述故障elasticsearch節(jié)點根據(jù)索引文件中的索引標(biāo)識,查詢出具有與所述索引標(biāo)識相同的數(shù)據(jù)類型標(biāo)識的增量恢復(fù)數(shù)據(jù);

      所述故障elasticsearch節(jié)點根據(jù)所述索引標(biāo)識對應(yīng)的索引文件,確定查詢出的增量恢復(fù)數(shù)據(jù)對應(yīng)類型數(shù)據(jù)的存儲文件;

      所述故障elasticsearch節(jié)點將查詢出的增量恢復(fù)數(shù)據(jù)合并到確定出的存儲文件中。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第四種可能的實施方式,其中:當(dāng)獲取到第二增量數(shù)據(jù)恢復(fù)指令時,所述hbase集群,具體用于:

      查詢出所述第二增量數(shù)據(jù)恢復(fù)指令中攜帶的所述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù),將所述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)確定為所述增量恢復(fù)數(shù)據(jù);

      向所述故障elasticsearch節(jié)點的標(biāo)識指示的故障elasticsearch節(jié)點返回所述增量恢復(fù)數(shù)據(jù)。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第五種可能的實施方式,其中:所述多個elasticsearch節(jié)點均用于將處理后的所述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并,包括:

      所述elasticsearch節(jié)點獲取預(yù)存的不同類型數(shù)據(jù)的索引文件,所述索引文件包括:索引標(biāo)識;

      當(dāng)具有未查詢的索引標(biāo)識時,所述elasticsearch節(jié)點根據(jù)索引文件中的索引標(biāo)識,查詢出具有與所述索引標(biāo)識相同的數(shù)據(jù)類型標(biāo)識的增量數(shù)據(jù);

      所述elasticsearch節(jié)點根據(jù)所述索引標(biāo)識對應(yīng)的索引文件,確定查詢出的增量數(shù)據(jù)對應(yīng)類型數(shù)據(jù)的存儲文件;

      所述elasticsearch節(jié)點將查詢出的增量數(shù)據(jù)合并到確定出的存儲文件中,將處理后的所述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第六種可能的實施方式,其中:所述spark集群,監(jiān)測數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù),對所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理包括:

      監(jiān)測所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù);

      當(dāng)所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)滿足預(yù)設(shè)的數(shù)據(jù)抽取條件時,從所述數(shù)據(jù)庫獲取增量數(shù)據(jù);

      對獲取到的所述增量數(shù)據(jù)進(jìn)行提取、轉(zhuǎn)換和加載(extraction-transformation-loading,etl)處理;

      針對不同的數(shù)據(jù)類型對提取、轉(zhuǎn)換和加載處理后的增量數(shù)據(jù)做簡單數(shù)據(jù)分析、數(shù)理統(tǒng)計和數(shù)據(jù)挖掘;

      其中,所述數(shù)據(jù)抽取條件,包括以下條件中的至少一個:所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)數(shù)量達(dá)到預(yù)設(shè)數(shù)量閾值;所述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)占用的存儲空間達(dá)到預(yù)設(shè)存儲空間閾值;距離上次獲取增量數(shù)據(jù)的時長達(dá)到預(yù)設(shè)數(shù)據(jù)獲取周期。

      結(jié)合第一方面,本發(fā)明實施例提供了第一方面的第七種可能的實施方式,其中:所述hbase集群,包括:多個hbase節(jié)點;

      所述多個hbase節(jié)點分別與所述spark集群和所述elasticsearch集群交互;

      所述多個hbase節(jié)點均用于存儲所述spark集群處理后的所述增量數(shù)據(jù);

      當(dāng)所述多個hbase節(jié)點中有hbase節(jié)點出現(xiàn)故障時,故障hbase節(jié)點從正常工作hbase節(jié)點中獲取所述增量數(shù)據(jù)進(jìn)行數(shù)據(jù)恢復(fù)操作。

      第二方面,本發(fā)明實施例還提供一種數(shù)據(jù)處理系統(tǒng),包括上述的數(shù)據(jù)處理平臺和數(shù)據(jù)庫;

      所述數(shù)據(jù)處理平臺,包括:相互連接的spark集群、elasticsearch集群和hbase集群;

      所述數(shù)據(jù)庫與所述spark集群連接;

      所述數(shù)據(jù)庫,用于產(chǎn)生增量數(shù)據(jù)。

      結(jié)合第二方面,本發(fā)明實施例提供了第二方面的第一種可能的實施方式,其中:還包括:商業(yè)智能平臺;

      所述商業(yè)智能平臺,與所述spark集群連接;

      所述商業(yè)智能平臺,用于獲取所述spark集群處理后的增量數(shù)據(jù),并對所述spark集群處理后的增量數(shù)據(jù)進(jìn)行商業(yè)分析。

      本發(fā)明實施例提供的數(shù)據(jù)處理平臺和系統(tǒng),通過數(shù)據(jù)處理平臺中的spark集群對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理,并把處理后的增量數(shù)據(jù)導(dǎo)入elasticsearch集群和hbase集群,與相關(guān)技術(shù)中spark集群會存儲增量數(shù)據(jù)相比,spark集群僅對增量數(shù)據(jù)進(jìn)行分析,無需對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行存儲,減輕了spark集群的存儲壓力。

      為使本發(fā)明的上述目的、特征和優(yōu)點能更明顯易懂,下文特舉較佳實施例,并配合所附附圖,作詳細(xì)說明如下。

      附圖說明

      為了更清楚地說明本發(fā)明實施例的技術(shù)方案,下面將對實施例中所需要使用的附圖作簡單地介紹,應(yīng)當(dāng)理解,以下附圖僅示出了本發(fā)明的某些實施例,因此不應(yīng)被看作是對范圍的限定,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他相關(guān)的附圖。

      圖1示出了本發(fā)明實施例所提供的一種數(shù)據(jù)處理平臺和系統(tǒng)中,應(yīng)用的服務(wù)器的結(jié)構(gòu)示意圖;

      圖2示出了本發(fā)明實施例1所提供的數(shù)據(jù)處理平臺的結(jié)構(gòu)示意圖;

      圖3示出了本發(fā)明實施例1所提供的數(shù)據(jù)處理平臺中,對增量數(shù)據(jù)進(jìn)行合并操作的流程;

      圖4示出了本發(fā)明實施例2所提供的一種數(shù)據(jù)處理系統(tǒng)的結(jié)構(gòu)示意圖。

      圖標(biāo):100-spark集群;102-elasticsearch集群;104-hbase集群;200-服務(wù)器;201-存儲器;202-處理器;203-網(wǎng)絡(luò)模塊;221-操作系統(tǒng);222-服務(wù)模塊;400-數(shù)據(jù)處理平臺;402-數(shù)據(jù)庫;404-商業(yè)智能平臺;4000-spark集群;4002-elasticsearch集群;4004-hbase集群。

      具體實施方式

      為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例。通常在此處附圖中描述和示出的本發(fā)明實施例的組件可以以各種不同的配置來布置和設(shè)計。因此,以下對在附圖中提供的本發(fā)明的實施例的詳細(xì)描述并非旨在限制要求保護(hù)的本發(fā)明的范圍,而是僅僅表示本發(fā)明的選定實施例。基于本發(fā)明的實施例,本領(lǐng)域技術(shù)人員在沒有做出創(chuàng)造性勞動的前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。

      本發(fā)明實施例所提供的數(shù)據(jù)處理平臺和系統(tǒng)可應(yīng)用于如圖1所示的服務(wù)器中。圖1示出了一種可應(yīng)用于本發(fā)明實施例中的服務(wù)器的結(jié)構(gòu)框圖。如圖1所示,服務(wù)器200包括:存儲器201、處理器202以及網(wǎng)絡(luò)模塊203。該服務(wù)器可以用作本實施例中提到的spark節(jié)點、hbase節(jié)點、elasticsearch節(jié)點、數(shù)據(jù)庫和商業(yè)智能平臺。

      存儲器201可用于存儲軟件程序以及模塊,如本發(fā)明實施例中的增量數(shù)據(jù)處理時使用的程序指令/模塊,處理器202通過運行存儲在存儲器201內(nèi)的軟件程序以及模塊,從而執(zhí)行各種功能應(yīng)用以及數(shù)據(jù)處理,即實現(xiàn)本發(fā)明實施例中的數(shù)據(jù)處理方法。存儲器201可包括高速隨機存儲器,還可包括非易失性存儲器,如一個或者多個磁性存儲裝置、閃存、或者其他非易失性固態(tài)存儲器。進(jìn)一步地,上述軟件程序以及模塊還可包括:操作系統(tǒng)221以及服務(wù)模塊222。其中操作系統(tǒng)221,例如可為linux、unix、windows,其可包括各種用于管理系統(tǒng)任務(wù)(例如內(nèi)存管理、存儲設(shè)備控制、電源管理等)的軟件組件和/或驅(qū)動,并可與各種硬件或軟件組件相互通訊,從而提供其他軟件組件的運行環(huán)境。服務(wù)模塊222運行在操作系統(tǒng)221的基礎(chǔ)上,并通過操作系統(tǒng)221的網(wǎng)絡(luò)服務(wù)監(jiān)聽來自網(wǎng)絡(luò)的請求,根據(jù)請求完成相應(yīng)的數(shù)據(jù)處理,并返回處理結(jié)果給客戶端。也就是說,服務(wù)模塊222用于向客戶端提供網(wǎng)絡(luò)服務(wù)。

      網(wǎng)絡(luò)模塊203用于接收以及發(fā)送網(wǎng)絡(luò)信號。上述網(wǎng)絡(luò)信號可包括無線信號或者有線信號。

      可以理解,圖1所示的結(jié)構(gòu)僅為示意,服務(wù)器200還可包括比圖1中所示更多或者更少的組件,或者具有與圖1所示不同的配置。圖1中所示的各組件可以采用硬件、軟件或其組合實現(xiàn)。另外,本發(fā)明實施例中的服務(wù)器還可以包括多個具體不同功能的服務(wù)器。

      在一個實現(xiàn)方式中,服務(wù)器的硬件配置如下:

      中央處理器cpu:

      型號:xeone5-2670v3-12core;

      數(shù)量:2個。

      內(nèi)存:

      配置參數(shù):ddr4rdimm-16gb-2133000khz-1.2v-ecc-2rank(1g*4bit);

      數(shù)量:16個。

      硬盤

      配置參數(shù):1200gb-sas12gb/s-10000rpm-2.5inch-熱插拔;

      數(shù)量:8個。

      磁盤陣列raid卡

      配置參數(shù):sr320bc1gbcache,支持-raid0,1,5,6,10,50,60-支持超級電容+850mmminisas模塊(8盤規(guī)格);

      數(shù)量:1個。

      目前,對增量數(shù)據(jù)進(jìn)行處理時,spark集群會抽取增量數(shù)據(jù)并做同步分析和存儲,完成后spark集群將同步分析處理后的增量數(shù)據(jù)導(dǎo)入hbase;hbase對同步分析處理后的增量數(shù)據(jù)進(jìn)行抽取,并將抽取的數(shù)據(jù)導(dǎo)入elasticsearch,elasticsearch建立導(dǎo)入的增量數(shù)據(jù)的索引,從而完成對增量數(shù)據(jù)的處理。隨著時間的推移,spark集群中存儲的數(shù)據(jù)越來越多,存儲壓力越來越大?;诖?,本申請?zhí)峁┑囊环N數(shù)據(jù)處理平臺和系統(tǒng)。

      需要注意的是,在本發(fā)明的描述中,術(shù)語“中心”、“上”、“下”、“左”、“右”、“豎直”、“水平”、“內(nèi)”、“外”等指示的方位或位置關(guān)系為基于附圖所示的方位或位置關(guān)系,僅是為了便于描述本發(fā)明和簡化描述,而不是指示或暗示所指的裝置或元件必須具有特定的方位、以特定的方位構(gòu)造和操作,因此不能理解為對本發(fā)明的限制。此外,術(shù)語“第一”、“第二”、“第三”僅用于描述目的,而不能理解為指示或暗示相對重要性。

      另外,在本發(fā)明的描述中,除非另有明確的規(guī)定和限定,術(shù)語“安裝”、“相連”、“連接”應(yīng)做廣義理解,例如,可以是固定連接,也可以是可拆卸連接,或一體地連接;可以是機械連接,也可以是電連接;可以是直接相連,也可以通過中間媒介間接相連,可以是兩個元件內(nèi)部的連通。對于本領(lǐng)域的普通技術(shù)人員而言,可以具體情況理解上述術(shù)語在本發(fā)明中的具體含義。

      實施例1

      參見圖2所示的流程示意圖,本實施例提供一種數(shù)據(jù)處理平臺,包括:相互交互的spark集群100、elasticsearch集群102和hbase集群104;

      上述spark集群100,用于監(jiān)測數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù),對上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理,并把處理后的增量數(shù)據(jù)導(dǎo)入elasticsearch集群102和hbase集群104,其中,上述增量數(shù)據(jù)包括:數(shù)據(jù)類型標(biāo)識;

      上述hbase集群104,用于存儲上述spark集群100處理后的上述增量數(shù)據(jù);

      上述elasticsearch集群102,用于將處理后的上述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并。

      其中,上述增量數(shù)據(jù),是指在存量數(shù)據(jù)基礎(chǔ)上,符合預(yù)設(shè)的數(shù)據(jù)抽取條件的、由數(shù)據(jù)庫產(chǎn)生的源數(shù)據(jù)。增量數(shù)據(jù)除了具有數(shù)據(jù)類型標(biāo)識和數(shù)據(jù)本身之外,還攜帶有生成時間信息。

      上述數(shù)據(jù)抽取條件,包括以下條件中的至少一個:上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)數(shù)量達(dá)到預(yù)設(shè)數(shù)量閾值;上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)占用的存儲空間達(dá)到預(yù)設(shè)存儲空間閾值;距離上次獲取增量數(shù)據(jù)的時長達(dá)到預(yù)設(shè)數(shù)據(jù)獲取周期。

      源數(shù)據(jù),是指數(shù)據(jù)庫生成的數(shù)據(jù)。

      數(shù)據(jù)類型標(biāo)識,用于elasticsearch集群102和hbase集群104對增量數(shù)據(jù)進(jìn)行識別,從而根據(jù)數(shù)據(jù)類型標(biāo)識對應(yīng)的數(shù)據(jù)類型,對增量數(shù)據(jù)進(jìn)行分類存儲和索引。

      數(shù)據(jù)庫可以根據(jù)不同數(shù)據(jù)類型,產(chǎn)生針對不同類型應(yīng)用或者不同應(yīng)用場景的源數(shù)據(jù)。

      數(shù)據(jù)類型標(biāo)識,是數(shù)據(jù)庫在生成源數(shù)據(jù)時,根據(jù)所生成源數(shù)據(jù)的數(shù)據(jù)名稱進(jìn)行哈希計算得到的。不同類型的源數(shù)據(jù)都具有唯一的數(shù)據(jù)名稱,所以通過哈希計算得到的數(shù)據(jù)類型標(biāo)識也是唯一的。

      上述hbase集群104,除了對增量數(shù)據(jù)均進(jìn)行存儲外,還存儲有存量數(shù)據(jù)。上述存量數(shù)據(jù),就是hbase集群104在獲取本次增量數(shù)據(jù)之前獲取并存儲的數(shù)據(jù)。

      上述elasticsearch集群102,主要的作用是使用戶對hbase集群104中存儲的數(shù)據(jù)進(jìn)行檢索。所以,elasticsearch集群102預(yù)先建立有索引文件,并存儲有與索引文件對應(yīng)的快速查詢數(shù)據(jù)。從而在用戶搜索一些搜索頻率較高的數(shù)據(jù)時,無需elasticsearch集群102到hbase集群104中進(jìn)行遍歷查詢,就可以在確定數(shù)據(jù)的索引文件后,根據(jù)索引文件的指示直接把存儲的快速查詢數(shù)據(jù)返回給用戶,提高了查詢效率。

      在elasticsearch集群102中,一個索引文件對應(yīng)一個類型的快速查詢數(shù)據(jù)。用戶可以根據(jù)應(yīng)用場景的不同,在elasticsearch集群102中預(yù)先設(shè)置該應(yīng)用場景下應(yīng)用的不同類型數(shù)據(jù)的索引文件。而且,用戶還可以對elasticsearch集群102中設(shè)置的索引文件進(jìn)行增加和刪除,使用戶可以根據(jù)自己的需求,對快速查詢數(shù)據(jù)進(jìn)行更改,進(jìn)一步提高了查詢效率。

      上述快速查詢數(shù)據(jù),為用戶經(jīng)常搜索的數(shù)據(jù)??焖俨樵償?shù)據(jù)的設(shè)置,使得elasticsearch集群102在確定用戶搜索這些數(shù)據(jù)時,無需到hbase集群104中進(jìn)行遍歷查詢,根據(jù)索引文件的指示把相應(yīng)的快速查詢數(shù)據(jù)返回給用戶,提高了查詢效率。

      具體地,上述spark集群100,用于監(jiān)測數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù),對上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理包括以下步驟(1)至步驟(4):

      (1)監(jiān)測上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù);

      (2)當(dāng)上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)滿足預(yù)設(shè)的數(shù)據(jù)抽取條件時,從上述數(shù)據(jù)庫獲取增量數(shù)據(jù);

      (3)對獲取到的上述增量數(shù)據(jù)進(jìn)行提取、轉(zhuǎn)換和加載處理;

      (4)針對實際需求對提取、轉(zhuǎn)換和加載處理后的增量數(shù)據(jù)做簡單數(shù)據(jù)分析、數(shù)理統(tǒng)計和數(shù)據(jù)挖掘。

      其中,上述數(shù)據(jù)抽取條件,包括以下條件中的至少一個:上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)數(shù)量達(dá)到預(yù)設(shè)數(shù)量閾值;上述數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)占用的存儲空間達(dá)到預(yù)設(shè)存儲空間閾值;距離上次獲取增量數(shù)據(jù)的時長達(dá)到預(yù)設(shè)數(shù)據(jù)獲取周期。

      在上述步驟(2)中,上述spark集群100可以分批從數(shù)據(jù)庫獲取增量數(shù)據(jù)。

      在上述步驟(3)中,上述spark集群100對獲取的增量數(shù)據(jù)進(jìn)行etl處理,主要為清理增量數(shù)據(jù)中的無用信息,保證增量數(shù)據(jù)的正確性、完整性、一致性、有效性和時效性。

      在上述步驟(4)中,可以采用現(xiàn)有任何簡單數(shù)據(jù)分析、數(shù)理統(tǒng)計和數(shù)據(jù)挖掘的操作對增量數(shù)據(jù)進(jìn)行處理,這里不再一一贅述。

      綜上所述,本實施例提供的數(shù)據(jù)處理平臺,通過平臺中的spark集群對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理,并把處理后的增量數(shù)據(jù)導(dǎo)入elasticsearch集群和hbase集群,與相關(guān)技術(shù)中spark集群會存儲增量數(shù)據(jù)相比,spark集群僅對增量數(shù)據(jù)進(jìn)行分析,無需對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行存儲,減輕了spark集群的存儲壓力。

      相關(guān)技術(shù)中,若elasticsearch在運行過程中出現(xiàn)故障,由于目前的大數(shù)據(jù)存儲系統(tǒng)沒有對故障elasticsearch中的增量數(shù)據(jù)提供容錯和校驗機制,造成無法對故障elasticsearch中的增量數(shù)據(jù)進(jìn)行恢復(fù)的問題。所以,為了對故障elasticsearch中的增量數(shù)據(jù)進(jìn)行恢復(fù),本實施例提出的數(shù)據(jù)處理平臺中的上述elasticsearch集群,包括:多個elasticsearch節(jié)點;

      上述多個elasticsearch節(jié)點分別與上述spark集群和上述hbase集群交互;

      上述多個elasticsearch節(jié)點均用于將處理后的上述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并;

      當(dāng)上述多個elasticsearch節(jié)點中有elasticsearch節(jié)點出現(xiàn)故障時,故障elasticsearch節(jié)點獲取上述hbase集群中存儲的上述增量數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù)。

      其中,多個elasticsearch節(jié)點分別用于合并以及存儲不同業(yè)務(wù)類型的增量數(shù)據(jù)。elasticsearch節(jié)點相當(dāng)于數(shù)據(jù)處理平臺的快速查找機構(gòu),可以在用戶查詢時向用戶快速反饋查詢結(jié)果。

      elasticsearch是一個即時的分布式查詢和分析引擎,用輕微的延遲去處理增量數(shù)據(jù)??梢詫崿F(xiàn)分布式文件存儲,并將每一個字段都編入索引,使其可以被查詢;可以實現(xiàn)全文搜索、結(jié)構(gòu)化搜索以及實時分析;可以擴展到上百臺服務(wù)器,處理pb級別的結(jié)構(gòu)化或者非結(jié)構(gòu)化數(shù)據(jù)。

      具體地,上述故障elasticsearch節(jié)點獲取上述hbase集群中存儲的上述增量數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù),包括以下步驟(1)至步驟(4):

      (1)上述故障elasticsearch節(jié)點向上述elasticsearch集群中其他elasticsearch節(jié)點發(fā)送第一增量數(shù)據(jù)恢復(fù)指令,上述第一增量數(shù)據(jù)恢復(fù)指令中攜帶有數(shù)據(jù)恢復(fù)時間段;

      (2)當(dāng)在預(yù)設(shè)的恢復(fù)數(shù)據(jù)獲取時長內(nèi)收到其他elasticsearch節(jié)點返回的上述數(shù)據(jù)恢復(fù)時間段內(nèi)增量數(shù)據(jù)的恢復(fù)數(shù)據(jù)時,上述故障elasticsearch節(jié)點通過增量數(shù)據(jù)的恢復(fù)數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù);

      (3)當(dāng)在預(yù)設(shè)的恢復(fù)數(shù)據(jù)獲取時長內(nèi)未收到其他elasticsearch節(jié)點返回的上述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)恢復(fù)數(shù)據(jù)時,向上述hbase集群發(fā)送第二增量數(shù)據(jù)恢復(fù)指令,上述第二增量數(shù)據(jù)恢復(fù)指令中攜帶有數(shù)據(jù)恢復(fù)時間段和上述故障elasticsearch節(jié)點的標(biāo)識;

      (4)上述故障elasticsearch節(jié)點獲取上述hbase集群返回的增量恢復(fù)數(shù)據(jù),并通過上述增量恢復(fù)數(shù)據(jù)進(jìn)行增量數(shù)據(jù)恢復(fù)。

      在上述步驟(1)中,數(shù)據(jù)恢復(fù)時間段包括數(shù)據(jù)恢復(fù)起始時間點和終止時間點。該數(shù)據(jù)恢復(fù)時間段由故障elasticsearch節(jié)點根據(jù)需要恢復(fù)的增量信息的生成時間信息確定。

      在上述步驟(2)中,故障elasticsearch節(jié)點在獲取到其他elasticsearch節(jié)點的增量數(shù)據(jù)恢復(fù)數(shù)據(jù)時,直接通過獲取到的增量數(shù)據(jù)恢復(fù)數(shù)據(jù)對故障elasticsearch節(jié)點中需要恢復(fù)的增量數(shù)據(jù)進(jìn)行更新,就可以完成增量數(shù)據(jù)恢復(fù)操作。

      上述步驟(4)中,具體包括以下步驟(41)至步驟(46):

      (41)上述故障elasticsearch節(jié)點獲取上述hbase集群返回的增量恢復(fù)數(shù)據(jù),上述增量恢復(fù)數(shù)據(jù)攜帶有數(shù)據(jù)類型標(biāo)識;

      (42)上述故障elasticsearch節(jié)點將上述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)刪除;

      (43)上述故障elasticsearch節(jié)點獲取預(yù)存的不同類型數(shù)據(jù)的索引文件,上述索引文件包括:索引標(biāo)識;

      (44)當(dāng)具有未查詢的索引標(biāo)識時,上述故障elasticsearch節(jié)點根據(jù)索引文件中的索引標(biāo)識,查詢出具有與上述索引標(biāo)識相同的數(shù)據(jù)類型標(biāo)識的增量恢復(fù)數(shù)據(jù);

      (45)上述故障elasticsearch節(jié)點根據(jù)上述索引標(biāo)識對應(yīng)的索引文件,確定查詢出的增量恢復(fù)數(shù)據(jù)對應(yīng)類型數(shù)據(jù)的存儲文件;

      (46)上述故障elasticsearch節(jié)點將查詢出的增量恢復(fù)數(shù)據(jù)合并到確定出的存儲文件中。

      在上述步驟(41)中,hbase集群返回的增量恢復(fù)數(shù)據(jù),是由hbase集群中的任一hbase集群節(jié)點所確定的增量恢復(fù)數(shù)據(jù)。

      在上述步驟(43)中,可以根據(jù)應(yīng)用場景的不同,在elasticsearch集群的各個節(jié)點中設(shè)置針對不同應(yīng)用場景的數(shù)據(jù)類型的索引文件。

      不同類型數(shù)據(jù)的索引文件,用于預(yù)設(shè)在elasticsearch集群中,使elasticsearch集群對存儲的不同類型數(shù)據(jù)進(jìn)行分類索引。

      上述索引標(biāo)識,由elasticsearch集群對用戶預(yù)設(shè)的數(shù)據(jù)名稱進(jìn)行哈希算法得到的,存儲在索引文件中,可以用于查詢使用。

      當(dāng)用戶查詢時,上述elasticsearch集群執(zhí)行以下具體步驟(431)至步驟(435):

      (431)elasticsearch集群獲取用戶輸入的想要查詢的數(shù)據(jù)名稱;

      (432)elasticsearch集群對用戶輸入的數(shù)據(jù)名稱進(jìn)行哈希計算,得到數(shù)據(jù)名稱哈希值;

      (433)elasticsearch集群通過數(shù)據(jù)名稱哈希值查詢出與數(shù)據(jù)名稱哈希值相同的索引標(biāo)識,并得到具有該哈希值的索引文件;

      (434)elasticsearch集群將該索引文件指示的存儲文件打開并取出存儲文件中的數(shù)據(jù);

      (435)elasticsearch集群將取出的數(shù)據(jù)返回給用戶。

      通過以上步驟(431)至步驟(435)的描述,在索引文件設(shè)置索引標(biāo)識,使得查詢的過程中可以通過查詢條件就可以確定用戶想要查詢的數(shù)據(jù)的索引文件,相當(dāng)于建立了查詢條件到具體查詢內(nèi)容的映射,方便用戶對數(shù)據(jù)的查詢。

      在上述步驟(44)中,elasticsearch節(jié)點通過遍歷的方式,查詢出具有與上述索引標(biāo)識相同的數(shù)據(jù)類型標(biāo)識的增量恢復(fù)數(shù)據(jù)。

      在上述步驟(46)中,elasticsearch節(jié)點采用現(xiàn)有的任何字符串拼接技術(shù)將查詢出的增量恢復(fù)數(shù)據(jù)合并到確定出的存儲文件中,這里不再贅述。

      相應(yīng)的,當(dāng)獲取到第二增量數(shù)據(jù)恢復(fù)指令時,上述hbase集群,具體執(zhí)行以下步驟(1)至步驟(2):

      (1)查詢出上述第二增量數(shù)據(jù)恢復(fù)指令中攜帶的上述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù),將上述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)確定為上述增量恢復(fù)數(shù)據(jù);

      (2)向上述故障elasticsearch節(jié)點的標(biāo)識指示的故障elasticsearch節(jié)點返回上述增量恢復(fù)數(shù)據(jù)。

      在上述步驟(1)中,上述hbase集群通過設(shè)置的協(xié)處理器調(diào)用預(yù)設(shè)的增量數(shù)據(jù)過濾器,將上述數(shù)據(jù)恢復(fù)時間段內(nèi)的增量數(shù)據(jù)查詢出來。

      上述步驟(1)至步驟(2),可以通過hbase集群中的任意hbase節(jié)點執(zhí)行。

      通過以上的描述可以看出,在elasticsearch出現(xiàn)故障時,數(shù)據(jù)處理平臺對故障elasticsearch中的增量數(shù)據(jù)提供容錯和校驗機制,無需spark集群再次從數(shù)據(jù)庫中獲取需要恢復(fù)的增量數(shù)據(jù),使故障elasticsearch節(jié)點獲取hbase集群中存儲的增量數(shù)據(jù)就可以進(jìn)行增量數(shù)據(jù)恢復(fù),數(shù)據(jù)恢復(fù)效率高。

      具體地,參見圖3所示的elasticsearch節(jié)點對增量數(shù)據(jù)進(jìn)行合并操作的流程,多個elasticsearch節(jié)點均用于將處理后的上述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并,包括以下具體步驟:

      步驟300、elasticsearch節(jié)點獲取預(yù)存的不同類型數(shù)據(jù)的索引文件,上述索引文件包括:索引標(biāo)識;

      步驟302、當(dāng)具有未查詢的索引標(biāo)識時,上述elasticsearch節(jié)點根據(jù)索引文件中的索引標(biāo)識,查詢出具有與上述索引標(biāo)識相同的數(shù)據(jù)類型標(biāo)識的增量數(shù)據(jù);

      步驟304、上述elasticsearch節(jié)點根據(jù)上述索引標(biāo)識對應(yīng)的索引文件,確定查詢出的增量數(shù)據(jù)對應(yīng)類型數(shù)據(jù)的存儲文件;

      步驟306、上述elasticsearch節(jié)點將查詢出的增量數(shù)據(jù)合并到確定出的存儲文件中,將處理后的上述增量數(shù)據(jù)與快速查詢數(shù)據(jù)合并。

      在上述步驟306中,elasticsearch節(jié)點將查詢出的增量恢復(fù)數(shù)據(jù)合并到確定出的存儲文件中的過程與上述步驟(46)類似,這里不再贅述。

      在一個實施方式中,hbase集群不僅可以對故障elasticsearch中的增量數(shù)據(jù)進(jìn)行恢復(fù),還可以對自身節(jié)點出現(xiàn)的故障進(jìn)行數(shù)據(jù)恢復(fù)。上述hbase集群,包括:多個hbase節(jié)點;

      上述多個hbase節(jié)點分別與上述spark集群和上述elasticsearch集群交互;

      上述多個hbase節(jié)點均用于存儲上述spark集群處理后的上述增量數(shù)據(jù);

      當(dāng)上述多個hbase節(jié)點中有hbase節(jié)點出現(xiàn)故障時,故障hbase節(jié)點從正常工作hbase節(jié)點中獲取上述增量數(shù)據(jù)進(jìn)行數(shù)據(jù)恢復(fù)操作。

      hbase節(jié)點作為高性能、列存儲、可伸縮、實時讀寫的分布式數(shù)據(jù)庫,可支持集群存儲海量數(shù)據(jù),極大的彌補了傳統(tǒng)數(shù)據(jù)庫的不足。hbase節(jié)點在主鍵上建立了類b+樹索引,可以高效的實現(xiàn)基于主鍵的快速查詢。然而由于hbase缺少非主鍵索引能力,在接受以非主鍵查詢請求時,需要對全表進(jìn)行掃描,導(dǎo)致查詢速度較慢,難以適應(yīng)大數(shù)據(jù)時空數(shù)據(jù)存儲和高效率的增量數(shù)據(jù)插入在速度上對應(yīng)的即時查詢。所以目前的大數(shù)據(jù)存儲系統(tǒng),需要將hbase與elasticsearch配合使用。以體現(xiàn)出hbase和elasticsearch兩種不同檢索方法的優(yōu)勢。

      多個hbase節(jié)點均存儲上述spark集群處理后的上述增量數(shù)據(jù)的過程包括:在多個hbase節(jié)點中的每個hbase節(jié)點建表,接下來需要設(shè)計相應(yīng)的rowkey從而滿足相應(yīng)的業(yè)務(wù)需求。大數(shù)據(jù)平臺處理后的增量數(shù)據(jù)同一rowkey可能存在多條記錄,所以需要將相同rowkey下的數(shù)據(jù)合并后將結(jié)果flush到每個hbase節(jié)點中。

      上述故障hbase節(jié)點從正常工作hbase節(jié)點中獲取上述增量數(shù)據(jù)進(jìn)行數(shù)據(jù)恢復(fù)操作的過程可以采用現(xiàn)有的任何數(shù)據(jù)恢復(fù)方法進(jìn)行數(shù)據(jù)恢復(fù),這里不再一一贅述。

      通過以上的描述可以看出,hbase節(jié)點發(fā)生故障時,無需spark集群再次從數(shù)據(jù)庫中獲取需要恢復(fù)的增量數(shù)據(jù),hbase其他節(jié)點可以保護(hù)數(shù)據(jù),在保證數(shù)據(jù)安全性、容災(zāi)性的同時對故障hbase節(jié)點的數(shù)據(jù)進(jìn)行恢復(fù),進(jìn)一步提高了數(shù)據(jù)恢復(fù)效率。

      實施例2

      參見圖4,本實施例提供一種數(shù)據(jù)處理系統(tǒng),包括上述實施例1中描述的數(shù)據(jù)處理平臺400和數(shù)據(jù)庫402;

      上述數(shù)據(jù)處理平臺400,包括:相互交互的spark集群4000、elasticsearch集群4002和hbase集群4004;

      上述數(shù)據(jù)庫402與上述spark集群4000連接;

      上述數(shù)據(jù)庫402,用于產(chǎn)生增量數(shù)據(jù)。

      在一個實施方式中,上述數(shù)據(jù)處理系統(tǒng),還包括商業(yè)智能(businessintelligence,bi)平臺404;

      上述bi平臺404,與上述spark集群4000連接;

      上述bi平臺404,用于獲取上述spark集群4000處理后的增量數(shù)據(jù),并對獲取到的增量數(shù)據(jù)進(jìn)行商業(yè)分析。

      上述bi平臺404,可以采用現(xiàn)有的任何使企業(yè)迅速收集、管理和分析數(shù)據(jù),并將這些數(shù)據(jù)轉(zhuǎn)化為有用的信息,然后分發(fā)到企業(yè)各處的平臺技術(shù),這里不再贅述。

      綜上所述,本實施例提供的數(shù)據(jù)處理系統(tǒng),通過數(shù)據(jù)處理平臺中的spark集群對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行處理,并把處理后的增量數(shù)據(jù)導(dǎo)入elasticsearch集群和hbase集群,與相關(guān)技術(shù)中spark集群會存儲增量數(shù)據(jù)相比,spark集群僅對增量數(shù)據(jù)進(jìn)行分析,無需對數(shù)據(jù)庫產(chǎn)生的增量數(shù)據(jù)進(jìn)行存儲,減輕了spark集群的存儲壓力。

      以上所述,僅為本發(fā)明的具體實施方式,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)所述以權(quán)利要求的保護(hù)范圍為準(zhǔn)。

      當(dāng)前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1