楊 嵐
(泉州信息工程學院 軟件學院 ,福建 泉州 362000)
互聯(lián)網(wǎng)技術(shù)高速發(fā)展,IT行業(yè)產(chǎn)生的、分析的業(yè)務數(shù)據(jù)規(guī)模不斷擴大。傳統(tǒng)的關(guān)系型數(shù)據(jù)庫受到數(shù)據(jù)模型、存儲模式等方面的局限,在需要對大量數(shù)據(jù)進行查詢與管理等操作過程中,處理能力較為薄弱,難以適應現(xiàn)代化市場與企業(yè)的發(fā)展現(xiàn)狀。為了提升大數(shù)據(jù)背景下數(shù)據(jù)處理的效率與質(zhì)量,需要對傳統(tǒng)關(guān)系型數(shù)據(jù)庫進行創(chuàng)新,于是NoSQL數(shù)據(jù)庫出現(xiàn)了。NoSQL全稱為Not Only SQL,是一種數(shù)據(jù)存儲系統(tǒng),該系統(tǒng)特征為非關(guān)系型、分布式的、不確定遵守ACID原則,該系統(tǒng)遵循CAP理論以及BASE原則。與傳統(tǒng)數(shù)據(jù)庫相比較,NoSQL系統(tǒng)對數(shù)據(jù)存儲功能進行了精簡,著重于分布式的數(shù)據(jù)管理。另外,與傳統(tǒng)數(shù)據(jù)庫相比較,該系統(tǒng)易擴展、性能高、數(shù)據(jù)模型靈活、可用性高,但NoSQL系統(tǒng)卻在查詢功能方面有著明顯的缺陷。在全文檢索中,倒排文件是較為常用的一種索引結(jié)構(gòu),目前關(guān)于靜態(tài)文檔集合構(gòu)建倒排索引的研究較為豐富和全面。在信息檢索系統(tǒng)中,倒排索引是關(guān)鍵的內(nèi)容,存儲結(jié)構(gòu)直接影響著檢索的效率與質(zhì)量。計算機網(wǎng)絡技術(shù)的迅速普及和發(fā)展,需存儲的數(shù)據(jù)越來越多,且特殊的應用領(lǐng)域?qū)ζ涓滦阅艿囊笤絹碓礁?,例如新聞、桌面搜索等,因此要能夠借助更為高效的索引更新策略,也就是運用動態(tài)索引,滿足各領(lǐng)域的需求。基于動態(tài)的文檔環(huán)境,例如標簽系統(tǒng)等,用戶端能夠添加、刪除標簽或者是文件。但是,動態(tài)索引致使計算多個鍵為主索引的有意義數(shù)據(jù)是較難操作的。在此背景下,需研發(fā)更為優(yōu)質(zhì)的查詢驅(qū)動優(yōu)化技術(shù),用作常用查詢數(shù)據(jù)鍵的存儲。面對隨時處于變化中數(shù)據(jù)對象,引入增量更新機制,能夠高效處理上述對象。大量研究顯示,組合索引可降低整體寬帶的消耗,耗能節(jié)約為50%左右,節(jié)約的部分能夠使容量擴大,從而實現(xiàn)更加快捷的查詢功能處理,在保持性能的基礎上可節(jié)約成本。
(1)CAP理論。在NoSQL系統(tǒng)中,CAP理論是其基礎,CAP代表了其重要的三個特征,分別為一致性、可用性、分區(qū)容錯性。基于CAP理論,數(shù)據(jù)共享系統(tǒng)僅能夠同時滿足其中的兩個特征,而并非同時滿足于三個特征。受到現(xiàn)有的網(wǎng)絡硬件條件的約束,在操作中必然會存在延遲、丟包等現(xiàn)象,因此必須要實現(xiàn)分區(qū)容錯性。因此,系統(tǒng)的設計中,需要保留分區(qū)容錯性的特性,另外要在一致性以及可用性中選擇其一。
(2)BASE理論。在CAP理論中的三個特性中,由于分區(qū)容錯性、可用性的要求要明顯優(yōu)于強一致性,且難以滿足要求的ACID特性,因此BASE理論應運而生。BASE理論的構(gòu)成為基本可用、軟狀態(tài)以及最終一致性。其中,基本可用表示系統(tǒng)能夠長時間的維持基本可使用的狀態(tài),為用戶提供長期的、穩(wěn)定的服務;軟狀態(tài)表示系統(tǒng)不對強一致狀態(tài)硬性要求,可異步;最終一致性表示系統(tǒng)在特定的一段時間內(nèi)維持數(shù)據(jù)的一致性。BASE理論是基于CAP理論上演變而來的,而與ACID特性有著非常顯著的區(qū)別,兩者毫無關(guān)聯(lián)。BASE理論放棄了強一致性,從而滿足其基本以執(zhí)行、柔性可靠性的性能,進而實現(xiàn)最終一致性,實現(xiàn)系統(tǒng)性能的提升以及可用性的提升。NoSQL系統(tǒng)則是遵循了BASE理論。
NoSQL數(shù)據(jù)的解決方案較多,但系統(tǒng)架構(gòu)可劃分為兩種,分別是Master-Slave架構(gòu)、Peer to Peer (P2P)環(huán)狀結(jié)構(gòu)。其中,Master-Slave架構(gòu)的構(gòu)成方式為一個管理節(jié)點(Master節(jié)點)與數(shù)個計算節(jié)點(Slave節(jié)點),管理節(jié)點的主要內(nèi)容為負責系統(tǒng)的整體管理,同時對所有計算節(jié)點的狀態(tài)進行監(jiān)控,保持負載的均衡性;計算節(jié)點為數(shù)據(jù)存儲的節(jié)點,每個計算節(jié)點都要對本地數(shù)據(jù)的索引表進行維護,同時還要定期將運行與負載狀態(tài)匯報給管理節(jié)點。Master-Slave架構(gòu)優(yōu)缺點非常明顯,優(yōu)點在于簡單可控,維護過程簡單易操作,而缺點表現(xiàn)為管理節(jié)點將會對性能造成制約。該架構(gòu)的運用也較為廣泛,其中以Big table、H Base為代表。P2P環(huán)狀架構(gòu)中,“一致性哈希算法”將系統(tǒng)節(jié)點連接成一個閉環(huán),所有節(jié)點地位均等,沒有主與次之分,所有節(jié)點均實現(xiàn)數(shù)據(jù)的存儲和管理功能。該架構(gòu)系統(tǒng)的優(yōu)點表現(xiàn)為負載均衡、良好的協(xié)調(diào)性、易擴展,而缺點為系統(tǒng)的復雜性較高、可控性能差。其中,Cassandra、Dynamo是P2P架構(gòu)使用者的典型代表。
基于數(shù)據(jù)模型的視角,NoSQL數(shù)據(jù)庫能夠分成較多種類,結(jié)合數(shù)據(jù)存儲的模型與特征,可以分成以下四種典型的類型:
(1)鍵值存儲數(shù)據(jù)模型。NoSQL數(shù)據(jù)庫最為常用的存儲形式為鍵值存儲數(shù)據(jù)模型,該模型最初源于哈希表中的鍵值對(Key-Value)。鍵值對(Key-Value)為一個映射,其中Key是計算后得到的關(guān)鍵字,value表示存儲的內(nèi)容。鍵值存儲數(shù)據(jù)模型中,數(shù)據(jù)根據(jù)key-value的形式實現(xiàn)組織、存儲以及索引。數(shù)據(jù)存儲系統(tǒng)中,數(shù)據(jù)的量非常龐大,鍵值存儲模型有助于簡化數(shù)據(jù)的結(jié)構(gòu),從而增強其實用性,實現(xiàn)其讀寫的性能需求。但該數(shù)據(jù)模型難以完成批量的數(shù)據(jù)處理,尤其是查詢以及更新等方面的操作,另外,該數(shù)據(jù)也難以實現(xiàn)邏輯復雜程度較高的數(shù)據(jù)處理。運用鍵值存儲數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng)也較多,例如Redis、Dynamo等等。
(2)列式存儲數(shù)據(jù)模型。該模型同樣也運用于“表”相似的傳統(tǒng)數(shù)據(jù)模型,與關(guān)系數(shù)據(jù)庫的存儲數(shù)據(jù)方式“行”相比,列式模型以“列”的方式實現(xiàn)數(shù)據(jù)存儲。列式存儲盡量將同一列的數(shù)據(jù)存在硬盤的同一頁中,且支持多個列合并為一個組(列族)的特征,進而提升存儲空間的利用率以及查詢的效率,可減少較多的I/O操作內(nèi)容。列式存儲是基于大數(shù)據(jù)背景下開展數(shù)據(jù)的分析以及數(shù)據(jù)倉庫操作,因此存在寫入的效率低下、數(shù)據(jù)完整性欠缺的劣勢。運用列式存儲數(shù)據(jù)模型的數(shù)據(jù)庫系統(tǒng)較多,具備代表性的有Bigtable、Cassandra、Hbase以及Hyper Table等等。
(3)文檔存儲數(shù)據(jù)模型。文檔存儲數(shù)據(jù)模型中,存儲的格式較多,不存在傳統(tǒng)關(guān)系數(shù)據(jù)庫的存儲形式,此類型的存儲中數(shù)據(jù)大多基于JSON或者與該格式類似格式進行文檔的存儲,JSON格式中較為常見的有XML以及BSON等。文檔存儲數(shù)據(jù)模型能夠滿足用戶以復雜的查詢條件進行數(shù)據(jù)查詢,進而獲取數(shù)據(jù)。在一些應用領(lǐng)域中,文檔數(shù)據(jù)庫與鍵值數(shù)據(jù)庫相比有著更高的查詢率,使用難度也較低,同時還能夠支持嵌套結(jié)構(gòu),具備較強的擴展性能力。該存儲數(shù)據(jù)模型也存在顯著的缺點,例如存儲非結(jié)構(gòu)化數(shù)據(jù)、缺乏關(guān)系數(shù)據(jù)的處理能力、缺乏JSON的處理能力。采用該數(shù)據(jù)存儲模型的數(shù)據(jù)庫系統(tǒng)主要有MongoDB、CouchDB等等。
(4)圖形存儲數(shù)據(jù)模型。圖形存儲數(shù)據(jù)模型是基于網(wǎng)格結(jié)構(gòu)的圖理論實現(xiàn)的,該模型的構(gòu)成主要有節(jié)點、關(guān)系以及屬性,其中,節(jié)點用于代表實體對象,邊用于代表實體對象間的聯(lián)系。圖結(jié)構(gòu)存儲數(shù)據(jù)的運用能夠?qū)崿F(xiàn)較為復雜的運算,例如用于最短路徑的計算、用于集中度的測量等。運用該模型的數(shù)據(jù)庫系統(tǒng)主要有Neo4j、GraphDB等。
按照數(shù)據(jù)模型進行分類,NoSQL數(shù)據(jù)庫能夠分為鍵值數(shù)據(jù)庫、列式數(shù)據(jù)庫、文檔數(shù)據(jù)庫、圖數(shù)據(jù)庫。鍵值數(shù)據(jù)庫運用最具代表性的為Redis以及Riak,列式數(shù)據(jù)庫運用中最為代表的有HBase,而發(fā)展最為迅速的為Cassandra,文檔型數(shù)據(jù)庫中具備代表性的有MongoDB,最近發(fā)展最為迅速的有CouchDB,而圖數(shù)據(jù)庫運用中,Neo4j具備較高的代表性。下文將對7種NoSQL數(shù)據(jù)庫系統(tǒng)進行分析與比較。
(1)Redis(Remote Dictionary Service),遠程字典服務,Redis的多數(shù)系統(tǒng)中均運用基本的C語言。Redis與其他的鍵值數(shù)據(jù)庫相比較,該數(shù)據(jù)組織的優(yōu)點明顯,不僅有著非常靈活的數(shù)據(jù)組織,同時還能夠支持字符串、哈希表等。
(2)Riak,同樣為Key-Value系統(tǒng),且受到廣泛的重視,其特征顯著,主要表現(xiàn)為三個方面,分別為分布式集群、彈性擴展功能強大、容錯性能強大。
(3)HBase是目前行業(yè)認可的保存數(shù)據(jù)庫,具有非常良好的前景,特點顯著,具備列表存數(shù)據(jù)、水平擴展性等特點。HBase的運用,有助于在性能相對較低的PC服務器中構(gòu)建較為健全的集群體系。
(4)Cassanda由Facebook于2007年研發(fā),并且發(fā)展成具備較高可靠性的大規(guī)模NoSQL數(shù)據(jù)庫系統(tǒng)。在云處理平臺中,其有著良好的表現(xiàn),優(yōu)點主要體現(xiàn)在延展性高、數(shù)據(jù)的一致性以及并行分布三方面。
(5)CouchDB,面向文檔數(shù)據(jù)庫系統(tǒng),是在JSON與REST基礎上構(gòu)建而成。CouchDB存儲鍵值對于構(gòu)成的JSON文檔,其值可根據(jù)需求選擇其中的一種類型,同時還能夠嵌套不同層次的其他對象。CouchDB每一行都記錄各項值,包括文檔編號、版本號、存儲值等內(nèi)容。通常情況下,存儲的值為TEXT類型樣式的文本,內(nèi)容與數(shù)據(jù)組織的形式?jīng)]有關(guān)聯(lián),能夠任意進行定義。但存儲受到相應的規(guī)范限制,數(shù)據(jù)存儲依據(jù)JSON樣式完成保存,這同樣是CouchDB優(yōu)于其他數(shù)據(jù)庫的優(yōu)點。
(6)MongoDB,在NoSQL數(shù)據(jù)庫中,具備最豐富的功能,其顯著優(yōu)點在于能夠滿足不同查詢語言的需求,包含RUBY,PYTHON,JAVE,C++,PHP在內(nèi)等多樣化的語言,預防形式與面向?qū)ο蟛樵冋Z言有著一定的共性。該數(shù)據(jù)庫既能夠?qū)崿F(xiàn)與傳統(tǒng)數(shù)據(jù)庫單個表格查詢的相關(guān)操作,同時還能夠構(gòu)建數(shù)據(jù)索引。
(7)Neo4j,較為新穎的NoSQL數(shù)據(jù)庫,為以圖為數(shù)據(jù)組織形式的數(shù)據(jù)庫,Neo4j支持ACID事務,與關(guān)系數(shù)據(jù)庫中PosterSQL相似。分布式的特點還能夠?qū)崿F(xiàn)Lucene的整合,進而滿足快速查詢的功能。
表1給出了NoSQL 數(shù)據(jù)庫的綜合比較。
表1 NoSQL 數(shù)據(jù)庫的綜合對照表
在索引技術(shù)中,倒排索引是較為常用的一種技術(shù)方法,其獨特性在于索引表中數(shù)據(jù)以倒敘的方式進行排序。其基本功能在于存儲全文查詢中特定詞匯到對應文檔中位置的對應關(guān)系。目前,在檢索領(lǐng)域中,倒排索引成為應用非常廣泛、受用度非常高的索引方式。而涵蓋特定單詞的文檔列表能夠借助于倒排索引實現(xiàn)快速獲得。與順序索引相比較,倒排索引有著顯著的區(qū)別,其將“文檔-詞”轉(zhuǎn)變成“詞-文檔”后創(chuàng)編索引。在倒排索引的引用中,最常見的方法是先構(gòu)建一個由索引項記錄構(gòu)成的索引項數(shù)據(jù)表,在數(shù)據(jù)表中,每一項紀錄均為用于文檔描述的單一不重復的最小單元,通常為單詞、語塊或者是音節(jié)。然后,輸入的隨意一篇文檔按照文檔包含的索引項進行拆分,并且在索引項數(shù)據(jù)表中將每一個索引項在文檔中的位置與文檔號添加進去,進而形成倒排索引。例如,運用五個短語進行文檔的模擬,在單詞的基礎上構(gòu)建出倒排索引,具體如圖1所示:
圖1 倒排索引示意圖
倒排索引技術(shù)的運用有兩個主要步驟。第一步:構(gòu)建索引,也就是根據(jù)文檔集獲得文檔的詞表,在表中標明單詞在文檔中的位置序號和文檔序號。例如,若忽視大小寫的差異,educational將會在a與d兩個句子中出現(xiàn),索引的位置都為1,因此,能夠記錄成“educational(a,1;d,1)”;第二步:運用索引實現(xiàn)檢索。檢索過程中,用戶僅僅需要提取倒排索引,探尋到該詞有關(guān)的出現(xiàn)記錄。例如,在用戶檢索“technology”中,運用倒排索引,能夠得出在a、b、e三條記錄中出現(xiàn)檢索詞,且索引的位置都在2處,與c、d文檔無關(guān)聯(lián)。換言之,當檢索“technology”時,僅查詢與之相關(guān)的語句,減少了不必要的無關(guān)操作。同樣,如果用戶在檢索“Educational technology”時,用戶只需要檢索與這兩個詞匯有關(guān)的記錄,隨后根據(jù)文檔的序號確定交集,如需兩個詞匯同時且連續(xù)存在,在得到交集后,再對索引序號進行比較,最終通過是否連續(xù)進行結(jié)果確認。倒排索引特點顯著,其具備易理解、構(gòu)建操作簡單、使用效率高的特點,因此在搜索引擎、大數(shù)據(jù)組織以及龐大信息數(shù)據(jù)檢索等方面有著非常重要和廣泛的運用。
結(jié)合關(guān)鍵字搜索,僅涉及到數(shù)據(jù)對象有關(guān)的主鍵屬性的范疇,在此范圍內(nèi)進行查詢,因此倒排列表僅需構(gòu)建二級索引即可。另外,為降低倒排列表中鍵組合查詢的交叉成本,本文中提出了組合多條件的倒排索引技術(shù),將條目與標簽聯(lián)系起來設置為索引的鍵。本文引用的書簽系統(tǒng)中,組合倒排索引如圖2所示。如果單獨用于索引的數(shù)目數(shù)量到達預定的閾值時,將會引發(fā)合并操作,所有的單獨索引會整合成統(tǒng)一的個體,這一整體為段索引。段索引的數(shù)量不斷增加,當總數(shù)量達到預定的值時,將會出現(xiàn)合并行為,多個段索引將會整合進入到主索引中。索引合并過程中,要能夠設置出合理的閾值。若設置的閾值過小,將會導致合并操作過于頻繁的發(fā)生,進而增加系統(tǒng)資源的消耗;若設置的閾值過大,合并操作發(fā)生的頻次過低,周期較長,文檔更新難以快速體現(xiàn)在倒排索引中,降低系統(tǒng)的時效性。
圖2 組合倒排索引
查詢處理算法流程如圖3所示。
圖3 查詢處理算法流程
本文中運用啟發(fā)式確定鍵訪問索引的集合與順序,以圖1為例,計算訪問二級索引列表的組鍵L,于最短倒排表的鍵開始,隨之增加鍵到L,L最大化,覆蓋q以及所有的q的查詢條件。若其中部分鍵已經(jīng)滿足了覆蓋的最大化需求,那么節(jié)點將會選擇此類鍵,且用作于最短的倒排表。當發(fā)起節(jié)點對列表L進行了計算,就能夠用于訪問索引進而檢索獲取查詢的結(jié)果,具體如圖4所示。第一步,L將會被輸送到每一個節(jié)點;第二步,所有節(jié)點將對應鍵的倒排表添加到中間的結(jié)果中;第三步,最末節(jié)點將會反饋最后結(jié)果到發(fā)起的節(jié)點。對于多個條件查詢和單個條件查詢而言,該機制同樣適用,且原理一致。
圖4 查詢處理列表
NoSQL數(shù)據(jù)庫提供的大數(shù)據(jù)查詢技術(shù)有著非常重要的作用,在鐵路實名制購票系統(tǒng)中發(fā)揮著重要的作用。實踐操作中,要能夠有效運用NoSQL數(shù)據(jù)庫的返鄉(xiāng)索引技術(shù),構(gòu)建全新的數(shù)據(jù)查詢、測量及處理的流程,進而確保實名制信息系統(tǒng)的高效運行。
鐵路票務實名制信息綜合分析系統(tǒng)是基于JAVA基礎上實行分層設計的,同時借助于數(shù)據(jù)庫的數(shù)據(jù)層組織模式進行系統(tǒng)的設計,共分為展現(xiàn)層、應用層、服務層以及數(shù)據(jù)云四個層次。
(1)數(shù)據(jù)層。該層次中,為實現(xiàn)實名制信息、售票信息等功能,可借助NoSQL數(shù)據(jù)庫功能發(fā)揮出TRS系統(tǒng)的作用。為發(fā)揮最優(yōu)效果,還要運用開源ETL工具Kettle實現(xiàn)數(shù)據(jù)的定期抽取,從而完成加載與轉(zhuǎn)換,滿足服務層的調(diào)用需求。
(2)服務層。基于數(shù)據(jù)層,綜合運用JAVA數(shù)和工作流機制,滿足應用層的需求,提供查詢、分析以及數(shù)據(jù)接口等應用功能,服務層是業(yè)務應用功能實現(xiàn)的基礎條件。
(3)應用層。該層基于服務層構(gòu)建,發(fā)揮接口作用,具體使用體現(xiàn)在實名制信息的管理與信息推送等功能。
(4)展現(xiàn)層。展現(xiàn)層是最后一個層次,同時也是NoSQL數(shù)據(jù)庫查詢技術(shù)應用的最后體現(xiàn)。該層的展現(xiàn)功能在系統(tǒng)內(nèi)結(jié)合瀏覽器展現(xiàn),提供查詢功能和導航功能,滿足管理系統(tǒng)的應用需求。該層,基于分析結(jié)果進行信息分配,為客戶端實現(xiàn)信息輸出。
鐵路客票實名制信息分析系統(tǒng)的業(yè)務場景根據(jù)一條或者批量乘客信息進行票務信息查詢,以及對乘車行程,或者結(jié)合多樣條件進行查詢。此業(yè)務中,售票信息、身份信息包含了車票的信息。
NoSQL數(shù)據(jù)庫的存儲模型為五維分布式的key-value結(jié)構(gòu),包含鍵值空間、列、列族、超列、行等形式,基于4級嵌套的方式出現(xiàn)。數(shù)據(jù)存儲的流程表現(xiàn)方式為:首先,將寫入動作添加到提交日志中;其次,將數(shù)據(jù)寫入到colum family相對的Memtable中;最后,滿足系統(tǒng)預設條件后,將Memtable數(shù)據(jù)批量的存入到磁盤中。
如果查詢的條件是使用存儲模型中的部分列實現(xiàn)檢索,構(gòu)建如下的反向索引K′。
K′→{Fi|i=1,2,...,I},
其中,K′={Ct|Ct?C}
針對不同客戶端的查詢需求,結(jié)合公式中相應的索引結(jié)構(gòu)完成查詢。如果要求圖3中數(shù)據(jù)存儲模型中尋找到某一車次的車票信息,要能夠首先構(gòu)建出反向索引,聯(lián)系起車次(key)與售票信息(ID),隨后聯(lián)系車票信息確定數(shù)據(jù)在NoSQL集群節(jié)點上的分布,最后在節(jié)點上基于索引反向檢索對應的車票信息。NoSQL數(shù)據(jù)庫中,構(gòu)建反向索引占用部分空間,以空間換取時間,提升了查詢的有效性。
基于反向索引關(guān)系能夠從實名制售票業(yè)務數(shù)據(jù)(ticket info)以及實名制旅客身份信息(passenger info)中尋求出相對應的鍵值信息,隨后進行關(guān)聯(lián)操作,進而按條件查詢到實名制乘車信息。因此,基于NoSQL數(shù)據(jù)的反向索引技術(shù),設計查詢策略,具體如圖5所示。
圖5 查詢策略
圖5查詢策略中,先結(jié)合查詢條件,基于實名制票務數(shù)據(jù)(ticket info)與實名制旅客的身份信息(passenger info)構(gòu)建出反向索引(ticket info _index),passenger info_index ticket info_index中columns涵蓋了兩張表關(guān)聯(lián)時所需的唯一鍵值,聯(lián)系車票信息實現(xiàn)查詢條件(train_date,train_no)包含在key列表中,passenger info_index的columns也涵蓋了兩張表關(guān)聯(lián)時所需的唯一鍵值,聯(lián)系實名制身份信息查詢時要具備的查詢條件(id_kind,id_no),此條件也在passenger info_index中的key列表中。因此,在查詢中,隨意一個查詢條件或者其他查詢條件的組合出現(xiàn)時,都能夠換成兩組滿足條件的唯一索引鍵值列表,均基于唯一的索引鍵值列表進行檢索,能夠快速檢索且獲得對應信息。
運用NoSQL數(shù)據(jù)庫的大數(shù)據(jù)查詢技術(shù)有助于節(jié)省大量的搜索時間,提升了數(shù)據(jù)的讀寫有效性,明顯強化了數(shù)據(jù)庫的拓展功能,滿足不同行業(yè)、不同領(lǐng)域查詢工作的技術(shù)需求。聯(lián)系鐵路客票實名制信息的分析系統(tǒng),對NoSQL數(shù)據(jù)庫的實際運用進行了探討,基于反向索引科學設計鐵路客票實名制信息查詢策略與流程,研究表明NoSQL數(shù)據(jù)庫能夠最優(yōu)化地實現(xiàn)大數(shù)據(jù)分析與查詢功能。