[發明專利]索引構建方法和JSON數據查詢方法在審
| 申請號: | 202010521663.3 | 申請日: | 2020-06-10 |
| 公開(公告)號: | CN111797095A | 公開(公告)日: | 2020-10-20 |
| 發明(設計)人: | 肖孝云;潘岳;張清偉;胡進;鄭博文;張浩然 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22;G06F16/2455 |
| 代理公司: | 北京東方億思知識產權代理有限責任公司 11258 | 代理人: | 趙秀芹 |
| 地址: | 開曼群島*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 索引 構建 方法 json 數據 查詢 | ||
本發明公開了一種索引構建方法和JSON數據查詢方法。該JSON數據查詢方法包括:獲取查詢請求,查詢請求包括查詢目標和查詢條件,查詢條件包括第一目標關鍵字以及第一目標關鍵字對應的第一目標值;根據第一目標關鍵字、第一目標值和查詢目標,從內存中存儲的JSON數據中進行數據查找,得到第一查詢結果;從第一目標關鍵字關聯的索引數據中,篩選出與第一目標值對應的第一目標索引;根據第一目標索引和查詢目標,從磁盤中存儲的JSON數據中得到第二查詢結果。根據本發明實施例能夠提高對JSON數據的查詢精度和查詢效率。
技術領域
本申請涉及數據處理領域,尤其涉及一種索引構建方法和JSON數據查詢方法。
背景技術
JS對象簡譜(JavaScript Object Notation,JSON)是一種輕量級的數據交換格式,采用完全獨立于編程語言的文本格式來存儲和表示數據。JSON數據以其易用性,越來越廣泛的被各個服務系統使用。同時隨著JSON數據急劇增長,產生了將JSON數據作為一種基礎數據類型使用的強烈需求。比如,ElasticSearch作為一個分布式搜索服務器,是分析型數據庫,天生支持JSON數據類型,能夠比較方便的處理這種半結構化數據。而MySQL是一種開放源代碼的關系型數據庫管理系統,也是分析型數據庫,也支持了JSON數據類型。
目前,在對分析型數據庫中的JSON數據進行檢索的場景下,有些數據庫不支持對JSON數據構建索引,需要用戶手動創造索引字段,降低了查詢效率。并且由于用戶新寫入的JSON數據有一段時間的延遲,導致查詢不到最新的JSON數據,降低了查詢精度。
發明內容
本發明實施例提供一種索引構建方法和JSON數據查詢方法,能夠提高對JSON數據的查詢精度和查詢效率。
第一方面,本發明實施例提供一種索引構建方法,該方法包括:
獲取目標JSON數據;
對目標JSON數據進行解析,得到具有原始數據類型的第一目標數據,第一目標數據包括第一關鍵字和第一關鍵字對應的第一值;
基于預先建立的值類型與索引構建方式的對應關系,以及第一值的值類型,確定目標索引構建方式;
基于目標索引構建方式,構建第一值對應的目標索引,目標索引與第一關鍵字關聯,目標索引用于指示目標JSON數據的存儲位置。
第二方面,本發明實施例提供一種JSON數據查詢方法,該方法包括:
獲取查詢請求,查詢請求包括查詢目標和查詢條件,查詢條件包括第一目標關鍵字以及第一目標關鍵字對應的第一目標值;
根據第一目標關鍵字、第一目標值和查詢目標,從內存中存儲的JSON數據中進行數據查找,得到第一查詢結果;
從第一目標關鍵字關聯的索引數據中,篩選出與第一目標值對應的第一目標索引;
根據第一目標索引和查詢目標,從磁盤中存儲的JSON數據中得到第二查詢結果。
第三方面,本發明實施例提供一種索引構建裝置,該裝置包括:
目標JSON數據獲取模塊,用于獲取目標JSON數據;
解析模塊,用于對目標JSON數據進行解析,得到具有原始數據類型的第一目標數據,第一目標數據包括第一關鍵字和第一關鍵字對應的第一值;
目標索引構建方式確定模塊,用于基于預先建立的值類型與索引構建方式的對應關系,以及第一值的值類型,確定目標索引構建方式;
索引構建模塊,用于基于目標索引構建方式,構建第一值對應的目標索引,目標索引與第一關鍵字關聯,目標索引用于指示目標JSON數據的存儲位置。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/202010521663.3/2.html,轉載請聲明來源鉆瓜專利網。





