[發明專利]數據查詢方法和裝置在審
| 申請號: | 201711309217.0 | 申請日: | 2015-10-21 |
| 公開(公告)號: | CN108170726A | 公開(公告)日: | 2018-06-15 |
| 發明(設計)人: | 郭益君;畢杰山 | 申請(專利權)人: | 華為技術有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 518129 廣東*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 索引數據 查詢數據 主鍵 查詢 查詢請求 二級索引 索引列 方法和裝置 查詢效率 目標索引 數據查詢 主索引 客戶端提供 數據庫領域 查詢目標 過程操作 獲取目標 目標行 記錄 客戶 | ||
本發明是關于一種數據查詢方法和裝置,屬于數據庫領域。所述方法包括:接收客戶端的查詢請求,查詢請求中包含有查詢數據;根據查詢請求查詢主索引的目標二級索引,得到查詢數據對應的目標行主鍵;從主索引中獲取目標行主鍵對應的目標索引行中的索引數據;向客戶端提供目標索引行中的索引數據。本發明通過查詢數據查詢目標二級索引,該目標二級索引中的第一索引列中記錄有至少兩個第二索引列中的索引數據,得到查詢數據對應的行主鍵,再獲取該行主鍵對應的索引數據,解決了相關技術中在進行查詢時,查詢效率較低的問題;達到了進行一次查詢就能夠查詢多個第二索引列中的索引數據的效果,查詢過程操作簡單,查詢效率較高。
技術領域
本發明涉及數據庫領域,特別涉及一種數據查詢方法和裝置。
背景技術
數據庫表是數據庫中用于存儲數據的對象,數據庫表中通常以行和列的形式存儲著多個值,一行數據為一個記錄(例如在通訊錄數據庫中某個人全部的信息),一列數據(一個字段)記錄有該數據庫表中同一數據類型的所有值(如通訊錄數據庫中所有人的家庭住址)。在數據庫表中查詢數據時,為了更快的獲取想要獲取的整行數據,通常需要建立索引。索引是對數據庫表中一列或多列的值進行排序的一種結構。索引通常包括主索引(一級索引)和二級索引,主索引記錄有數據庫表中的所有行的數據,其中,每行數據稱為一個索引行,每列數據稱為一個索引列,每行數據中的任一索引數據都對應于該行的行主鍵(Rowkey),二級索引通常是根據主索引中的索引列與這索引列中每個索引數據對應的行主鍵建立的。
相關技術中有一種數據查詢方法,在該方法中,客戶端在不知道查詢數據(該查詢數據是客戶端想要獲取的整行數據中的一個索引數據)的所屬索引列時,需要查詢根據該查詢數據多個可能所屬的索引列建立的多個二級索引,而每查詢一個二級索引,客戶端就要向服務端(數據庫位于服務端)發送一次查詢請求(包含有查詢數據),服務端在接收到這一查詢請求后,會查詢對應的二級索引,在查詢完多個二級索引后,服務端向客戶端返回多次查詢的結果(若查詢到多個二級索引中存在該查詢數據,則獲取該查詢數據對應的行主鍵,根據該行主鍵查詢主索引得到行主鍵對應的整行數據,最后向客戶端返回該整行數據,若在多個二級索引中未查詢到該查詢數據,則向客戶端返回沒有滿足條件的數據的指示)。例如:查詢數據為電話號碼,作為查詢數據的電話號碼可能屬于主索引中手機號碼、家庭號碼和辦公號碼這三列數據中的任一列,客戶端在查詢時需要根據電話號碼向服務端發送查詢根據手機號碼、家庭號碼和辦公號碼這三列數據建立的三個二級索引的三個請求,服務端會根據查詢這三個索引的三個請求分別查詢這三個索引,之后服務端向客戶端返回查詢這三個索引的查詢結果。
發明人在實現本發明的過程中,發現上述方式至少存在如下缺陷:上述方式在進行查詢時,需要分別查詢多個二級索引,查詢過程的操作成倍增長,查詢效率較低。
發明內容
為了解決相關技術中在進行查詢時,需要分別查詢多個二級索引,查詢過程的操作成倍增長,查詢效率較低的問題,本申請提供了一種數據查詢方法和裝置。所述技術方案如下:
第一方面,提供一種數據查詢方法,所述方法包括:
數據庫端接收客戶端發送的包含有查詢數據的查詢請求,查詢數據為主索引中記錄的一個索引數據;
數據庫端根據接收到的查詢請求查詢主索引中的目標二級索引,得到查詢數據對應的目標行主鍵,其中目標二級索引包含有第一索引列,該第一索引列中記錄了主索引中至少兩個第二索引列中的索引數據,且每個第二索引列中的每個索引數據各自與主索引中的一個行主鍵對應,第一索引列是指二級索引中的索引列,第二索引列是指主索引中的索引列;
數據庫端在獲取了目標行主鍵后,根據目標行主鍵查詢主索引,并獲取目標行主鍵對應的目標索引行中的索引數據,該目標索引行中的索引數據為客戶端想要獲取的數據;
數據庫端向客戶端提供目標索引行中的索引數據完成數據的查詢。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于華為技術有限公司,未經華為技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201711309217.0/2.html,轉載請聲明來源鉆瓜專利網。





