;
 
設為(wèi)主頁  |   加入收藏
 
億慧動态
 
 
 
首頁 > 億慧動态 > 業界動态

企業如何選擇合适的大(dà)數(shù)據産品測試基準
字體(tǐ)設置: 大(dà)  小(xiǎo)
發布日期: 2017-12-05 浏覽次數(shù):766

随着開(kāi)源Hapdoop、Map/Reduce、Spark、HDFS、HBASE等技(jì)術(shù)的商用化,大(dà)數(shù)據管理(lǐ)技(jì)術(shù)得(de)到了突飛猛進的發展。一般來(lái)說,大(dà)數(shù)據具有(yǒu)3V特性,即Volume(海量)、Velocity(高(gāo)速)和(hé)Variety(多(duō)樣)[1]。TPC聯合主席、Cisco高(gāo)級工程師(shī)Raghunath Nambiar進一步認為(wèi)大(dà)數(shù)據還(hái)面臨Value(價值)和(hé)Veracity(精确)的挑戰。如何客觀地比較不同數(shù)據管理(lǐ)系統,即大(dà)數(shù)據測試基準的選擇,成為(wèi)一個(gè)重要的研究課題。

事務性能管理(lǐ)委員會(huì)(TPC)是目前最知名的數(shù)據管理(lǐ)系統評測基準标準化組織。在過去二十多(duō)年間(jiān),該機構發布了多(duō)款數(shù)據庫評測基準,如TPC-A、TPC-D、TPC-H和(hé)TPC-DS,在業界得(de)到了廣泛應用[2]。BigBench和(hé)BigFrame是對TPC-DS進行(xíng)多(duō)樣化的數(shù)據擴充的測試基準。近年來(lái),Apache開(kāi)源社區(qū)針對Map/reduce架構開(kāi)發了多(duō)款性能測試用例,如TestDFSIO、teraSort。國內(nèi)對大(dà)數(shù)據測試基準的研究起步較晚,尚未建立起權威的測試基準。目前由中國信息通(tōng)信研究院牽頭,聯合中科院計(jì)算(suàn)所及國內(nèi)外知名公司和(hé)機構共同制(zhì)定的大(dà)數(shù)據測試基準正在金羅密布的測試中[3]。

為(wèi)了方便企業選擇合适的大(dà)數(shù)據測試基準,本文将在分析總結現有(yǒu)成果的基礎,進一步討(tǎo)論大(dà)數(shù)據測試基準應該具有(yǒu)的要素;并以此為(wèi)基礎,對比現有(yǒu)的大(dà)數(shù)據測試基準;然後重點討(tǎo)論TPC-DS測試基準。

大(dà)數(shù)據測試基準的選擇

企業在選擇大(dà)數(shù)據測試基準時(shí),首先應考慮基準與其自身業務的相關性。

與其自身業務的相關性

它主要描述測試基準設定的應用場(chǎng)景是否與企業的實際業務場(chǎng)景類似,如基于社交網絡應用的評測基準與銀行(xíng)系統的應用場(chǎng)景就沒有(yǒu)什麽相關性。不相關的基準,測試結果再好,也沒有(yǒu)實際意義。相關性還(hái)要考慮測試基準所采用的數(shù)據模型是否代表數(shù)據倉庫的發展方向,如基于星型模型的開(kāi)發要比基于傳統的關系模型開(kāi)發更加有(yǒu)效。

當然,一套行(xíng)之有(yǒu)效的大(dà)數(shù)據測試基準包含許多(duō)其它要素。Jim Gray及金澈清等學者[4]已經對度量選取、模拟數(shù)據生(shēng)成器(qì)、工作(zuò)負載設定、審計(jì)等要素進行(xíng)了詳細論述。除此之外,本文還(hái)認為(wèi)測試基準的健壯性、SQL标準的兼容性和(hé)通(tōng)用性/可(kě)移植性也是重要的要素。

模拟數(shù)據生(shēng)成要具有(yǒu)真實性

它描述了測試基準是否仿真真實應用場(chǎng)景,所産生(shēng)的模拟數(shù)據是否與真實數(shù)據相似。

工作(zuò)負載的設定具有(yǒu)可(kě)擴展性

它描述該評測基準是否适用于不同規模的計(jì)算(suàn)機系統,許多(duō)評測基準會(huì)使用标度因子來(lái)決定模拟數(shù)據的規模,通(tōng)過調整标度因子來(lái)得(de)到不同規模的工作(zuò)負載。

度量的選取的可(kě)理(lǐ)解性

