[發明專利]數據庫查詢方法及裝置在審
| 申請號: | 201410621118.6 | 申請日: | 2014-11-06 |
| 公開(公告)號: | CN105574052A | 公開(公告)日: | 2016-05-11 |
| 發明(設計)人: | 陳波 | 申請(專利權)人: | 中興通訊股份有限公司 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 深圳市世紀恒程知識產權代理事務所 44287 | 代理人: | 胡海國 |
| 地址: | 518057 廣東省深圳市南山*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據庫 查詢 方法 裝置 | ||
技術領域
本發明涉及計算機技術領域,尤其涉及數據庫查詢方法及裝置。
背景技術
數據庫通常包括用于存儲數據值的一個或多個數據庫表格。為了在數據 庫中檢索和操縱數據,用戶、應用程序或遠程系統通常向數據庫管理系統發 出數據庫查詢。數據庫查詢是指用于檢索存儲在數據庫中的數據的語句、命 令或子句的集合。例如,查詢可以在數據庫中指定檢索數據的特定位置(例 如,表格、行或列),或者指定如何聯接來自多個表格的列。
對于多表查詢,由于一條連接查詢語句只能用到一個數據庫連接,對于 強大的數據庫服務器和存儲設備,只能使用到其中很小的處理能力;如果所 連接查詢的表個數多、每個表數據量大,則查詢效率很低。
發明內容
本發明的主要目的在于提供一種數據庫查詢方法及裝置,旨在.解決查詢 多表時,數據庫查詢的查詢低效率問題。
為實現上述目的,本發明提供的一種數據庫查詢方法,包括以下步驟:
接收對數據庫多表連接查詢的請求,根據請求構造多條針對單表的結構 化查詢語句;
根據當前數據庫資源,分配相應的數據庫連接,用于數據庫的連接查詢;
按預設的分配規則,將所述結構化查詢語句分配給所述數據庫連接對應 的線程執行;
接收所述線程執行結構化查詢語句后返回的結果集;
從結果集中獲取數據,同時拼接所獲取的數據,獲得查詢結果。
優選地,所述接收對數據庫多表連接查詢的請求,根據請求構造多條針 對單表的結構化查詢語句之后還包括:
根據預設的排序規則對結構化查詢語句的關鍵字段排序。
優選地,所述接收對數據庫多表連接查詢的請求,根據請求構造多條針 對單表的結構化查詢語句之后還包括:
根據預設的分段規則對結構化查詢語句的關鍵字段的范圍進行分段和按 分段的結果對所述結構化查詢語句進行處理,生成每個分段所對應的結構化 查詢語句;
按預設的分配規則,將所述結構化查詢語句分配給所述數據庫連接對應 的線程執行的步驟包括:
按照分段順序,將所述每個分段所對應的結構化查詢語句按預設的分配 規則分配給所述數據庫連接對應的線程執行,且屬于同一分段的結構化查詢 語句執行結束后,再執行下一分段的結構化查詢語句。
優選地,所述預設的分配規則包括:
當未分配的結構化查詢語句為x個,剩余線程為y時,則對x/y進行取整, 獲得整數z,將z條結構化查詢語句分配到剩余線程中的一個;循環執行該步 驟,直到所有的線程分配結束。
優選地,所述根據當前數據庫資源,分配相應的數據庫連接,用于數據 庫的連接查詢的步驟包括:
當剩余用于查詢功能的數據庫連接為m個,剩余用戶查詢并發度為n時, 則對m/n進行取整,獲得整數a,所述結構化查詢語句有b條,對a和b取最 小值c,則為所述數據庫多表連接查詢的請求分配c個數據庫連接,用于數據 庫的連接查詢;或者,
根據數據庫服務器、存儲設備的性能、當前用戶查詢并發度和用戶查詢 最大并發度中的一個或多個資源,為所述數據庫多表連接查詢的請求分配相 應的數據庫連接,用于數據庫的連接查詢。
此外,為實現上述目的,本發明還提供一種數據庫查詢裝置,所述數據 庫查詢裝置包括:
構造模塊,接收對數據庫多表連接查詢的請求,根據請求構造多條針對 單表的結構化查詢語句;
數據庫連接分配模塊,用于根據當前數據庫資源,分配相應的數據庫連 接,用于數據庫的連接查詢;
結構化查詢語句分配模塊,用于按預設的分配規則,將所述結構化查詢 語句分配給所述數據庫連接對應的線程執行;
接收模塊,用于接收所述線程執行結構化查詢語句后返回的結果集;
拼接模塊,用于從結果集中獲取數據,同時拼接所獲取的數據,獲得查 詢結果。
優選地,所述數據庫查詢裝置還包括:
排序模塊,用于根據預設的排序規則對結構化查詢語句的關鍵字段排序。
優選地,所述數據庫查詢裝置還包括:
分段模塊,用于根據預設的分段規則對結構化查詢語句的關鍵字段的范 圍進行分段和按分段的結果對所述結構化查詢語句進行處理,生成每個分段 所對應的結構化查詢語句;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中興通訊股份有限公司,未經中興通訊股份有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201410621118.6/2.html,轉載請聲明來源鉆瓜專利網。





