905
微信
性能壓測注意事項__快速入門_雲數據庫 HybridDB-阿裏雲
雲數據庫HybridDB(ApsaraDB HybridDB)是一種在線MPP大規模並行處理數據倉庫服務。雲數據庫HybridDB基於Greenplum Database開源數據庫項目,並由阿裏雲深度擴展支持OSS存儲、JSON數據類型、HyperLogLog預估分析等功能特性。
性能方麵注意事項
使用 雲數據庫HybridDB 時,在性能方麵需要注意以下事項:
1) 雲數據庫HybridDB 實例缺省狀態下,沒有啟用 Nested Loop(嵌套連接)。因此,對於隻涉及或返回少部分數據的查詢,性能可能不是最優的。例如下麵的SQL語句。
select * from T1 join T2 on T1.c1 = T2.c1 where T1.c2 >= '230769548' and T1.c2 < '230769549' limit 100;
其特點是T1和T2表都比較大,T1上的選擇條件(T1.c2 >= ‘230769548’ and T1.c2 < ‘23432442’)過濾了絕大多數數據記錄,且有LIMIT子句,所以查詢實際上隻涉及總數據量中的一小部分。這種情況下,使用Nested Loop的連接方式是最優的。要使用Nested Loop連接,需要執行一下SET命令,如下所示。
show enable_nestloop ;
enable_nestloop
-----------------
off
SET enable_nestloop = on ;
show enable_nestloop ;
enable_nestloop
-----------------
on
explain select * from T1 join T2 on T1.c1 = T2.c1 where T1.c2 >= '230769548' and T1.c2 < '23432442' limit 100;
QUERY PLAN
-----------------------------------------------------------------------------------------------
Limit (cost=0.26..16.31 rows=1 width=18608)
-> Nested Loop (cost=0.26..16.31 rows=1 width=18608)
-> Index Scan using T1 on c2 (cost=0.12..8.14 rows=1 width=12026)
Filter: ((c2 >= '230769548'::bpchar) AND (c2 < '230769549'::bpchar))
-> Index Scan using T2 on c1 (cost=0.14..8.15 rows=1 width=6582)
Index Cond: ((c1)::text = (T1.c1)::text)
可以發現,T1和T2兩張表是使用Nested Loop連接的,從而獲得了最優的性能。
2)雲數據庫HybridDB 支持 ORCA 優化器。當執行一個較複雜的 SQL,並且發現性能不理想時,可以試試啟用ORCA優化器進行優化。在數據庫連接中,執行一個SET命令,即可啟用ORCA(如下所示)。注意,SET命令作用在連接級別,隻在同一連接內有效,對於新的連接需要重新執行SET,來啟用ORCA。
EXPLAIN <SQL text>
SET optimizer = on;
EXPLAIN <SQL text>
在上麵的例子中,我們在啟用ORCA前後,分別使用EXPLAIN命令來查看查詢計劃。這樣可以檢查ORCA是否真正改變了SQL的查詢計劃。
3)目前 雲數據庫HybridDB 的存儲支持兩種壓縮方式:zlib和RLE。RLE適用於數據中的相同值在物理上是連續存儲的情況,zlib適用於其他情況。壓縮方式可以在字段級別或表級別指定。具體參見文檔
最後更新:2016-12-01 11:11:36
上一篇:
通過COPY數據導入__快速入門_雲數據庫 HybridDB-阿裏雲
下一篇:
客戶端工具使用__快速入門_雲數據庫 HybridDB-阿裏雲
阿裏雲數據集成__數據傳輸軟件_開發人員指南_E-MapReduce-阿裏雲
類目管理__媒體庫管理_開發人員指南_視頻點播-阿裏雲
查詢App錄製配置__直播流操作接口_API 手冊_CDN-阿裏雲
運行SQL__快速開始_大數據計算服務-阿裏雲
創建環境變量__API分組相關接口_API_API 網關-阿裏雲
OSS轉儲快速使用__快速入門_歸檔存儲-阿裏雲
如何備案?__備案基礎介紹_備案須知_備案-阿裏雲
高速通道相關API的鑒權規則__借助RAM實現子賬號對主賬號資源訪問_API使用手冊_高速通道-阿裏雲
下載SDK__快速開始_移動數據分析-阿裏雲
視頻管理__使用手冊_視頻點播-阿裏雲
相關內容
常見錯誤說明__附錄_大數據計算服務-阿裏雲
發送短信接口__API使用手冊_短信服務-阿裏雲
接口文檔__Android_安全組件教程_移動安全-阿裏雲
運營商錯誤碼(聯通)__常見問題_短信服務-阿裏雲
設置短信模板__使用手冊_短信服務-阿裏雲
OSS 權限問題及排查__常見錯誤及排除_最佳實踐_對象存儲 OSS-阿裏雲
消息通知__操作指南_批量計算-阿裏雲
設備端快速接入(MQTT)__快速開始_阿裏雲物聯網套件-阿裏雲
查詢API調用流量數據__API管理相關接口_API_API 網關-阿裏雲
使用STS訪問__JavaScript-SDK_SDK 參考_對象存儲 OSS-阿裏雲