它衡量該評測基準是否易于為(wèi)用戶理(lǐ)解,不易為(wèi)用戶理(lǐ)解的基準的可(kě)信程度也較低(dī)。

客觀性與公正性

衆所周知,在競技(jì)比賽中,一個(gè)人(rén)不能既是運動員又是裁判員。測試基準好比競技(jì)比賽中的裁判員,應該由中立的第三方機構制(zhì)定。事實也證明(míng),在各個(gè)領域最受歡迎的測試基準都是有(yǒu)第三方機構設計(jì)的。過去20多(duō)年的經曆證明(míng)TPC系列基準是數(shù)據庫領域最為(wèi)廣泛接受的基準。除此之外,第三方機構的審計(jì)也是保證證評測結果的客觀性與公正性的重要手段。

健壯性

測試基準要足夠健壯,不能輕易被“hack”,這對測試結果的公平性非常重要。例如對TPC-H的前身TPC-D,通(tōng)過物理(lǐ)化視(shì)圖,Oracle的性能比Micosoft的SQLServer高(gāo)100倍,這些(xiē)顯然是不公平的。因此TPC組織規定TPC-H測試中物理(lǐ)化視(shì)圖是不和(hé)法的。但(dàn)是除非是專業人(rén)員,一般用戶很(hěn)難判定測試過程中視(shì)圖有(yǒu)沒有(yǒu)被物理(lǐ)化。TPC-DS在健壯行(xíng)方面要好很(hěn)多(duō),因為(wèi)它的SQL本身比較複雜,也比較多(duō),Hack起來(lái)相對困難,并且隻hack幾個(gè)SQL對整體(tǐ)性能提高(gāo)有(yǒu)限。

SQL标準兼容性

SQL是ANSI為(wèi)統一各個(gè)數(shù)據庫廠商之間(jiān)的編程差異定義的标準,已發布SQL86、SQL92、SQL99、SQL2003等版本。這些(xiē)标準已經被主流的商用(例如Oracle、DB2、SQL server)以及開(kāi)源的數(shù)據庫産品(例如MySQL、mSQL和(hé)PostgreSQL)的廣泛采用。對整個(gè)數(shù)據庫産業的發展起到了巨大(dà)的推動作(zuò)用。大(dà)數(shù)據是個(gè)新興的領域,它的發展不能完全抛棄原有(yǒu)的應用。如果不能全面支持SQL标準,現有(yǒu)系統的移植非常困難,學習曲線就會(huì)變長。

通(tōng)用性/可(kě)遷移性

通(tōng)用性描述是否可(kě)在不同數(shù)據庫系統和(hé)架構上(shàng)實現指定的評測基準。測試基準不應該規定實現的細節,而隻需要定義測試規範。DBMS隻要遵循規範得(de)到正确的結果,就是合理(lǐ)的測試,無論其基于Map/Reduce、Spark還(hái)是其他的技(jì)術(shù),也不管其底層存儲是用HDFS、HBASE還(hái)是其他方式。

大(dà)數(shù)據測試基準對比

經過30幾年的研究,傳統數(shù)據庫測試基準的研究已經相當成熟,在各個(gè)領域出現了行(xíng)之有(yǒu)效的測試基準。随着大(dà)數(shù)據應用的發展,大(dà)數(shù)據測試基準的研究最近幾年逐漸興起,但(dàn)大(dà)都是在傳統的測試基準的基礎進行(xíng)裁剪、擴充、綜合。金澈清等學者[4]對數(shù)據庫基準的發展概述如圖1所示。

本文重點關注被列為(wèi)大(dà)數(shù)據測試基準的相關基準、BigFrame[5]以及TPC-DS,對其它的基準本文不再贅述,有(yǒu)興趣的讀者請(qǐng)參閱文[4]。

Map/reduce性能測試

如文[4]中所述,MRBench、HiBench、TestDFSIO、Sort/teraSort隻是針對Map/Reduce框架,目的是評測運行(xíng)Map/Reduce框架的集群的性能。CALDA基準嘗試比較不同架構在數(shù)據管理(lǐ)方面的性能。這些(xiē)測試過于簡單,無法模拟複雜的應用,也不通(tōng)用。

YCSB/YCSB++/LinkBench

