【2014年10月,上?!?/strong>近日,星環(huán)信息科技(上海)有限公司(以下簡(jiǎn)稱星環(huán)科技)在紐約召開的Strata Conference + HadoopWorld大會(huì)上發(fā)布了Transwarp Data Hub 3.4新版本Hadoop發(fā)行版軟件。
今年的Strata Conference是近年來規(guī)模最大的大數(shù)據(jù)盛會(huì),有5500多人參加這次大會(huì),130多家廠商參展,門票在開會(huì)前就售罄。這么大規(guī)模的盛會(huì)標(biāo)志著hadoop已經(jīng)真正成為大數(shù)據(jù)處理技術(shù)的主流地位。這也是星環(huán)首次在美國(guó)-大數(shù)據(jù)的大本營(yíng)-發(fā)布大數(shù)據(jù)最新產(chǎn)品。
Transwarp Data Hub (簡(jiǎn)稱TDH) 3.4新版本大幅增強(qiáng)了Inceptor交互式分析引擎、Hyperbase實(shí)時(shí)數(shù)據(jù)庫(kù)和Stream流計(jì)算引擎的功能和性能。
Inceptor 3.4 -更強(qiáng)、更快、更穩(wěn)定
更完整的SQL支持:
• Inceptor 3.4比美國(guó)友商提供了更全的SQL支持,繼支持SQL’99后,開始兼容SQL2003語(yǔ)法。最新版本已經(jīng)包括了對(duì)常用數(shù)據(jù)類型DECIMAL,NUMERIC,VARCHAR的支持,支持WITH-AS定義子表, 以及支持在任意FROM/WHERE/SELECT/HAVING語(yǔ)句中嵌套子查詢和相關(guān)子查詢(Correlated Sub-query),支持窗口聚合函數(shù), CUBE, ROLLUP等功能。
• Inceptor3.4支持SQL2003語(yǔ)法額外要求的功能,包括支持SQL2003要求的各種predicate(BETWEEN, LIKE, EXISTS等),并且支持在predicate中嵌套子查詢(sub-query in comparison predicate, sub-query in IN predicates, correlated sub-query,etc),支持在子查詢中嵌套table operator等。
• 支持部分PL/SQL語(yǔ)法,包括變量、函數(shù)、控制流、部分存儲(chǔ)過程。
支持SQL的完整程度已經(jīng)遠(yuǎn)超過美國(guó)友商的同類產(chǎn)品,包括Cloudera在StrataConference上發(fā)布的Impala2.0的SQL支持程度。
更快的性能:
Inceptor 3.4實(shí)現(xiàn)了更多的優(yōu)化規(guī)則,并且自己研發(fā)了基于代價(jià)的優(yōu)化器,性能比之前的版本有顯著提高。在Cloudera最近公布的TPC-DS性能數(shù)據(jù)中,Impala 1.4比所有的其他產(chǎn)品(包括SparkSQL)快5倍以上。作為回應(yīng),在Strata Conference上,星環(huán)公布的TPC-DS的性能評(píng)測(cè)結(jié)果以及Inceptor 3.4與Impala 1.4的對(duì)比。
下圖是所有TPC-DS測(cè)試集合的性能對(duì)比圖. 圖中縱坐標(biāo)小于1表示測(cè)試案例的性能Impala超過Inceptor,而大于1表示Inceptor有更好的性能表現(xiàn)。對(duì)于Impala不能支持的SQL,我們就標(biāo)記這個(gè)性能比為100。
從這個(gè)圖中可以看到,在Impala目前支持的19個(gè)SQL中,有11個(gè)SQL在Inceptor上比Impala表現(xiàn)的更好, 只有8個(gè)SQL的Impala表現(xiàn)超過Inceptor。
另外,在和開源的Hive執(zhí)行效率相比中,Inceptor 3.4能夠帶來10x~100x的性能提升。下圖是TPC-DS的部分query在Inceptor和CDH Hive的性能提升倍數(shù),其中最大的提升倍數(shù)竟可達(dá)到123倍。需要說明的是,這里用的Query跟Impala運(yùn)行的相同。
更多詳細(xì)的性能比較以及TPC-DS的測(cè)試配置和細(xì)節(jié)可以參考星環(huán)發(fā)布的性能白皮書。
更全的機(jī)器學(xué)習(xí)算法支持:
• Inceptor 3.4新版本提供了更多的統(tǒng)計(jì)和機(jī)器學(xué)習(xí)算法,在MLlib已有的算法(CF, SVM等)上也做了穩(wěn)定性和精度的改進(jìn)。下表是TDH3.4支持的算法列表:
其中一些算法已經(jīng)成功運(yùn)用在電商和網(wǎng)絡(luò)電視的推薦系統(tǒng)中。
• Inceptor3.4提供了更完善的R語(yǔ)言支持,現(xiàn)在使用R語(yǔ)言進(jìn)行數(shù)據(jù)挖掘的用戶,可以在R語(yǔ)言中執(zhí)行SQL語(yǔ)句,并把SQL的結(jié)果傳給機(jī)器學(xué)習(xí)算法。多個(gè)機(jī)器學(xué)習(xí)算法的結(jié)果也可以繼續(xù)傳遞給后續(xù)算法,可以組成一個(gè)pipeline,方便用戶對(duì)數(shù)據(jù)進(jìn)行多輪分析和挖掘。
更穩(wěn)定可靠的Spark計(jì)算引擎,可處理GB到PB級(jí)別的大數(shù)據(jù)量:
• Inceptor 3.4的重大改進(jìn)是提高了Spark引擎處理大數(shù)據(jù)的能力以及性能的穩(wěn)定性,通過設(shè)計(jì)全新的內(nèi)存換出機(jī)制并改造多個(gè)Spark操作原語(yǔ),可以在大數(shù)據(jù)量上穩(wěn)定地運(yùn)行復(fù)雜的SQL,并且在大數(shù)據(jù)量上的運(yùn)行性能全面超越Hive和Map/Reduce。
• 星環(huán)已經(jīng)實(shí)現(xiàn)了大數(shù)據(jù)量復(fù)雜SQL算法的高性能和穩(wěn)定性,并且已經(jīng)成功替換Oracle/DB2和小型機(jī)的組合,運(yùn)用在上海移動(dòng)和廣東移動(dòng)的復(fù)雜經(jīng)營(yíng)分析場(chǎng)合。
Hyperbase3.4 - 更全的SQL支持和索引支持
Hyperbase 3.4的新功能主要包括了對(duì)Inceptor SQL的更好支持上,Hyperbase從3.4開始同步支持Inceptor的SQL語(yǔ)法,可通過SQL對(duì)Hyperbase進(jìn)行單條記錄的增刪查改。
新版本提供了星環(huán)科技開發(fā)的一個(gè)新的專有ODBC驅(qū)動(dòng)程序(windows版本),可以通過ETL 工具支持從現(xiàn)有關(guān)系數(shù)據(jù)庫(kù)實(shí)時(shí)同步更新數(shù)據(jù)到Hyperbase,這個(gè)功能對(duì)實(shí)時(shí)數(shù)據(jù)倉(cāng)庫(kù)或者ODS來說是必不可少的,目前美國(guó)友商的相應(yīng)Hadoop產(chǎn)品還只能支持批處理,不能和關(guān)系數(shù)據(jù)庫(kù)進(jìn)行實(shí)時(shí)同步。
Hyperbase 3.4提供了更好的索引支持,并且Inceptor SQL引擎可以充分利用Hyperbase的內(nèi)建索引來加快查詢速度。在有索引的情況下,查詢的延時(shí)降到了百毫秒級(jí)別。為了支持更復(fù)雜的索引,Hyperbase 3.4充分利用了新設(shè)計(jì)的代價(jià)優(yōu)化器,可以自動(dòng)根據(jù)訪問索引的代價(jià)選擇最佳索引。
Stream 3.4 - 更快、更穩(wěn)定、更安全
Stream 3.4流處理引擎進(jìn)一步提高了讀取Kafka分布式隊(duì)列中數(shù)據(jù)的吞吐性能,并且為Kafka提供了安全認(rèn)證和訪問控制功能。Kafka的安全控制功能目前在開源版本或者友商的發(fā)行版中都不具備,也側(cè)面說明了友商的Kafka或者流處理引擎目前沒有實(shí)際部署。對(duì)跨地域分級(jí)部署的流處理集群而言,缺乏安全機(jī)制是致命弱點(diǎn),特別是跟公共安全相關(guān)的應(yīng)用,將導(dǎo)致系統(tǒng)由于安全原因無(wú)法實(shí)施。此外,Transwarp Stream 的穩(wěn)定性也得到驗(yàn)證,最近在某省的全省交通指揮監(jiān)控系統(tǒng)中上線并且能夠7x24運(yùn)行,端到端延時(shí)控制在了2秒以內(nèi),是目前國(guó)內(nèi)在線運(yùn)行的大規(guī)模流處理集群的少見案例。
總結(jié)
此次星環(huán)科技在美國(guó)紐約發(fā)布的新版本,在多項(xiàng)核心功能和性能指標(biāo)中已經(jīng)領(lǐng)先于美國(guó)友商,也吸引了多家金融客戶的關(guān)注。