[發明專利]一種非關系型數據庫的數據查詢方法和裝置有效
| 申請號: | 201210214550.4 | 申請日: | 2012-06-27 |
| 公開(公告)號: | CN103514201B | 公開(公告)日: | 2017-05-03 |
| 發明(設計)人: | 毛世杰;張俊 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 北京鑫媛睿博知識產權代理有限公司11297 | 代理人: | 龔家驊 |
| 地址: | 英屬開曼群島大開*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 關系 數據庫 數據 查詢 方法 裝置 | ||
技術領域
本申請涉及計算機技術領域,特別是涉及一種非關系型數據庫的數據查詢方法和裝置。
背景技術
網絡交易平臺一般建立有賣家管理系統,用于對賣家信息進行存儲和管理。隨著交易規模的不斷擴大,傳統的關系型數據庫已經不能滿足賣家管理系統對高擴展性的要求。因此,現有的賣家管理系統通常采用非關系型數據庫來實現數據存儲。非關系型數據庫一般采用Key-Value(主鍵和值)的存儲方式,在數據查詢的過程中,一般根據主鍵查找對應的值。
在賣家管理系統中,需要對幾乎賣家的所有信息數據進行存儲、分類、篩選。因此,要求賣家管理系統的數據庫至少支持一些實時的、簡單的、輕量級的條件查詢功能,如lesser(小于)、greater(大于)、equa1(等于)、not equa1(不等于)、in(在范圍內)、and(和)、or(或)等。
在實現本申請的過程中,發明人發現,現有技術至少存在如下問題:現有技術的非關系型數據庫在進行條件查詢的時候,需要遍歷整個數據庫,讀取所有值,并對數據庫中每個值都進行相應的判斷,以獲取符合查詢條件的結果,這種查詢方式,其效率非常低下。
發明內容
本申請的目的在于,提供一種非關系型數據庫的數據查詢方法和裝置,以提高非關系型數據庫進行條件查詢的效率,為此,本申請實施例采用如下技術方案:
一種非關系型數據庫的數據查詢方法,其特征在于,預先建立實體表中預設的字段對應的索引表,所述索引表中記錄有實體表中各元組在所述預設的字段中的二進制存儲值按照預設轉換規則轉換得到的索引值,以及對應的實體表主鍵,所述索引表中的各元組按照記錄的索引值的字典順序排列,所述預設轉換規則為所述索引值的字典順序和所述二進制存儲值對應的實際值的大小順序一致,該方法包括:
接收條件查詢指令,所述條件查詢指令中攜帶有至少一個查詢條件以及每個查詢條件的目標查詢字段;
根據所述預設轉換規則,對各查詢條件中的條件值進行轉換;
根據各查詢條件的目標查詢字段對應的各索引表中索引值的排列順序,查詢所述各索引表中符合經過條件值轉換后的查詢條件的索引值,確定在所述各索引表中對應的索引值都符合相應的查詢條件的實體表主鍵,并根據確定出的實體表主鍵,在所述實體表中獲取對應的查詢值。
一種非關系型數據庫的數據查詢裝置,其特征在于,包括:
建立模塊,用于預先建立實體表中預設的字段對應的索引表,所述索引表中記錄有實體表中各元組在所述預設的字段中的二進制存儲值按照預設轉換規則轉換得到的索引值,以及對應的實體表主鍵,所述索引表中的各元組按照記錄的索引值的字典順序排列,所述預設轉換規則為所述索引值的字典順序和所述二進制存儲值對應的實際值的大小順序一致;
接收模塊,用于接收條件查詢指令,所述條件查詢指令中攜帶有至少一個查詢條件以及每個查詢條件的目標查詢字段;
轉換模塊,用于根據所述預設轉換規則,對各查詢條件中的條件值進行轉換;
查詢模塊,用于根據各查詢條件的目標查詢字段對應的各索引表中索引值的排列順序,查詢所述各索引表中符合經過條件值轉換后的查詢條件的索引值,確定在所述各索引表中對應的索引值都符合相應的查詢條件的實體表主鍵,并根據確定出的實體表主鍵,在所述實體表中獲取對應的查詢值。
本申請的實施例中,預先建立實體表中預設的字段對應的索引表,所述索引表中記錄有實體表中各元組在所述預設的字段中的二進制存儲值按照預設轉換規則轉換得到的索引值,以及對應的實體表主鍵,所述索引表中的各元組按照記錄的索引值的字典順序排列,所述預設轉換規則為所述索引值的字典順序和所述二進制存儲值對應的實際值的大小順序一致;接收條件查詢指令,所述條件查詢指令中攜帶有至少一個查詢條件以及每個查詢條件的目標查詢字段;根據所述預設轉換規則,對各查詢條件中的條件值進行轉換;根據各查詢條件的目標查詢字段對應的各索引表中索引值的排列順序,查詢所述各索引表中符合經過條件值轉換后的查詢條件的索引值,確定在所述各索引表中對應的索引值都符合相應的查詢條件的實體表主鍵,并根據確定出的實體表主鍵,在所述實體表中獲取對應的查詢值。從而,可以提高非關系型數據庫進行條件查詢的效率。當然,實施本申請的實施例的任一產品并不一定需要同時達到以上所述的所有優點。
附圖說明
圖1為本申請實施例提供的非關系型數據庫的數據查詢方法的流程示意圖;
圖2為本申請實施例提供的非關系型數據庫的數據查詢方法中進行數據轉換和重新排序的示意圖;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210214550.4/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