這是一組針對網絡應用的測試基準。YCSB(Yahoo! Cloud Serving Benchmark)及其擴展YCSB++測試查詢回複的延時(shí)等雲服務系統中雲計(jì)算(suàn)的特點,如查詢回複的延時(shí)、縱向擴展和(hé)彈性加速比、并行(xíng)性測試等。LinkBench是一個(gè)基于社交網絡應用的評測基準。它仿真Facebook公司的圖數(shù)據管理(lǐ)應用,包括數(shù)據特性、工作(zuò)負載以及度量等。這些(xiē)都是公司開(kāi)發的針對自己特定應用場(chǎng)景的測試基準,很(hěn)難在整個(gè)行(xíng)業內(nèi)進行(xíng)推廣。

BigBench

BigBench是一款面向商品零售業的基準,它擴展了TPC-DS,綜合考慮多(duō)種數(shù)據模态,增加了半結構化數(shù)據Web Log和(hé)非結構化數(shù)據Reviews。其負載的生(shēng)成是TPC-DS定制(zhì)化的版本。BigBench包含30個(gè)查詢。BigBench基本數(shù)據模型如圖2所示:

BigFrame

BigFrame是一個(gè)測試基準生(shēng)成器(qì)[5],用戶可(kě)以根據自己的需求定制(zhì)專有(yǒu)測試基準。在目前實現中,其關系模型與BigBench類似,也是基于TPC-DS。同時(shí)它擴展了半結構化和(hé)非結構化的數(shù)據Tweets以及圖形化數(shù)據Followee/Follower。BigFrame基本數(shù)據模型如圖3所示:

如文[5]所述,大(dà)數(shù)據與決策支持系統(DSS)并不是完全獨立的,大(dà)數(shù)據也不能抛棄傳統。DSS系統中,隻要數(shù)據量足夠大(dà),都可(kě)以認為(wèi)是大(dà)數(shù)據問題。被化為(wèi)大(dà)數(shù)據測試基準的BigBench和(hé)BigFrame的大(dà)部分內(nèi)容都來(lái)自于TPC-DS,從這個(gè)意義上(shàng)講,TPC-DS不但(dàn)是一種結構數(shù)據的大(dà)數(shù)據測試基準,而且是其它大(dà)數(shù)據測試基準的基礎。

TPC-DS

TPC-DS測試基準是TPC組織推出的用于替代TPC-H的下一代決策支持系統測試基準。因此在討(tǎo)論TPC-DS之前,先介紹一下TPC-H。

TPC-H

TPC-H是一款面向商品零售業的決策支持系統測試基準,它定義了8張表,22個(gè)查詢,遵循SQL92。TPC-H的數(shù)據模型如圖4所示。TPC-H基準的數(shù)據庫模式遵循第三範式,葉曉俊教授等學者[6]認為(wèi)“它的數(shù)據表數(shù)據特征單一(如數(shù)據不傾斜) ,其數(shù)據維護功能僅僅限制(zhì)了潛在的對索引的過度使用,而沒有(yǒu)測試DBMS 執行(xíng)真實數(shù)據維護操作(zuò)——數(shù)據提取、轉換和(hé)加載(ETL) 功能的能力”。同時(shí),新興的數(shù)據倉庫開(kāi)始采用新的模型,如星型模型、雪花(huā)模型。TPC-H已經不能精準反映當今數(shù)據庫系統的真實性能。為(wèi)此,TPC組織推出了新一代的面向決策應用的TPC-DS 基準。

TPC-DS

TPC-DS采用星型、雪花(huā)型等多(duō)維數(shù)據模式。它包含7張事實表,17張緯度表平均每張表含有(yǒu)18列。其工作(zuò)負載包含99個(gè)SQL查詢,覆蓋SQL99和(hé)2003的核心部分以及OLAP。這個(gè)測試集包含對大(dà)數(shù)據集的統計(jì)、報表生(shēng)成、聯機查詢、數(shù)據挖掘等複雜應用,測試用的數(shù)據和(hé)值是有(yǒu)傾斜的,與真實數(shù)據一緻。可(kě)以說TPC-DS是與真實場(chǎng)景非常接近的一個(gè)測試集,也是難度較大(dà)的一個(gè)測試集。

TPC-DS的這個(gè)特點跟大(dà)數(shù)據的分析挖掘應用非常類似。Hadoop等大(dà)數(shù)據分析技(jì)術(shù)也是對海量數(shù)據進行(xíng)大(dà)規模的數(shù)據分析和(hé)深度挖掘,也包含交互式聯機查詢和(hé)統計(jì)報表類應用,同時(shí)大(dà)數(shù)據的數(shù)據質量也較低(dī),數(shù)據分布是真實而不均勻的。因此TPC-DS成為(wèi)客觀衡量多(duō)個(gè)不同Hadoop版本以及SQL on Hadoop技(jì)術(shù)的最佳測試集。這個(gè)基準測試有(yǒu)以下幾個(gè)主要特點:

