本發(fā)明專利技術(shù)公開了一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法及系統(tǒng),屬于數(shù)據(jù)查詢技術(shù)領(lǐng)域,所述系統(tǒng)包括用戶端,用于供用戶輸入查詢指令和查看查詢結(jié)果數(shù)據(jù);查詢指令判斷單元,用于統(tǒng)計(jì)分析查詢指令是否需要分割處理,當(dāng)需要分割處理時(shí)進(jìn)行標(biāo)記,不需要分割處理時(shí)也標(biāo)記上不需要分割處理;查詢指令分割單元,用于根據(jù)查詢指令判斷單元標(biāo)記的查詢指令進(jìn)行分割;分配單元,用于對(duì)細(xì)化查詢指令的查詢指令進(jìn)行組合,并把組合的查詢指令進(jìn)行分配;索引單元,用于根據(jù)分配到的查詢指令后對(duì)指令解析傳入到服務(wù)器單元進(jìn)行檢索,返回檢索結(jié)果;通過對(duì)Solr文本進(jìn)行轉(zhuǎn)換為標(biāo)準(zhǔn)的文本,然后對(duì)文本進(jìn)行表格分割,使得Solr文本能夠直接使用表格檢索進(jìn)行查詢。
【技術(shù)實(shí)現(xiàn)步驟摘要】
一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法
本專利技術(shù)涉及數(shù)據(jù)查詢
,具體涉及一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法及系統(tǒng)。
技術(shù)介紹
隨著網(wǎng)絡(luò)的發(fā)展和普及,應(yīng)用生產(chǎn)和需要處理的數(shù)據(jù)越來越大,數(shù)據(jù)爆發(fā)式增長,使得現(xiàn)有的數(shù)據(jù)檢索系統(tǒng)的工作負(fù)載越來越大,不斷的增長的數(shù)據(jù)量要求越來越多的應(yīng)用程序進(jìn)行擴(kuò)展到更多的集群里面去計(jì)算,因此,大數(shù)據(jù)的分布式計(jì)算是處理海量數(shù)據(jù)查詢的必備選擇。Solr作為高性能的搜索服務(wù)器,能夠提供快速、更加大的數(shù)據(jù)檢索,可以快速的進(jìn)行完成海量數(shù)據(jù)的檢索。Solr提供了針對(duì)大規(guī)模文檔數(shù)據(jù)進(jìn)行檢索的查詢語言,查詢功能非常豐富。包括匹配單一字符、匹配0或多個(gè)字符、基于編輯距離的模糊查詢、鄰近查詢(查找相隔一定距離的單詞)、范圍查詢,等等。同時(shí),Solr查詢語法還支持多個(gè)查詢條件的組合,如AND、OR、NOT等。Solr查詢語法也提供了查詢的字段篩選、分頁等特性。因此,需要設(shè)計(jì)出一種SolrCloud的大數(shù)據(jù)SQL查詢方法,使得能夠?qū)A康臄?shù)據(jù)進(jìn)行快速檢索。
技術(shù)實(shí)現(xiàn)思路
本專利技術(shù)旨在公開一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法及系統(tǒng),解決現(xiàn)有檢索查詢系統(tǒng)對(duì)于大量的數(shù)據(jù)查詢時(shí),查詢速度較慢,服務(wù)器容易崩潰等技術(shù)問題。本專利技術(shù)采取的技術(shù)方案為:一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,所述方法包括如下步驟,步驟1:把Solr文本根據(jù)標(biāo)準(zhǔn)類型進(jìn)行變換成為標(biāo)準(zhǔn)的Solr文本,變換的過程為,把Solr文本根據(jù)預(yù)先設(shè)定的文字大小,文本的段落屬性和頁面屬性進(jìn)行變換得到標(biāo)準(zhǔn)的Solr文本;步驟2:對(duì)標(biāo)準(zhǔn)Solr文本進(jìn)行表格分割,形成能夠橫向和縱向檢索的表格文本;步驟3:用戶通過用戶端輸入查詢指令,查詢指令判斷單元對(duì)輸入的指令進(jìn)行判斷檢索量的大小;步驟4:查詢指令分割單元根據(jù)判斷后的結(jié)果對(duì)查詢指令進(jìn)行分割處理得到細(xì)化查詢指令;步驟5:分配單元對(duì)細(xì)化查詢指令的查詢指令進(jìn)行組合,并把組合的查詢指令進(jìn)行分配給相應(yīng)的索引單元;步驟6:索引單元根據(jù)分配到的查詢指令后對(duì)指令解析傳入到服務(wù)器單元進(jìn)行檢索,返回檢索結(jié)果。進(jìn)一步地,所述步驟2中表格分割的具體過程為,把標(biāo)準(zhǔn)Solr文本頁面平均分割成為大小相同的網(wǎng)格,網(wǎng)格的大小為字體大小所占頁面面積大小的整數(shù)倍,并在網(wǎng)格的頂端和左端加入橫向和縱向的檢索表頭。進(jìn)一步地,所述步驟3中指令判斷的具體過程為,先統(tǒng)計(jì)查詢指令頭的數(shù)量,然后再對(duì)每個(gè)指令頭內(nèi)的檢索數(shù)據(jù)進(jìn)行統(tǒng)計(jì),并把指令頭的數(shù)量和每個(gè)指令頭中的檢索數(shù)據(jù)與預(yù)先設(shè)定的數(shù)值比較,當(dāng)數(shù)據(jù)比預(yù)先設(shè)定的大時(shí),對(duì)該指令頭進(jìn)行標(biāo)記需要分割,當(dāng)?shù)扔诨蛘卟淮笥跁r(shí),標(biāo)記不需要分割。進(jìn)一步地,所述步驟4分割的過程為,根據(jù)標(biāo)記的需要分割指令頭的內(nèi)部數(shù)據(jù)進(jìn)行分割成為若干份,并對(duì)分割后的若干份數(shù)據(jù)進(jìn)行賦予原來的指令頭,形成若干個(gè)分割指令。進(jìn)一步地,所述步驟5中分配的具體過程為:以查詢指令頭進(jìn)行作為分配的單位,把查詢的數(shù)據(jù)為相同或者相近的查詢指令分配到同一個(gè)索引單元。一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng),所述系統(tǒng)包括用戶端,用于供用戶輸入查詢指令和查看查詢結(jié)果數(shù)據(jù);查詢指令判斷單元,用于統(tǒng)計(jì)分析查詢指令是否需要分割處理,當(dāng)需要分割處理時(shí)進(jìn)行標(biāo)記,不需要分割處理時(shí)也標(biāo)記上不需要分割處理;查詢指令分割單元,用于根據(jù)查詢指令判斷單元標(biāo)記的查詢指令進(jìn)行分割,并把分割后的數(shù)據(jù)匹配上原來的指令頭;分配單元,用于對(duì)細(xì)化查詢指令的查詢指令進(jìn)行組合,并把組合的查詢指令進(jìn)行分配;索引單元,用于根據(jù)分配到的查詢指令后對(duì)指令解析傳入到服務(wù)器單元進(jìn)行檢索,返回檢索結(jié)果;及服務(wù)器單元,用于對(duì)Solr文本轉(zhuǎn)換及執(zhí)行查詢指令返后查詢結(jié)果;所述用戶端的輸出端經(jīng)查詢指令判斷單元與查詢指令分割單元連接,所述查詢指令分割單元的輸出端經(jīng)分配單元與索引單元連接,所述索引單元與服務(wù)器單元連接;所述索引單元的個(gè)數(shù)為若干個(gè),每個(gè)索引單元均包括若干個(gè)索引模塊,每個(gè)索引單元內(nèi)的索引模塊均與不同的服務(wù)器單元連接。進(jìn)一步地,所述查詢指令判斷單元包括查詢指令頭模塊和查詢數(shù)據(jù)判斷模塊,所述查詢指令頭模塊用于統(tǒng)計(jì)查詢指令頭的數(shù)量,所述查詢數(shù)據(jù)判斷模塊用于對(duì)每個(gè)指令頭內(nèi)的檢索數(shù)據(jù)進(jìn)行統(tǒng)計(jì),并把指令頭的數(shù)量和每個(gè)指令頭中的檢索數(shù)據(jù)與預(yù)先設(shè)定的數(shù)值比較,當(dāng)數(shù)據(jù)比預(yù)先設(shè)定的大時(shí),對(duì)該指令進(jìn)行標(biāo)記需要分割,當(dāng)?shù)扔诨蛘卟淮笥跁r(shí),標(biāo)記不需要分割。進(jìn)一步地,所述查詢指令分割單元包括查詢指令頭分割模塊和查詢數(shù)據(jù)分割模塊,所述查詢指令頭分割模塊用于對(duì)指令頭相同的指令頭進(jìn)行分類,所述查詢數(shù)據(jù)分割模塊根據(jù)標(biāo)記的需要分割指令頭的內(nèi)部數(shù)據(jù)進(jìn)行分割成為若干份,并對(duì)分割后的若干份數(shù)據(jù)進(jìn)行賦予原來的指令頭,形成若干個(gè)分割指令。進(jìn)一步地,所述分配單元包括查詢組合模塊和分發(fā)模塊,所述查詢組合模塊把分割后的指令進(jìn)行重新組合成為同一個(gè)等級(jí)的指令,所述分發(fā)模塊查詢指令頭作為分配的單位,把查詢的數(shù)據(jù)為相同或者相近的查詢指令分配到同一個(gè)索引單元。進(jìn)一步地,所述服務(wù)器單元包括文本轉(zhuǎn)換模塊和服務(wù)器,所述文本轉(zhuǎn)換模塊用于把Solr文本根據(jù)標(biāo)準(zhǔn)類型進(jìn)行變換成為標(biāo)準(zhǔn)的Solr文本,變換的過程為,把Solr文本根據(jù)預(yù)先設(shè)定的文字大小,文本的段落屬性和頁面屬性進(jìn)行變換得到標(biāo)準(zhǔn)的Solr文本,對(duì)標(biāo)準(zhǔn)Solr文本進(jìn)行表格分割,形成能夠橫向和縱向檢索的表格文本,所述服務(wù)器用于執(zhí)行指令反饋查詢結(jié)果數(shù)據(jù)。采用本專利技術(shù)技術(shù)方案具有以下優(yōu)勢(shì):本專利技術(shù)通過對(duì)Solr文本進(jìn)行轉(zhuǎn)換為標(biāo)準(zhǔn)的文本,然后對(duì)文本進(jìn)行表格分割,使得Solr文本能夠直接使用表格檢索進(jìn)行查詢,使用SQL的縱列查詢的方式進(jìn)行查詢,同時(shí)對(duì)查詢指令數(shù)據(jù)量較大的查詢指令進(jìn)行分割處理,同時(shí)分配到不同的服務(wù)器進(jìn)行查詢,從而使得查詢的速度更快,減少服務(wù)器的負(fù)載壓力,較少服務(wù)器奔潰的情況。【附圖說明】圖1是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法的流程圖。圖2是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng)框圖。圖3是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng)的查詢指令判斷單元模塊框圖。圖4是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng)的查詢指令分割單元模塊框圖。圖5是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng)的分配單元模塊框圖。圖6是本專利技術(shù)一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng)的服務(wù)器單元模塊框圖。如下具體實(shí)施方式將結(jié)合上述附圖進(jìn)一步說明本專利技術(shù)。【具體實(shí)施方式】下面將結(jié)合本專利技術(shù)實(shí)施例中的附圖,對(duì)本專利技術(shù)實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本專利技術(shù)一部分實(shí)施例,而不是全部的實(shí)施例。基于本專利技術(shù)中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有作出創(chuàng)造性勞動(dòng)前提下所獲得的所有其他實(shí)施例,都屬于本專利技術(shù)保護(hù)的范圍。需要說明的是,在本專利技術(shù)實(shí)施例中使用的術(shù)語是僅僅出于描述特定實(shí)施例的目的,而非旨在限制本專利技術(shù)。在本專利技術(shù)實(shí)施例和所附權(quán)利要求書中所使用的單數(shù)形式的“一種”、“所述”和“該”也旨在包括多數(shù)形式,除非上下文清楚地表示其他含義。還應(yīng)當(dāng)理解,本文中使用的術(shù)語“和/或”是指并包含一個(gè)或多個(gè)相關(guān)聯(lián)的列出項(xiàng)目的任何或所有可能組合。本專利技術(shù)的說明書和權(quán)利要求書及上述附圖中的術(shù)語“包括”和“具有”以及它們?nèi)魏巫冃危鈭D在于覆蓋不排他的本文檔來自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
1.一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述方法包括如下步驟,步驟1:把Solr文本根據(jù)標(biāo)準(zhǔn)類型進(jìn)行變換成為標(biāo)準(zhǔn)的Solr文本,變換的過程為,把Solr文本根據(jù)預(yù)先設(shè)定的文字大小,文本的段落屬性和頁面屬性進(jìn)行變換得到標(biāo)準(zhǔn)的Solr文本;步驟2:對(duì)標(biāo)準(zhǔn)Solr文本進(jìn)行表格分割,形成能夠橫向和縱向檢索的表格文本;步驟3:用戶通過用戶端輸入查詢指令,查詢指令判斷單元對(duì)輸入的指令進(jìn)行判斷檢索量的大小;步驟4:查詢指令分割單元根據(jù)判斷后的結(jié)果對(duì)查詢指令進(jìn)行分割處理得到細(xì)化查詢指令;步驟5:分配單元對(duì)細(xì)化查詢指令的查詢指令進(jìn)行組合,并把組合的查詢指令進(jìn)行分配給相應(yīng)的索引單元;步驟6:索引單元根據(jù)分配到的查詢指令后對(duì)指令解析傳入到服務(wù)器單元進(jìn)行檢索,返回檢索結(jié)果。
【技術(shù)特征摘要】
1.一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述方法包括如下步驟,步驟1:把Solr文本根據(jù)標(biāo)準(zhǔn)類型進(jìn)行變換成為標(biāo)準(zhǔn)的Solr文本,變換的過程為,把Solr文本根據(jù)預(yù)先設(shè)定的文字大小,文本的段落屬性和頁面屬性進(jìn)行變換得到標(biāo)準(zhǔn)的Solr文本;步驟2:對(duì)標(biāo)準(zhǔn)Solr文本進(jìn)行表格分割,形成能夠橫向和縱向檢索的表格文本;步驟3:用戶通過用戶端輸入查詢指令,查詢指令判斷單元對(duì)輸入的指令進(jìn)行判斷檢索量的大小;步驟4:查詢指令分割單元根據(jù)判斷后的結(jié)果對(duì)查詢指令進(jìn)行分割處理得到細(xì)化查詢指令;步驟5:分配單元對(duì)細(xì)化查詢指令的查詢指令進(jìn)行組合,并把組合的查詢指令進(jìn)行分配給相應(yīng)的索引單元;步驟6:索引單元根據(jù)分配到的查詢指令后對(duì)指令解析傳入到服務(wù)器單元進(jìn)行檢索,返回檢索結(jié)果。2.根據(jù)權(quán)利要求1所述的一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述步驟2中表格分割的具體過程為,把標(biāo)準(zhǔn)Solr文本頁面平均分割成為大小相同的網(wǎng)格,網(wǎng)格的大小為字體大小所占頁面面積大小的整數(shù)倍,并在網(wǎng)格的頂端和左端加入橫向和縱向的檢索表頭。3.根據(jù)權(quán)利要求1所述的一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述步驟3中指令判斷的具體過程為,先統(tǒng)計(jì)查詢指令頭的數(shù)量,然后再對(duì)每個(gè)指令頭內(nèi)的檢索數(shù)據(jù)進(jìn)行統(tǒng)計(jì),并把指令頭的數(shù)量和每個(gè)指令頭中的檢索數(shù)據(jù)與預(yù)先設(shè)定的數(shù)值比較,當(dāng)數(shù)據(jù)比預(yù)先設(shè)定的大時(shí),對(duì)該指令頭進(jìn)行標(biāo)記需要分割,當(dāng)?shù)扔诨蛘卟淮笥跁r(shí),標(biāo)記不需要分割。4.根據(jù)權(quán)利要求3所述的一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述步驟4分割的過程為,根據(jù)標(biāo)記的需要分割指令頭的內(nèi)部數(shù)據(jù)進(jìn)行分割成為若干份,并對(duì)分割后的若干份數(shù)據(jù)進(jìn)行賦予原來的指令頭,形成若干個(gè)分割指令。5.根據(jù)權(quán)利要求4所述的一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢方法,其特征在于:所述步驟5中分配的具體過程為:以查詢指令頭進(jìn)行作為分配的單位,把查詢的數(shù)據(jù)為相同或者相近的查詢指令分配到同一個(gè)索引單元。6.一種針對(duì)SolrCloud的大數(shù)據(jù)SQL查詢系統(tǒng),其特征在于:所述系統(tǒng)包括用戶端,用于供用戶輸入查詢指令和查看查詢結(jié)果數(shù)據(jù);查詢指令判斷單元,用于統(tǒng)計(jì)分析查詢指令是否需要分割處理,當(dāng)需要分割處理時(shí)進(jìn)行標(biāo)記,不需要分割處理時(shí)也標(biāo)記上不需要分割處理;查詢指令分割單元,用于根據(jù)查詢...
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:潘麗華,王莉莉,
申請(qǐng)(專利權(quán))人:潘麗華,
類型:發(fā)明
國別省市:湖南,43
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。