專利名稱:海量數(shù)據(jù)信息索引系統(tǒng)和索引構(gòu)建方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種數(shù)據(jù)索引系統(tǒng)和構(gòu)建方法,尤其是一種海量數(shù)據(jù)信息索引系統(tǒng)和索引構(gòu)建方法。
背景技術(shù):
隨著技術(shù)的進(jìn)步和發(fā)展,數(shù)據(jù)量越來越大,尤其是云概念的出現(xiàn),集中的數(shù)據(jù)量更加龐大。為了在浩如煙海的數(shù)據(jù)中快速找到需要的特定數(shù)據(jù),索引有著重要的意義。中國專利文獻(xiàn)CN101576915B公開了一種分布式B+樹索引系統(tǒng)及構(gòu)建方法,具體,包括主服務(wù)器、事務(wù)服務(wù)器機(jī)群和索引服務(wù)機(jī)群和版本控制服務(wù)器;事務(wù)服務(wù)器機(jī)群包括 多個事務(wù)服務(wù)器,索引服務(wù)器機(jī)群包括多個索引服務(wù)器;主服務(wù)器負(fù)責(zé)管理META數(shù)據(jù),并對索引服務(wù)器機(jī)群進(jìn)行負(fù)載平衡調(diào)度;事務(wù)服務(wù)器機(jī)群負(fù)責(zé)對分布式文件系統(tǒng)索引數(shù)據(jù)訪問的事務(wù)控制;索引服務(wù)器機(jī)群負(fù)責(zé)管理和讀寫分布式文件系統(tǒng)的索引數(shù)據(jù),有效地實(shí)現(xiàn)了并發(fā)環(huán)境下索引數(shù)據(jù)的事務(wù)功能。上述專利文獻(xiàn)中公開的索引技術(shù)只是將索引建立到一個或者多個索引庫服務(wù)器中,建立索引和檢索索引都在一個或者多個索引服務(wù)器中執(zhí)行。建立索引任務(wù)和檢索索引任務(wù)在一臺或者多臺的索引庫中發(fā)生,可能會導(dǎo)致?lián)屬Y源的問題,從而導(dǎo)致索引服務(wù)器資源不足,影響檢索或者建立索引的效率。而且,檢索的過程一旦出現(xiàn)問題,也無法判斷實(shí)在檢索的具體哪個環(huán)節(jié)出了問題,修復(fù)難度大。
發(fā)明內(nèi)容
為此,本發(fā)明所要解決的是索引功能在一個或者多個索引服務(wù)器中執(zhí)行帶來的檢索服務(wù)器資源不足和修復(fù)難度大的技術(shù)問題,提供一種海量數(shù)據(jù)信息索引系統(tǒng)和索引構(gòu)建方法。為解決上述技術(shù)問題,本發(fā)明采用的技術(shù)方案如下—種海量數(shù)據(jù)信息索引系統(tǒng),包括,數(shù)據(jù)分發(fā)服務(wù)器機(jī)群,包括多臺數(shù)據(jù)分發(fā)服務(wù)器,用于將需要創(chuàng)建的數(shù)據(jù)拆分并分發(fā);創(chuàng)建數(shù)據(jù)索引服務(wù)器機(jī)群,包括多臺創(chuàng)建數(shù)據(jù)索引服務(wù)器,各所述創(chuàng)建數(shù)據(jù)索引服務(wù)器分別接收所述數(shù)據(jù)分發(fā)服務(wù)器分發(fā)的數(shù)據(jù)并為所述數(shù)據(jù)創(chuàng)建索引;檢索服務(wù)器機(jī)群,包括多臺檢索服務(wù)器,接收所述創(chuàng)建數(shù)據(jù)索引服務(wù)器創(chuàng)建的所述索引并根據(jù)檢索條件對數(shù)據(jù)索引進(jìn)行檢索; 合并檢索結(jié)果服務(wù)器機(jī)群,包括多臺合并檢索結(jié)果服務(wù)器,接收檢索條件,接收并合并所述檢索服務(wù)器檢出的結(jié)果。每個所述檢索服務(wù)器均包括一個備份區(qū),用于備份該檢索服務(wù)器檢索出的數(shù)據(jù)。還包括備份數(shù)據(jù)服務(wù)器機(jī)群,包括多臺備份數(shù)據(jù)服務(wù)器,接收并備份所述數(shù)據(jù)分發(fā)服務(wù)器、所述創(chuàng)建數(shù)據(jù)索引服務(wù)器、所述檢索服務(wù)器和所述合并檢索結(jié)果服務(wù)器上的數(shù)據(jù)。所述創(chuàng)建數(shù)據(jù)索引服務(wù)器創(chuàng)建的索引類型為倒排索引。所述數(shù)據(jù)分發(fā)服務(wù)器存儲有一個實(shí)現(xiàn)數(shù)據(jù)分發(fā)功能的分發(fā)文件,所述分發(fā)文件記錄有所有創(chuàng)建數(shù)據(jù)索引服務(wù)器、檢索服務(wù)器和合并檢索結(jié)果服務(wù)器的位置和信息。所述分發(fā)文件為XML文件。同時,提供一種海量數(shù)據(jù)信息索引的構(gòu)建方法,包括如下步驟①將檢索用服務(wù)器按照功能劃分為數(shù)據(jù)分發(fā)服務(wù)器、創(chuàng)建數(shù)據(jù)索引服務(wù)器、用于檢索服務(wù)器和用于合并檢索結(jié)果服務(wù)器,按照檢索的功能的計算量配備完成每一個功能的服務(wù)器數(shù)量;
②將需要建立索引的數(shù)據(jù)以文件的形式放置在數(shù)據(jù)分發(fā)服務(wù)器上;運(yùn)行建立索引腳本,按照創(chuàng)建數(shù)據(jù)索引服務(wù)器的數(shù)量將文件拆分,并分發(fā)到各個創(chuàng)建數(shù)據(jù)索引服務(wù)器;③創(chuàng)建數(shù)據(jù)索引服務(wù)器接收文件,并為該文件建立索引,并和之前建立過的索引進(jìn)行合并,最后將新建的索引傳輸?shù)綑z索服務(wù)器上;④檢索條件發(fā)送到合并檢索結(jié)果服務(wù)器;⑤檢索結(jié)果服務(wù)器將檢索條件發(fā)送到所有檢索服務(wù)器上;⑥檢索服務(wù)器接收檢索條件并對已建立的索引進(jìn)行檢索,將檢索結(jié)果返回給合并檢索結(jié)果服務(wù)器;⑦合并檢索結(jié)果服務(wù)器接收到所有檢索結(jié)果數(shù)據(jù)后進(jìn)行數(shù)據(jù)合并,并將合并后的檢索結(jié)果返回給檢索用戶。所述步驟中還包括備份各個步驟中產(chǎn)生的數(shù)據(jù)的步驟。所述步驟③中創(chuàng)建的索引為倒排索引。所述步驟①中通過在數(shù)據(jù)分發(fā)服務(wù)器上存儲有一個記錄數(shù)據(jù)分發(fā)服務(wù)器、創(chuàng)建數(shù)據(jù)索引服務(wù)器、檢索服務(wù)器和合并檢索結(jié)果服務(wù)器位置信息的分發(fā)文件,實(shí)現(xiàn)各服務(wù)器功能的劃分。分發(fā)文件為XML文件,執(zhí)行過程中,XML文件通過解析,將各個功能的信息通過SSH技術(shù)分發(fā)到XML文件上指定的服務(wù)器上。所述各步驟之間通過http協(xié)議實(shí)現(xiàn)傳輸。本發(fā)明的上述技術(shù)方案相比現(xiàn)有技術(shù)具有以下優(yōu)點(diǎn)本發(fā)明的海量數(shù)據(jù)信息索引系統(tǒng)和方法,根據(jù)索引過程中需要完成的功能對服務(wù)器進(jìn)行分配,配置不同的服務(wù)器用于完成不同檢索功能,避免搶資源;同時,使得每臺服務(wù)器的職責(zé)更加明確;可根據(jù)不同功能的特性對不同的服務(wù)器機(jī)群進(jìn)行特定配置,便于提高檢索效率;檢索的過程中一旦出錯,可根據(jù)出錯原因快速定位出出錯的服務(wù)器,便于維修維護(hù),降低維修和使用成本。
為了使本發(fā)明的內(nèi)容更容易被清楚的理解,下面根據(jù)本發(fā)明的具體實(shí)施例并結(jié)合附圖,對本發(fā)明作進(jìn)一步詳細(xì)的說明,其中圖I為發(fā)明一個實(shí)施例的海量數(shù)據(jù)信息索引系統(tǒng)的結(jié)構(gòu)示意其中,附圖標(biāo)記表示為I-數(shù)據(jù)分發(fā)服務(wù)器,2-創(chuàng)建數(shù)據(jù)索引服務(wù)器,3-檢索服務(wù)器,4-合并檢索結(jié)果服務(wù)器。
具體實(shí)施例方式參見圖I所示為本發(fā)明一個實(shí)施例的海量數(shù)據(jù)信息索引系統(tǒng),包括,數(shù)據(jù)分發(fā)服務(wù)器機(jī)群,包括兩臺數(shù)據(jù)分發(fā)服務(wù)器1,用于將需要創(chuàng)建的數(shù)據(jù)拆分并分發(fā)給創(chuàng)建數(shù)據(jù)索引服務(wù)器2 ;創(chuàng)建數(shù)據(jù)索引服務(wù)器機(jī)群,包括四臺創(chuàng)建數(shù)據(jù)索引服務(wù)器2,接收所述數(shù)據(jù)分發(fā)服務(wù)器I分發(fā)的數(shù)據(jù)并為所述數(shù)據(jù)創(chuàng)建倒排索引;其中,倒排索引源于實(shí)際應(yīng)用中需要根據(jù)屬性的值來查找記錄,這種索引表中的每一項(xiàng)都包括一個屬性值和具有該屬性值的各記錄地址,由于不是由記錄來確定屬性值,而是由屬性那個值來確定記錄的位置,因而為倒排索弓I ;檢索服務(wù)器機(jī)群,包括四臺檢索服務(wù)器3,接收所述創(chuàng)建數(shù)據(jù)索引服務(wù)器2創(chuàng)建的 所述數(shù)據(jù)索引并根據(jù)檢索條件對數(shù)據(jù)索引進(jìn)行檢索,每臺所述檢索服務(wù)器3均包括一個備份區(qū),用于存儲該檢索服務(wù)器3檢索出的數(shù)據(jù);合并檢索結(jié)果服務(wù)器機(jī)群,包括兩臺合并檢索結(jié)果服務(wù)器4,接收所述檢索服務(wù)器3索出的結(jié)果并對所述結(jié)果進(jìn)行合并。作為上述實(shí)施例的一個變形,該系統(tǒng)還包括備份數(shù)據(jù)服務(wù)器機(jī)群,其包括兩臺備份數(shù)據(jù)服務(wù)器,接收所述數(shù)據(jù)分發(fā)服務(wù)器I、所述創(chuàng)建數(shù)據(jù)索引服務(wù)器2、所述檢索服務(wù)器3和所述合并檢索結(jié)果服務(wù)器4上的數(shù)據(jù)并備份,所述檢索服務(wù)器3不具備備份功能,其他同上述實(shí)施例;同樣能實(shí)現(xiàn)本發(fā)明的目的,屬于本發(fā)明的保護(hù)范圍。上述實(shí)施例中的XML文件可以為YAML (YAML Ain’t Markup Language,意為YAML不是一種標(biāo)記語言)文件或者JSON (英文全稱為JavaScriptObject Notation,意為數(shù)據(jù)交換語目)文件。本發(fā)明上述實(shí)施例的海量數(shù)據(jù)信息索引系統(tǒng),可根據(jù)完成不同功能的需要的工作量的多少配備相應(yīng)的服務(wù)器數(shù)量,保證資源利用最大化,便于提高檢索效率;同時,不同功能由不同的服務(wù)器完成也避免了搶資源現(xiàn)象;檢索的過程中一旦出錯,可根據(jù)出錯原因快速定位出出錯的服務(wù)器,便于維修維護(hù),降低維修和使用成本;而且,本發(fā)明中上述系統(tǒng)可根據(jù)檢索的工作量動態(tài)增加相應(yīng)功能的服務(wù)器,動態(tài)擴(kuò)展性強(qiáng)。同時本發(fā)明提供一種上述實(shí)施例的海量數(shù)據(jù)信息索引的構(gòu)建方法,其包括如下步驟①在數(shù)據(jù)分發(fā)服務(wù)器I上存儲有一個記錄數(shù)據(jù)分發(fā)服務(wù)器I、創(chuàng)建數(shù)據(jù)索引服務(wù)器2、檢索服務(wù)器3和合并檢索結(jié)果服務(wù)器4位置信息的XML文件,將檢索用服務(wù)器按照功能劃分為數(shù)據(jù)分發(fā)服務(wù)器I、創(chuàng)建數(shù)據(jù)索引服務(wù)器2、用于檢索服務(wù)器3和用于合并檢索結(jié)果服務(wù)器4,按照檢索的功能的計算量配備完成每一個功能的服務(wù)器數(shù)量;本實(shí)施例中,包括兩臺數(shù)據(jù)分發(fā)服務(wù)器I、四臺創(chuàng)建數(shù)據(jù)索引服務(wù)器2、四臺檢索服務(wù)器3、兩臺合并檢索結(jié)果服務(wù)器4和兩臺備份數(shù)據(jù)服務(wù)器;執(zhí)行過程中,XML文件通過解析,將各個功能的信息通過SSH技術(shù)分發(fā)到XML文件上指定的服務(wù)器上;其中,XML,英文全稱為Extensible MarkupLanguage,意為可擴(kuò)展標(biāo)記語言,SSH,英文全稱為Secure Shell意為建立在應(yīng)用層和傳輸層基礎(chǔ)上的安全協(xié)議;上述SSH可為現(xiàn)行任何一種傳輸協(xié)議代替,比如http傳輸協(xié)議,選用SSH相對簡單、安全;②將需要建立索引的數(shù)據(jù)以文件的形式放置在數(shù)據(jù)分發(fā)服務(wù)器I上;運(yùn)行建立索引腳本,按照創(chuàng)建數(shù)據(jù)索引服務(wù)器2的數(shù)量將文件分開,并將每條數(shù)據(jù)通過“http”請求的方式分發(fā)到各個創(chuàng)建數(shù)據(jù)索引服務(wù)器2 ;其中,http,英文全稱為hypertext transportprotocol,意為超文本傳送協(xié)議;其中,需要創(chuàng)建索引的數(shù)據(jù)進(jìn)行格式化處理,具體是在數(shù)據(jù)分發(fā)服務(wù)器I上定義一個數(shù)據(jù)的構(gòu)架,定義需要創(chuàng)建索引的數(shù)據(jù)的列信息(包括名稱和類型),這其中包括一個ID屬性,以區(qū)分每 一個記錄;上述http也可用現(xiàn)有技術(shù)中的任何一種傳輸協(xié)議代替,比如ftp ;其中,ftp,英文全稱為File TransferProtocol,意為文件傳輸協(xié)議;③創(chuàng)建數(shù)據(jù)索引服務(wù)器2接收文件,并為該文件建立倒排索引,并和之前建立過的索引進(jìn)行合并,最后將新建的索引通過“http”請求的方式傳輸?shù)綑z索服務(wù)器3上;④檢索條件發(fā)送到合并檢索結(jié)果服務(wù)器4,其中,需要檢索的數(shù)據(jù)必須是格式化數(shù)據(jù);⑤合并檢索結(jié)果服務(wù)器4將檢索條件通過“http”請求的方式發(fā)送到所有檢索服務(wù)器3上;⑥檢索服務(wù)器3接收檢索條件并對已建立的索引進(jìn)行檢索,將檢索結(jié)果返回給合并檢索結(jié)果服務(wù)器4,同時將檢索結(jié)果在檢索服務(wù)器3上備份;⑦合并檢索結(jié)果服務(wù)器4接收到所有“http”響應(yīng)的檢索結(jié)果數(shù)據(jù)后進(jìn)行數(shù)據(jù)合并,并將合并后的檢索結(jié)果返回給檢索用戶。作為上述方法的一個變形,任何一個服務(wù)器上的數(shù)據(jù)在發(fā)生改變時,均將發(fā)生改變的索引數(shù)據(jù),通過“http”請求的方式傳輸?shù)絺浞莘?wù)器上,以防止數(shù)據(jù)丟失。下面結(jié)合一個具體的實(shí)施例對本發(fā)明的海量數(shù)據(jù)信息索引系統(tǒng)和構(gòu)建方法進(jìn)行詳細(xì)說明以一個實(shí)際需要處理的文件舉例,文件中含有100條數(shù)據(jù),現(xiàn)在海量數(shù)據(jù)信息索引系統(tǒng)有五臺創(chuàng)建數(shù)據(jù)索引服務(wù)器2,五臺檢索服務(wù)器3,一臺數(shù)據(jù)分發(fā)服務(wù)器I和一臺合并檢索結(jié)果服務(wù)器4:創(chuàng)建索引用戶建立索引的具體過程如下需要將文件放置在數(shù)據(jù)分發(fā)服務(wù)器I上,然后在數(shù)據(jù)分發(fā)服務(wù)器I上進(jìn)入程序放置根目錄,并執(zhí)行建立索引命令“shbin/distdaemon. shpost {放置文件位置} ”。數(shù)據(jù)分發(fā)服務(wù)器I會通過執(zhí)行命令參數(shù),找到該文件,并通過“索引拆分”模塊,將這個文件拆分成為五份,每一份“索引數(shù)據(jù)塊”都會含有20條數(shù)據(jù)。當(dāng)數(shù)據(jù)分發(fā)服務(wù)器I通過“索引拆分”模塊將文件拆分完成后,會將五份“索引數(shù)據(jù)塊”依次分發(fā)到五臺創(chuàng)建數(shù)據(jù)索引服務(wù)器2上。以單個創(chuàng)建數(shù)據(jù)索引服務(wù)器2為例(其余創(chuàng)建數(shù)據(jù)索引服務(wù)器2的處理方式一致),當(dāng)其中一個創(chuàng)建數(shù)據(jù)索引服務(wù)器2接收到數(shù)據(jù)分發(fā)服務(wù)器I發(fā)送給它的“索引數(shù)據(jù)塊”(其中含有20條數(shù)據(jù))之后,會將該“索引數(shù)據(jù)塊”根據(jù)之前定義的“架構(gòu)”(schema)文件定義的列名和類型進(jìn)行拆分,得到類似一個HASH(意為散列)形式的數(shù)組,比如schema文件定義第一列是文件名(filename)、第二列是文件大小(filesize),“索引數(shù)據(jù)快”得到的第一列是fileOl,第二列是1000M,那么經(jīng)過數(shù)據(jù)拆分會得到一個數(shù)組“{
=>{‘filename’ => ‘fileOl’,‘filesize’=〉‘ 1000M’,[I] => {…},…,[20] => {…}}} ”。之后會將得到的這個hash形式的數(shù)組,通過倒排算法生成為“倒排數(shù)據(jù)索引”。如hash 的數(shù)據(jù)格式是{‘001,=>{‘filename,=>‘file0r,‘f ilesize,=〉‘ 1000M,},‘002,=>{ ‘filename’=YfileC^, <filesize,=><1000M,}) ···, ,020,=>{<filename,=><file20,) <filesize,=><-1000M’}},那么通過“倒排”完成后的格式應(yīng)為{‘filename’=>{‘file01’=>{‘001’},‘fileO2’=>{‘002’},‘file20’=>{‘020’}},‘filesize’=〉{‘1000M’=>{‘001’,‘002’,‘020’}},…}。創(chuàng)建數(shù)據(jù)索引服務(wù)器2生成倒排索引后,經(jīng)過“合并索弓丨”可以將新建立的索引合并到已有的索引中。 最后將新建立的索引通過“http”協(xié)議的方式同步到檢索服務(wù)器3中。檢索用戶檢索索引數(shù)據(jù)的具體過程如下檢索用戶通過向合并檢索結(jié)果服務(wù)器4發(fā)送檢索請求,比如檢索用戶發(fā)送檢索文件大小(filesize)為1000M的所有文件。則用戶會發(fā)送一個http://{merger-host}/{port} / {path} / {fn} q=f ilesize%3A1000M 的請求。創(chuàng)建索引服務(wù)器接收到用戶發(fā)送的請求后,將該請求分別發(fā)送給五臺檢索服務(wù)器3如http://{slave-host}/{port}/{path}/{fn} q=filesize%3A1000M。以單個檢索服務(wù)器3為例(其余檢索服務(wù)器3的處理方式一致),接受到創(chuàng)建數(shù)據(jù)索引服務(wù)器2發(fā)送的請求后,通過解析請求獲得filesize等于1000M的檢索條件。通過該條件到已存在的“倒排數(shù)據(jù)索引”中檢索數(shù)據(jù)。比如會得到{ ‘001’=>{ ‘filenaiB’=>‘file0r,‘filesize’=>‘l(XXM’},‘002’=>{‘filenaiB’=>‘file02’,‘filesize’=>‘1000M’},,020’=>{‘filename’=〉‘file20’,‘filesize’=〉‘1000M’}}的結(jié)果,并將結(jié)果返回給合并檢索結(jié)果服務(wù)器4。合并檢索結(jié)果服務(wù)器4得到五臺檢索服務(wù)器3返回的數(shù)據(jù),將他們合并排序等。合并完成后,將結(jié)果返回給客戶,檢索完成。經(jīng)過實(shí)際測試 一臺數(shù)據(jù)分發(fā)服務(wù)器I和三臺創(chuàng)建數(shù)據(jù)索引服務(wù)器2,建5000萬條數(shù)據(jù)索引,每條數(shù)據(jù)大概有20-30個數(shù)據(jù)特征,花費(fèi)30分鐘可以完成創(chuàng)建索引的工作;—臺合并檢索結(jié)果服務(wù)器4、五臺檢索服務(wù)器3,共有一億條左右的索引,一百個用戶并發(fā)檢索,檢索條件包括檢索范圍,排序等復(fù)雜條件,平均響應(yīng)在三秒以內(nèi)。顯然,上述實(shí)施例僅僅是為清楚地說明所作的舉例,而并非對實(shí)施方式的限定。對于所屬領(lǐng)域的普通技術(shù)人員來說,在上述說明的基礎(chǔ)上還可以做出其它不同形式的變化或變動。這里無需也無法對所有的實(shí)施方式予以窮舉。而由此所引伸出的顯而易見的變化或變動仍處于本發(fā)明創(chuàng)造的保護(hù)范圍之中。
權(quán)利要求
1.一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于包括, 數(shù)據(jù)分發(fā)服務(wù)器機(jī)群,包括多臺數(shù)據(jù)分發(fā)服務(wù)器,用于將需要創(chuàng)建的數(shù)據(jù)拆分并分發(fā); 創(chuàng)建數(shù)據(jù)索引服務(wù)器機(jī)群,包括多臺創(chuàng)建數(shù)據(jù)索引服務(wù)器,各所述創(chuàng)建數(shù)據(jù)索引服務(wù)器分別接收所述數(shù)據(jù)分發(fā)服務(wù)器分發(fā)的數(shù)據(jù)并為所述數(shù)據(jù)創(chuàng)建索引; 檢索服務(wù)器機(jī)群,包括多臺檢索服務(wù)器,接收所述創(chuàng)建數(shù)據(jù)索引服務(wù)器創(chuàng)建的所述索引并根據(jù)檢索條件對數(shù)據(jù)索引進(jìn)行檢索; 合并檢索結(jié)果服務(wù)器機(jī)群,包括多臺合并檢索結(jié)果服務(wù)器,接收并合并所述檢索服務(wù)器檢出的結(jié)果。
2.根據(jù)權(quán)利要求I所述的一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于每個所述檢索服務(wù)器均包括一個備份區(qū),用于備份該檢索服務(wù)器檢索出的數(shù)據(jù)。
3.根據(jù)權(quán)利要求I所述的一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于還包括備份數(shù)據(jù)服務(wù)器機(jī)群,包括多臺備份數(shù)據(jù)服務(wù)器,接收并備份所述數(shù)據(jù)分發(fā)服務(wù)器、所述創(chuàng)建數(shù)據(jù)索引服務(wù)器、所述檢索服務(wù)器和所述合并檢索結(jié)果服務(wù)器上的數(shù)據(jù)。
4.根據(jù)權(quán)利要求1-3任一所述的一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于所述創(chuàng)建數(shù)據(jù)索引服務(wù)器創(chuàng)建的索引類型為倒排索引。
5.根據(jù)權(quán)利要求1-4任一所述的一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于所述數(shù)據(jù)分發(fā)服務(wù)器存儲有一個實(shí)現(xiàn)數(shù)據(jù)分發(fā)功能的分發(fā)文件,所述分發(fā)文件記錄有所有創(chuàng)建數(shù)據(jù)索引服務(wù)器、檢索服務(wù)器和合并檢索結(jié)果服務(wù)器的位置和信息。
6.根據(jù)權(quán)利要求5所述的一種海量數(shù)據(jù)信息索引系統(tǒng),其特征在于所述分發(fā)文件為XML文件。
7.—種如權(quán)利要求1-6任一所述海量數(shù)據(jù)信息索引的構(gòu)建方法,其特征在于,包括如下步驟 ①將檢索用服務(wù)器按照功能劃分為數(shù)據(jù)分發(fā)服務(wù)器、創(chuàng)建數(shù)據(jù)索引服務(wù)器、用于檢索服務(wù)器和用于合并檢索結(jié)果服務(wù)器,按照檢索的功能的計算量配備完成每一個功能的服務(wù)器數(shù)量; ②將需要建立索引的數(shù)據(jù)以文件的形式放置在數(shù)據(jù)分發(fā)服務(wù)器上; 運(yùn)行建立索引腳本,按照創(chuàng)建數(shù)據(jù)索引服務(wù)器的數(shù)量將文件拆分,并分發(fā)到各個創(chuàng)建數(shù)據(jù)索引服務(wù)器; ③創(chuàng)建數(shù)據(jù)索引服務(wù)器接收文件,并為該文件建立索引,并和之前建立過的索引進(jìn)行合并,最后將新建的索引傳輸?shù)綑z索服務(wù)器上; ④檢索條件發(fā)送到合并檢索結(jié)果服務(wù)器; ⑤檢索結(jié)果服務(wù)器將檢索條件發(fā)送到所有檢索服務(wù)器上; ⑥檢索服務(wù)器接收檢索條件并對已建立的索引進(jìn)行檢索,將檢索結(jié)果返回給合并檢索結(jié)果服務(wù)器; ⑦合并檢索結(jié)果服務(wù)器接收到所有檢索結(jié)果數(shù)據(jù)后進(jìn)行數(shù)據(jù)合并,并將合并后的檢索結(jié)果返回給檢索用戶。
8.根據(jù)權(quán)利要求7所述的海量數(shù)據(jù)信息索引構(gòu)建方法,其特征在于所述步驟中還包括備份各個步驟中產(chǎn)生的數(shù)據(jù)的步驟。
9.根據(jù)權(quán)利要求7或8所述的海量數(shù)據(jù)信息索引構(gòu)建方法,其特征在于所述步驟③中創(chuàng)建的索引為倒排索引。
10.根據(jù)權(quán)利要求7-9任一所述的海量數(shù)據(jù)信息索引構(gòu)建方法,其特征在于所述步驟①中通過在數(shù)據(jù)分發(fā)服務(wù)器上存儲有一個記錄數(shù)據(jù)分發(fā)服務(wù)器、創(chuàng)建數(shù)據(jù)索引服務(wù)器、檢索服務(wù)器和合并檢索結(jié)果服務(wù)器位置信息的分發(fā)文件,實(shí)現(xiàn)各服務(wù)器功能的劃分。
11.根據(jù)權(quán)利要求10所述的海量數(shù)據(jù)信息索引構(gòu)建方法,其特征在于分發(fā)文件為XML文件,執(zhí)行過程中,XML文件通過解析,將各個功能的信息通過SSH技術(shù)分發(fā)到XML文件上指定的服務(wù)器上。
12.根據(jù)權(quán)利要求7-11任一所述的海量數(shù)據(jù)信息索引構(gòu)建方法,其特征在于所述各步驟之間通過http協(xié)議實(shí)現(xiàn)傳輸。
全文摘要
本發(fā)明涉及一種海量數(shù)據(jù)信息索引系統(tǒng)和構(gòu)建方法,其包括,數(shù)據(jù)分發(fā)服務(wù)器機(jī)群,包括多臺數(shù)據(jù)分發(fā)服務(wù)器,用于將需要創(chuàng)建的數(shù)據(jù)拆分并分發(fā)給創(chuàng)建數(shù)據(jù)索引服務(wù)器;創(chuàng)建數(shù)據(jù)索引服務(wù)器機(jī)群,包括多臺創(chuàng)建數(shù)據(jù)索引服務(wù)器,接收數(shù)據(jù)分發(fā)服務(wù)器分發(fā)的數(shù)據(jù)并為數(shù)據(jù)創(chuàng)建索引;檢索服務(wù)器機(jī)群,包括多臺檢索服務(wù)器,接收創(chuàng)建數(shù)據(jù)索引服務(wù)器創(chuàng)建的索引并對數(shù)據(jù)索引進(jìn)行檢索;合并檢索結(jié)果服務(wù)器機(jī)群,包括多臺合并檢索結(jié)果服務(wù)器,接收檢索條件,接收并合并檢索服務(wù)器索出的結(jié)果。根據(jù)索引過程中需要完成的功能對服務(wù)器進(jìn)行分配,避免搶資源;檢索的過程中一旦出錯,可根據(jù)出錯原因快速定位出出錯的服務(wù)器,便于維修維護(hù),降低維修和使用成本。
文檔編號G06F17/30GK102779160SQ201210199729
公開日2012年11月14日 申請日期2012年6月14日 優(yōu)先權(quán)日2012年6月14日
發(fā)明者葉嘉明, 安旭, 陳德全 申請人:中金數(shù)據(jù)系統(tǒng)有限公司