轉(zhuǎn)帖|行業(yè)資訊|編輯:陳俊吉|2016-07-12 10:14:35.000|閱讀 558 次
概述:從NoSQL到NewSQL,新技術(shù)的發(fā)展極大拓展了數(shù)據(jù)查詢的應(yīng)用場(chǎng)景:支持半結(jié)構(gòu)化數(shù)據(jù)(JOSON)、非結(jié)構(gòu)化數(shù)據(jù)的高效率讀寫和查詢等。而在此過(guò)程中經(jīng)典的SQL技術(shù)仍舊在發(fā)揮著無(wú)可替代的作用,在Hadoop的世界中也必將占據(jù)一席之地。
# 界面/圖表報(bào)表/文檔/IDE等千款熱門軟控件火熱銷售中 >>
相關(guān)鏈接:
從NoSQL到NewSQL,新技術(shù)的發(fā)展極大拓展了數(shù)據(jù)查詢的應(yīng)用場(chǎng)景:支持半結(jié)構(gòu)化數(shù)據(jù)(JOSON)、非結(jié)構(gòu)化數(shù)據(jù)的高效率讀寫和查詢等。而在此過(guò)程中經(jīng)典的SQL技術(shù)仍舊在發(fā)揮著無(wú)可替代的作用,在Hadoop的世界中也必將占據(jù)一席之地。
作為傳統(tǒng)的RMDBS核心廠商之一,IBM也一直努力將SQL帶入的世界,這就是BigSQL。最初版本中BigSQL是做為SQL到MR的轉(zhuǎn)換引擎出現(xiàn)的,可以把復(fù)雜的SQL語(yǔ)句轉(zhuǎn)換成MR作業(yè)運(yùn)行。這種方式還只是適合對(duì)大量數(shù)據(jù)進(jìn)行批量處理,并不能滿足對(duì)數(shù)據(jù)的隨需查詢和秒級(jí)的查詢響應(yīng)時(shí)間要求。
從BigSQL3.0 開(kāi)始, IBM結(jié)合自己在數(shù)據(jù)庫(kù)領(lǐng)域長(zhǎng)期的技術(shù)積累,把MPP相關(guān)技術(shù)帶入的世界,從而為SQL on Hadoop帶來(lái)真正的提升:BigSQL根據(jù)數(shù)據(jù)在HDFS中的分布,將查詢?nèi)蝿?wù)下壓至不同的Worker節(jié)點(diǎn);在此過(guò)程中,引入眾多成熟的SQL優(yōu)化技術(shù),包括SQL語(yǔ)句重寫、查詢謂詞下壓、基于統(tǒng)計(jì)信息和成本估計(jì)的優(yōu)化策略等,解決執(zhí)行路徑優(yōu)化等難題,確保數(shù)據(jù)查詢的性能。僅在執(zhí)行路徑優(yōu)化方面應(yīng)用到的技術(shù)就包括:
數(shù)據(jù)處理順序的優(yōu)化技術(shù):
- 根據(jù)統(tǒng)計(jì)信息決定查詢謂詞的執(zhí)行順序
- 根據(jù)數(shù)據(jù)分布情況優(yōu)化關(guān)聯(lián)查詢次序
- 優(yōu)化數(shù)據(jù)聚合策略(如每個(gè)節(jié)點(diǎn)先部分聚合后再匯總等)
數(shù)據(jù)表關(guān)聯(lián)的優(yōu)化技術(shù):
- 表嵌套關(guān)聯(lián)
- 排序合并關(guān)聯(lián)
- 哈希關(guān)聯(lián)
數(shù)據(jù)位置相關(guān)的優(yōu)化技術(shù):
- 并行運(yùn)算
- 廣播關(guān)聯(lián)數(shù)據(jù)表
- 聯(lián)邦查詢中操作下推和函數(shù)轉(zhuǎn)換等
BigSQL執(zhí)行引擎根據(jù)實(shí)際情況綜合考慮最終的執(zhí)行路徑。下圖可以感受下BigSQL執(zhí)行過(guò)程中應(yīng)用到的多種SQL優(yōu)化技術(shù):
除了引入MPP架構(gòu)來(lái)優(yōu)化上的SQL引擎外,BigSQL還有眾多閃光的亮點(diǎn):
BigSQL全面支持SQL 2011標(biāo)準(zhǔn),提供如表關(guān)聯(lián)、嵌套語(yǔ)句、函數(shù)、表操作表達(dá)式、group by, union等SQL操作,還提供對(duì)存儲(chǔ)過(guò)程、自定義函數(shù)的支持,可以無(wú)縫銜接傳統(tǒng)的SQL查詢應(yīng)用,如BI系統(tǒng)等。下圖展示了BigSQL的部分SQL能力:
BigSQL可以支持多種數(shù)據(jù)源,包括HDFS、HBASE、HIVE、外部數(shù)據(jù)源等,對(duì)數(shù)據(jù)源和數(shù)據(jù)格式的支持是完全開(kāi)放的。
BigSQL完美的集成了DSM,其Web圖形化界面提供從監(jiān)視、開(kāi)發(fā)、到管理的各項(xiàng)服務(wù),可以完成監(jiān)視語(yǔ)句執(zhí)行狀態(tài)、開(kāi)發(fā)查詢應(yīng)用、開(kāi)發(fā)存儲(chǔ)過(guò)程和管理查詢服務(wù)等各項(xiàng)任務(wù)。如下圖中的SQL編輯器支持在線執(zhí)行SQL語(yǔ)句并查看結(jié)果。
除了可以支持查詢內(nèi)部的各種數(shù)據(jù)源外,BigSQL 還支持與其他企業(yè)數(shù)據(jù)源進(jìn)行聯(lián)邦,包括:DB2/Oracle/IBM PDA/IBM PDOA/TeraData/JDBC等,聯(lián)邦讓跨系統(tǒng)的數(shù)據(jù)訪問(wèn)在一個(gè)SQL中完成,而不需要復(fù)雜的ETL過(guò)程和數(shù)據(jù)傳輸?shù)却?
聯(lián)邦的含義不僅僅是指打通了數(shù)據(jù)訪問(wèn)通道,還包括查詢路徑優(yōu)化方面的考慮。比如,根據(jù)數(shù)據(jù)的分布和數(shù)據(jù)源的支持情況:將語(yǔ)句下壓至聯(lián)邦數(shù)據(jù)源執(zhí)行;部分在聯(lián)邦數(shù)據(jù)源部分在BigSQL執(zhí)行;或者全部由BigSQL執(zhí)行。
數(shù)據(jù)量、聯(lián)邦數(shù)據(jù)源處理能力、聯(lián)邦數(shù)據(jù)源的處理速度、返回?cái)?shù)據(jù)比例、網(wǎng)絡(luò)帶寬等這些都在考慮之列。比如,如果數(shù)據(jù)源僅支持正切函數(shù)TAN(x),而不支持余切函數(shù)COT(X),BigSQL將會(huì)SQL中的COT(x)轉(zhuǎn)換成等價(jià)的正切函數(shù)表達(dá)式1/TAN(x)。
通過(guò)聯(lián)邦,BigSQL可以讓本來(lái)不具備SQL數(shù)據(jù)訪問(wèn)能力的數(shù)據(jù)源變成兼容SQL數(shù)據(jù)訪問(wèn)標(biāo)準(zhǔn)的數(shù)據(jù)源。下圖顯示了BigSQL聯(lián)邦支持的數(shù)據(jù)源:
BigSQL除了可以提供常規(guī)的SQL函數(shù)外,還提供了眾多機(jī)器學(xué)習(xí)算法的實(shí)現(xiàn),包括:K-means聚類算法、樸素貝葉斯算法、關(guān)聯(lián)規(guī)則算法、序列模式挖掘算法、線性回歸算法等。這讓熟悉SQL語(yǔ)法和數(shù)據(jù)的DBA,馬上提升數(shù)據(jù)分析技能!!
如下圖顯示通過(guò)簡(jiǎn)單的一條SQL語(yǔ)句就可以完成對(duì)人口收入調(diào)查數(shù)據(jù)集(CensusIncome)的聚類建模分析:
再通過(guò)一條SQL即可顯示聚類分析結(jié)果:
安全性是企業(yè)級(jí)產(chǎn)品必須要考慮的,BigSQL中的用戶鑒權(quán)通過(guò)外部框架完成,如LDAP,而用戶連接之后的內(nèi)部鑒權(quán)則由BigSQL完成。BigSQL可以根據(jù)用戶的授權(quán)、屬主和角色判定用戶的權(quán)限。如同數(shù)據(jù)庫(kù)一樣,BigSQL可以通過(guò)GRANT語(yǔ)句給用戶授權(quán),可以做到行、列級(jí)別的權(quán)限控制。
另外,BigSQL還實(shí)現(xiàn)數(shù)據(jù)訪問(wèn)的審計(jì)功能,對(duì)什么人從什么時(shí)間什么地點(diǎn)訪問(wèn)了什么數(shù)據(jù)進(jìn)行了完整的審計(jì)。
最后,除了文章中列出的這些特點(diǎn),BigSQL具備更多企業(yè)級(jí)產(chǎn)品的特性,有待您來(lái)一起探索。
詳情請(qǐng)咨詢!
客服熱線:023-66090381
本站文章除注明轉(zhuǎn)載外,均為本站原創(chuàng)或翻譯。歡迎任何形式的轉(zhuǎn)載,但請(qǐng)務(wù)必注明出處、不得修改原文相關(guān)鏈接,如果存在內(nèi)容上的異議請(qǐng)郵件反饋至chenjj@fc6vip.cn