原創(chuàng)|行業(yè)資訊|編輯:陳俊吉|2016-05-30 10:32:17.000|閱讀 238 次
概述:IBM Big SQL 是SQL on Hadoop 的方案,它的核心引擎沿用了DB2的技術(shù),因此,Big SQL的優(yōu)化與DB2類似。由于Big SQL本身不擁有數(shù)據(jù)(數(shù)據(jù)在HDFS),所以它自身的優(yōu)化選項要比DB2少,但同時要注意優(yōu)化Hadoop/HDFS。
# 界面/圖表報表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
對于Big SQL的優(yōu)化,您需要注意以下六個方面:
在進(jìn)行集群的物理設(shè)計需要考慮數(shù)據(jù)節(jié)點的配置要一致,避免某個數(shù)據(jù)節(jié)點性能短板而影響整體性能。而對于管理節(jié)點,它雖然不保存業(yè)務(wù)數(shù)據(jù),但作為管理服務(wù)和BigSQL系統(tǒng)包空間的存儲,也需要配置一定數(shù)量的磁盤。另外,CPU/內(nèi)存/磁盤的配比要合理,用戶可以參考以下配置作為物理設(shè)計的基礎(chǔ):
CPU:16核
內(nèi)存:128GB
硬盤:600GB * 2塊(系統(tǒng)使用),數(shù)據(jù)節(jié)點3TB * 12塊/管理節(jié)點3TB* 12塊
為了達(dá)到更高的I/O吞吐量,您需要盡量將數(shù)據(jù)分到多塊磁盤上。具體來說,您需要這樣的設(shè)置:
注意bigsql_db_dir 目錄在Big SQL的Head Node和Worker Node都需要具體同樣的路徑。
Big SQL支持多種格式,包括TEXT、SEQUENCE、RC、PARQUET、Avro、ORC等存儲格式。BigSQL會自動根據(jù)文件格式選擇相應(yīng)的Reader以求最佳性能。選擇存儲格式需要在加載速度/壓縮比/查詢性能/收集統(tǒng)計信息速度之間折中。不同的存儲格式之間對比請參考《BigSQL支持的存儲格式和對應(yīng)的建表語句》。
對于Big SQL,Parquet通常是最優(yōu)的存儲格式。
每個節(jié)點上Big SQL所需內(nèi)存等同于DB2的INSTANCE_MEMORY,推薦的取值范圍是系統(tǒng)可用內(nèi)存的25%~75%。需要注意的是Big SQL和MapReduce之間是共用系統(tǒng)內(nèi)存的,如果Big SQL分配內(nèi)存較多,那么MapReduce可用內(nèi)存就少了,就有可能影響MR作業(yè)的性能。
Big SQL的Buffer pool只用于緩存臨時數(shù)據(jù)而不緩存用戶數(shù)據(jù),這點與DB2有很大差異,對于排序堆相關(guān)的管理則與DB2一致。建議開啟STMM(自調(diào)優(yōu)內(nèi)存管理器)運(yùn)行一段時間,然后在工作負(fù)載和STMM調(diào)優(yōu)的參數(shù)穩(wěn)定之后再關(guān)閉。
Big SQL沿用了DB2的SQL重寫和基于成本的優(yōu)化等功能。對于優(yōu)化器選擇成本最低的執(zhí)行計劃,統(tǒng)計信息起到關(guān)鍵作用。因此,每次數(shù)據(jù)發(fā)生較大變化時需要及時收集對應(yīng)表的統(tǒng)計信息。
另外,Big SQL自身不管理用戶數(shù)據(jù),因此也不支持創(chuàng)建和維護(hù)索引。但是,Big SQL支持創(chuàng)建Primary Key,F(xiàn)oreign Key等約束。在不用考慮Index的時候,盡可能為數(shù)據(jù)表指定PK,F(xiàn)K等,這些約束有助于優(yōu)化器對SQL的優(yōu)化。
考慮對數(shù)據(jù)量大,具有合適的分區(qū)鍵(如查詢條件中需要使用“日期”字段)的表使用Range Partition。
選擇合適的數(shù)據(jù)類型,特別注意需要將Hive的string類型默認(rèn)映射到Big SQL是VARCHAR(32,672),加上其它字段絕大多數(shù)情況都會超過32K的PageSize,從而導(dǎo)致性能下降。建議將Hive的string顯式地轉(zhuǎn)成較小的VARCHAR (n)。
如果并發(fā)查詢很多導(dǎo)致了CPU和內(nèi)存過分競爭和系統(tǒng)性能下降,則要考慮使用WLM(Workload Management)對并發(fā)的查詢數(shù)據(jù)進(jìn)行限制。
詳情請咨詢“”!
客服熱線:023-66090381
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請郵件反饋至chenjj@fc6vip.cn