[發明專利]一種基于Spark SQL的分布式全文檢索系統及方法有效
| 申請號: | 201710269870.2 | 申請日: | 2017-04-24 |
| 公開(公告)號: | CN107122443B | 公開(公告)日: | 2019-09-17 |
| 發明(設計)人: | 許利杰;崔光范;劉杰;馬志柔;吳懷林;葉丹 | 申請(專利權)人: | 中國科學院軟件研究所 |
| 主分類號: | G06F16/33 | 分類號: | G06F16/33 |
| 代理公司: | 北京科迪生專利代理有限責任公司 11251 | 代理人: | 楊學明;顧煒 |
| 地址: | 100190 *** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 基于 sparksql 分布式 全文 檢索系統 方法 | ||
1.一種基于Spark SQL的分布式全文檢索系統,其特征在于:包括SQL翻譯層、數據源管理層、并行計算層、分布式存儲層;
SQL翻譯層定義了全文檢索文法,包括索引建立文法和查詢文法,通過接收用戶輸入的全文檢索SQL語句,翻譯轉換為對索引數據源的接口調用;該層包括文法解析模塊、元數據綁定和校驗模塊、計劃樹優化模塊、物理計劃生成模塊和物理計劃執行模塊;文法解析模塊首先對輸入的SQL語句進行切分,去掉空格形成詞序數組;之后根據全文檢索文法,提取詞序數組中的關鍵信息,在索引建立過程中,關鍵信息包括原表名、索引表名、索引列、存儲模型,在查詢過程中,關鍵信息包括索引表名、返回結果包含的列名、查詢類型、查詢條件,這些關鍵信息分別形成一個語法節點,最終形成一顆語法樹;然后對語法樹進行遍歷,對索引建立語句形成的語法樹中原表名節點轉換為未關聯元數據的數據源節點,索引列節點轉換為映射節點,索引表名和存儲模型節點轉換為索引建立節點,形成邏輯計劃樹;對查詢語句形成的語法樹中索引表名節點轉換為未關聯元數據的數據源節點,返回結果包含的列名節點轉換為映射節點,查詢類型和查詢條件語法樹節點轉換為查詢條件計劃樹節點,形成邏輯計劃樹;元數據綁定和校驗模塊對文法解析模塊生成的邏輯計劃樹中實際類型為表、列、視圖的節點與元數據倉庫進行關聯,校驗成功的同時將這些節點替換為關聯元數據的數據源節點;計劃樹優化模塊僅對索引查詢的計劃樹進行優化,該計劃樹優化模塊將查詢條件計劃樹節點利用過濾下推技術下推到數據源節點并去掉計劃樹中的查詢條件計劃樹節點,同時利用列裁剪技術將映射節點包含的映射內容下推到數據源節點并去掉計劃樹中的映射節點;在索引建立過程中,物理計劃生成模塊合并數據源節點、映射節點和索引建立節點生成索引建立物理計劃節點,在查詢過程中,將數據源節點轉換為掃描數據源物理計劃節點,生成物理計劃樹;在索引建立過程中,物理計劃執行模塊將索引建立物理計劃節點轉化為對索引數據源索引建立接口的調用,調用參數包含了原表名、索引列、存儲模型和索引表名,然后索引表的元數據信息中加入原表的名稱并存入元數據倉庫,在查詢過程中,物理計劃執行模塊將掃描數據源物理計劃節點轉化為對索引數據源查詢接口的調用,調用參數包含了索引表名、查詢類型和條件、返回結果包含的列名;
數據源管理層,根據SQL翻譯層對索引數據源的接口調用,轉換為索引建立或查詢的數據處理邏輯,交給并行計算層執行;數據源管理層包括數據源管理模塊和檢索優化模塊;數據源管理模塊管理目前Spark支持的所有數據源,根據SQL翻譯層的索引數據源調用,實例化索引數據源,索引數據源包含全文檢索過程的并行化方法即索引建立過程并行化和查詢過程并行化;數據源管理模塊將實例化的索引數據源傳入檢索優化模塊對索引數據源中的索引建立和查詢過程進行優化,檢索優化模塊針對索引建立過程設計了兩種存儲模型,包括全量存儲模型和索引指定列存儲模型,針對查詢過程為與存儲模型相對應的原表數據還原策略,原表數據還原策略的輸出為得分與相對應的原表數據拼接后的結果,其中,基于索引指定列存儲模型為一種用于在查詢時還原原表數據、復雜度為O(n)的分區對齊連接算法,該算法獲取原表數據并與得分數據進行拼接;最終,檢索優化模塊的輸出為優化過的索引建立或查詢過程的數據處理邏輯,交給并行計算層;
并行計算層,接收數據源管理層的數據處理邏輯,生成作業,并對作業進行規劃,分配集群資源,將作業數據處理邏輯分發到每個物理機器上,之后,各物理機器上并行執行作業;
分布式存儲層接收并行計算層對于文件讀寫的接口調用,采用分布式讀寫的方式進行索引的建立和查詢,建立的索引和查詢的結果都存儲在分布式索引層,并返回執行結果。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院軟件研究所,未經中國科學院軟件研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710269870.2/1.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種分布式數據庫及其訪問方法
- 下一篇:一種法律知識圖譜自動構建方法