一共99個(gè)測試案例,遵循SQL'99和(hé)SQL 2003的語法标準,SQL案例比較複雜

分析的數(shù)據量大(dà),并且測試案例是在回答(dá)真實的商業問題

測試案例中包含各種業務模型(如分析報告型,叠代式的聯機分析型,數(shù)據挖掘型等)

幾乎所有(yǒu)的測試案例都有(yǒu)很(hěn)高(gāo)的IO負載和(hé)CPU計(jì)算(suàn)需求

葉曉俊等學者對這些(xiē)查詢的分部總結如表1所示[6]。典型的Store_Sales的數(shù)據模型如圖5所示。這個(gè)基準測試的完整信息請(qǐng)參考http://www.tpc.org/tpcds/。

TPC-DS認證現狀

TPC-DS以其高(gāo)标準、高(gāo)要求得(de)到大(dà)家(jiā)的廣泛認知,理(lǐ)應得(de)到廣泛的應用,但(dàn)是到目前為(wèi)止還(hái)沒有(yǒu)任何廠商得(de)到TPC官方的認證。究其原因,本文認為(wèi):

傳統的數(shù)據庫廠商,DBMS系統比較成熟,SQL的支持也相當完善,但(dàn)是其分布式、并行(xíng)處理(lǐ)能力欠缺,導緻其性能很(hěn)差。所以傳統的廠商不願意發布測試結果。

新型的計(jì)算(suàn)模型如Map/Reduce、spark,具有(yǒu)較好的并行(xíng)處理(lǐ)能力,但(dàn)是SQL的兼容性比較差,如HiveSQL、SparkSQL隻支持40個(gè)SQL,從而也無法發布TPC-DS測試報告。盡管如此,各廠商還(hái)是通(tōng)過非TPC官方的途徑發布TPC-DS的部分測試結果,以展現其在性能方面的提升。由此可(kě)見大(dà)家(jiā)對TPC-DS的程接受度。

在TPC-DS大(dà)數(shù)據測試方面,星環科技(jì)已經走在世界的前列,據所知,星環科技(jì)是國內(nèi)唯一、全球少(shǎo)數(shù)幾家(jiā)公開(kāi)發布TPC-DS大(dà)數(shù)據測試結果的科技(jì)公司。其TPC-DS 500G的功能、性能及其兼容性測試已經得(de)到第三方機構——上(shàng)海市計(jì)算(suàn)機軟件評測實驗室的認證。

結束語

大(dà)數(shù)據評測基準用于公平、客觀地評測不同大(dà)數(shù)據庫産品/平台的功能和(hé)性能,對人(rén)們選擇合适的大(dà)數(shù)據分析決策系統具有(yǒu)重要的參考價值。随着國內(nèi)外各代表性的Hadoop發行(xíng)版廠商以TPC-DS為(wèi)标準測評産品,TPC-DS也就逐漸成為(wèi)了業界公認的大(dà)數(shù)據系統測試基準。但(dàn)是随着大(dà)數(shù)據應用在各行(xíng)各業的發展,測試基準也需不斷與時(shí)俱進。大(dà)數(shù)據測試基準仍然面臨着諸多(duō)挑戰,還(hái)需要政府、學術(shù)界和(hé)工業界的緊密合作(zuò)。

相關文章
楊元慶:我堅定認為(wèi)AI無威脅 它隻是人(rén)的增強[17/12/05]
同濟大(dà)學創新創業創投中心成立 将發布全球首個(gè)“三創”指數(shù)[17/12/05]
“高(gāo)考機器(qì)人(rén)”要參加應試考試,炫技(jì)之餘更需冷靜[17/12/05]
《紐約時(shí)報》:中國新稅收政策 旨在鼓勵美企在華投資[17/12/29]
Telegram用戶可(kě)免手續費交易加密貨币[17/12/29]
央行(xíng)發文規範條碼支付,場(chǎng)景金融大(dà)戰下的支付入口升級之争[17/12/29]

 
友(yǒu)情鏈接:  國家(jiā)電(diàn)網  國網電(diàn)科院  福建電(diàn)力  中石化  

地址:中國福州市洪甘路中科睿谷科技(jì)園2号樓10層
全國服務熱線:400-6161-780 電(diàn) 話(huà):0591-87615148,87616148 
郵 箱:fjyh@g-wise.com  網站(zhàn)備案号: