[發明專利]數據庫索引創建方法及裝置有效
| 申請號: | 201610920814.6 | 申請日: | 2016-10-21 |
| 公開(公告)號: | CN107016019B | 公開(公告)日: | 2021-02-23 |
| 發明(設計)人: | 王明;葉正盛 | 申請(專利權)人: | 阿里巴巴集團控股有限公司 |
| 主分類號: | G06F16/22 | 分類號: | G06F16/22 |
| 代理公司: | 北京三友知識產權代理有限公司 11127 | 代理人: | 黨曉林;李輝 |
| 地址: | 英屬開曼*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 數據庫 索引 創建 方法 裝置 | ||
本申請公開了一種數據庫索引創建方法及裝置,其中該方法包括按如下方式對數據庫的每一結構化查詢語言SQL語句創建數據庫索引:確定一SQL語句中每一查詢條件字段的字段信息;根據所述每一查詢條件字段的字段信息,計算所述每一查詢條件字段的權重;根據所述每一查詢條件字段的權重,為該SQL語句創建數據庫索引。本申請可以在自動進行數據庫索引創建過程中避免業務場景及數據庫中無有效數據分布對數據庫索引創建的影響。
技術領域
本申請涉及數據庫技術領域,尤其涉及數據庫索引創建方法及裝置。
背景技術
數據庫(Database)按照數據結構來組織、存儲和管理數據。數據庫索引對數據庫表中一列或多列的值進行排序并建立目錄,使用數據庫索引可以快速訪問數據庫表中的特定信息。
數據庫索引的創建和維護是DBA(Database Administrator,數據庫管理員)日常業務中不可取代的工作。DBA的主要日常工作之一是SQL(Structured Query Language,結構化查詢語言)調優,SQL調優的重要手段之一是給查詢慢的SQL建立合適的數據庫索引。數據庫索引的建立需要對業務場景有一定了解,并需要一定的數據庫經驗,對業務場景的了解程度和數據庫經驗的豐富程度對線上應用的性能影響非常巨大。隨著業務場景規模的不斷擴大,DBA不可能了解所有業務,這樣數據庫索引的建立就會脫離實際業務需求,造成數據庫索引創建的效率不高,隨時會影響線上業務應用的正常運轉。同時,數據庫索引的建立和維護工作也占用了DBA大量時間。
現有技術中提出一種基于有效數據分布的數據庫索引自動創建的方案,然而在該方案中數據庫索引的建立需要基于數據庫中的有效數據分布,并且要求盡量真實模擬線上數據分布,那么在新數據庫或者新業務上線的時候,由于沒有任務業務數據寫入,缺少數據庫的有效數據分布,這種基于有效數據分布的數據庫索引建立方案就有些缺陷了,二者的矛盾是數據庫索引需要業務上線前建立好,而數據庫索引的建立又依賴業務中的有效數據分布。
發明內容
本申請實施例提供一種數據庫索引創建方法,在自動進行數據庫索引創建過程中避免業務場景及數據庫中無有效數據分布對數據庫索引創建的影響,該方法包括按如下方式對數據庫的每一結構化查詢語言SQL語句創建數據庫索引:
確定一SQL語句中每一查詢條件字段的字段信息;
根據所述每一查詢條件字段的字段信息,計算所述每一查詢條件字段的權重;
根據所述每一查詢條件字段的權重,對該SQL語句中查詢條件字段進行排序;
根據排序后的查詢條件字段為該SQL語句創建數據庫索引。
本申請實施例還提供一種數據庫索引創建裝置,用以在自動進行數據庫索引創建過程中避免業務場景及數據庫中無有效數據分布對數據庫索引創建的影響,該裝置包括:
字段信息確定模塊,用于在對數據庫的每一SQL語句創建數據庫索引時,確定一SQL語句中每一查詢條件字段的字段信息;
權重計算模塊,用于根據所述每一查詢條件字段的字段信息,計算所述每一查詢條件字段的權重;
字段排序模塊,用于根據所述每一查詢條件字段的權重,對該SQL語句中查詢條件字段進行排序;
索引創建模塊,用于根據排序后的查詢條件字段為該SQL語句創建數據庫索引。
本申請實施例提供一種數據庫索引創建方法,在自動進行數據庫索引創建過程中避免業務場景及數據庫中無有效數據分布對數據庫索引創建的影響,該方法包括按如下方式對數據庫的每一結構化查詢語言SQL語句創建數據庫索引:
確定一SQL語句中每一查詢條件字段的字段信息;
根據所述每一查詢條件字段的字段信息,計算所述每一查詢條件字段的權重;
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于阿里巴巴集團控股有限公司,未經阿里巴巴集團控股有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201610920814.6/2.html,轉載請聲明來源鉆瓜專利網。





