成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

高級SQL優化系列之分組排序優化

數據庫 其他數據庫
PawSQL Cloud,在線自動化SQL優化工具,支持SQL審查,智能查詢重寫、基于代價的索引推薦,適用于數據庫管理員及數據應用開發人員。PawSQL Advisor,IntelliJ 插件, 適用于數據應用開發人員,可以IDEA/DataGrip應用市場通過名稱搜索“PawSQL Advisor”安裝。

問題定義

在如何創建高效的數據庫索引中,我們說到過,可以通過有序的索引(B+tree)來避免排序操作,從而提升查詢的性能。但是如果排序子句或分組子句中的字段來自不同的表,那么數據庫優化器就無法利用索引的有序性來避免一次排序操作。

但是如果能從查詢中推斷出排序字段與另一個表的某個字段具有等值的關系,可以使用此字段來替換原排序字段,從而利用索引的有序性,在進行排序或分組時避免一次排序操作,從而提升SQL查詢性能。

譬如對于以下的SQL查詢:

select customer.* from customer, orders where c_custkey=o_custkey order by c_name, o_custkey;

序字段為 C_NAME, o_custkey,來自不同的兩個表,但是在查詢中條件c_custkey=o_custkey,所以可以用c_custkey來替換o_custkey, 重寫后的SQL如下:

select customer.* from customer, orders where c_custkey=o_custkey order by c_name, c_custkey;

適用條件

分組排序優化是針對查詢塊(Queryblock)來進行的,多個查詢塊可以獨立進行此優化。分組排序優化的適用條件如下:

  • 在一個查詢塊中存在等于或大于2的排序字段或分組字段。
  • 排序字段或分組字段是數據表中的列(無函數或計算)。
  • 排序字段或分組字段來自不同的數據表。
  • 在此查詢塊中可以推導出與排序或分組字段的等值關系。
  • 經過推導替換后的排序或分組字段來自同一個數據表。

性能驗證

  • 重寫優化前的執行計劃如下,可以看到執行時間為10ms,代價7849.64,執行計劃的最后一步是排序操作。

圖片

  • 重寫優化后,排序子句中的o_custkey被替換為c_custkey,執行計劃如下。可以看到,優化后排序操作被消除了,其他部分沒有變化。執行時間減少到2.58ms,性能提升了287.6%。

圖片

PawSQL對此優化的支持

PawSQL針對所有數據庫默認開啟此優化,

  • 自動優化:用戶輸入待優化SQL后,PawSQL對其進行自動化優化,案例SQL的優化詳情如下。

圖片

  • 規則啟用:用戶可以在自己的默認優化設置或是定義每個優化任務的時候自主啟用或禁用該選項。

圖片

關于PawSQL

PawSQL專注數據庫性能優化的自動化和智能化,支持MySQL,PostgreSQL,Opengauss,Oracle等數據庫,提供的SQL優化產品包括

  • PawSQL Cloud,在線自動化SQL優化工具,支持SQL審查,智能查詢重寫、基于代價的索引推薦,適用于數據庫管理員及數據應用開發人員。
  • PawSQL Advisor,IntelliJ 插件, 適用于數據應用開發人員,可以IDEA/DataGrip應用市場通過名稱搜索“PawSQL Advisor”安裝。
  • PawSQL Engine, 是PawSQL系列產品的后端優化引擎,可以以docker鏡像的方式獨立安裝部署,并通過http/json的接口提供SQL優化服務。
責任編輯:姜華 來源: PawSQL
相關推薦

2023-11-03 07:29:51

QL優化分組字段順序優化

2023-10-09 07:42:49

PawSQL數據庫管理

2023-11-28 07:54:18

2015-07-17 16:23:14

MySQL優化

2023-11-07 07:50:55

LIMIT子句下推優化

2023-10-23 09:19:47

PawSQL數據庫

2019-07-25 13:22:43

AndroidAPK文件優化

2013-12-17 16:21:17

iOSiOS性能優化

2016-12-08 15:47:54

sql優化數據

2018-01-09 16:56:32

數據庫OracleSQL優化

2010-06-12 15:31:04

MySQL查詢優化

2022-03-29 13:27:22

Android優化APP

2022-07-19 16:47:53

Android抖音

2021-07-16 23:01:03

SQL索引性能

2011-03-31 11:14:51

Sql語句優化

2016-12-14 19:04:16

Spark SQL優化

2021-03-04 07:24:28

排序算法優化

2009-05-04 09:52:49

Oracle優化排序

2021-07-26 18:23:23

SQL策略優化

2010-07-15 16:42:32

數據庫引擎
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91视频在线 | 美女张开腿露出尿口 | 中文字幕一区二区三区四区 | 日本在线观看视频 | 五月婷婷丁香 | 亚洲一区二区三区在线 | 影音先锋男| 天天躁人人躁人人躁狂躁 | 欧美三区视频 | 日韩精品区 | 欧美寡妇偷汉性猛交 | 国产 日韩 欧美 在线 | caoporn视频| 自拍偷拍一区二区三区 | 欧美一级在线视频 | 日韩在线播放一区 | 精品久久99 | 日韩欧美在线播放 | 久久久蜜桃 | 羞羞视频免费观看 | 亚洲乱码一区二区三区在线观看 | 日韩一级精品视频在线观看 | 久久久国产一区二区三区四区小说 | 99热欧美 | 国产精品国产 | 成人天堂 | 国产主播第一页 | 成人精品一区二区三区 | 在线日韩欧美 | 久久久久久久av | 亚洲精品99| av黄色在线 | 欧美精品一区二区在线观看 | 青草青草久热精品视频在线观看 | 日韩av在线一区二区 | 欧美日韩精品 | 青青久久久 | 免费精品 | 欧美色专区 | 日韩电影在线一区 | 中文字幕在线三区 |