
度量體系 大數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn)的挑戰(zhàn)與研究進(jìn)展
數(shù)據(jù)庫評測基準(zhǔn)在數(shù)據(jù)庫發(fā)展歷史中的作用不可替代,而大數(shù)據(jù)環(huán)境中傳統(tǒng)評測基準(zhǔn)不敷應(yīng)用。因此,從評測基準(zhǔn)3要素,即數(shù)據(jù)、負(fù)載、度量體系入手,研究具有高仿真性、可適配性、可測量性的大數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn),對大數(shù)據(jù)管理系統(tǒng)的研發(fā)和應(yīng)用系統(tǒng)選型至關(guān)重要。基于此,在簡要分析評測基準(zhǔn)的基本要素和大數(shù)據(jù)管理系統(tǒng)發(fā)展過程的基礎(chǔ)上,重點分析大數(shù)據(jù)管理系統(tǒng)的基準(zhǔn)評測需求與挑戰(zhàn),然后通過社交媒體分析型查詢評測基準(zhǔn)BSMA,探討了面向應(yīng)用的大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測的設(shè)計和實現(xiàn)問題。
1 引言
數(shù)據(jù)庫管理系統(tǒng)(DBMS)廠商間的激烈競爭造就了一個數(shù)千億美元的市場。數(shù)據(jù)庫基準(zhǔn)評測(databasebenchmarking)確保了競爭的公平有序,從而引導(dǎo)了行業(yè)的健康發(fā)展。數(shù)據(jù)庫評測基準(zhǔn)是指一套用于評測、比較不同DBMS性能的規(guī)范,其所生成的性能指標(biāo)值能夠客觀、全面地比較各個DBMS的性能差距[1]。
通常,新的數(shù)據(jù)庫理論或數(shù)據(jù)管理技術(shù)被提出之后,會迅速誕生一批原型或商用系統(tǒng)。但技術(shù)上的差異常導(dǎo)致它們的性能表現(xiàn)不盡相同,從而引發(fā)系統(tǒng)開發(fā)商之間的爭議。技術(shù)層面的爭論和競爭促進(jìn)了行業(yè)的發(fā)展;而諸多非技術(shù)因素的介入,則會破壞良性競爭。1983年發(fā)布的“威斯康星基準(zhǔn)”[2],消彌了自關(guān)系型數(shù)據(jù)庫管理系統(tǒng)(RDBMS)出現(xiàn)后紛爭的性能口水戰(zhàn),促進(jìn)了各DBMS廠商優(yōu)化系統(tǒng),并最終在常用負(fù)載(workload)下取得相近的性能。威斯康星基準(zhǔn)的巨大成功以及以威斯康星大學(xué)DeWittD J教授和圖靈獎獲得者Gray J為代表的一批學(xué)者對數(shù)據(jù)庫基準(zhǔn)評測的適時推動,有效地保障了20世紀(jì)80年代開始的30多年的數(shù)據(jù)庫行業(yè)的健康發(fā)展。
隨著“大數(shù)據(jù)”成為應(yīng)用熱點,越來越多的應(yīng)用環(huán)境中,數(shù)據(jù)、應(yīng)用和系統(tǒng)體現(xiàn)出“3V”的特性[3],即量大(volume)、多樣(variety)、快速變化(velocity):數(shù)據(jù)同時具備“3V”的特性,即數(shù)據(jù)規(guī)模大、變化速度和增長速度快,且包含多源、異構(gòu)和非結(jié)構(gòu)化數(shù)據(jù);應(yīng)用中包含大量作用于大數(shù)據(jù)的多樣化的負(fù)載,且很多負(fù)載要求在快速變化的數(shù)據(jù)上獲得實時的結(jié)果;系統(tǒng)則需要同時適應(yīng)數(shù)據(jù)與應(yīng)用,在不同的接口層次上提供對大數(shù)據(jù)的多樣化的管理和處理功能。
針對新興的大數(shù)據(jù)應(yīng)用環(huán)境,在以Hadoop為代表的海量數(shù)據(jù)處理技術(shù)日趨成熟的同時,一批新型大數(shù)據(jù)管理系統(tǒng)(bigdata management system,BDMS)積極涌現(xiàn),以解決大數(shù)據(jù)管理與處理中的各種問題。
新型的數(shù)據(jù)、應(yīng)用環(huán)境和系統(tǒng)決定了現(xiàn)有評測基準(zhǔn)無法產(chǎn)生具有仿真能力的數(shù)據(jù),不能反映應(yīng)用需求,無法公平、有效地評測系統(tǒng)。在包括數(shù)據(jù)生成、負(fù)載生成、度量選取、評測基準(zhǔn)架構(gòu)與評測方法等在內(nèi)的基準(zhǔn)評測的多個方面,都需要研究、開發(fā)新的技術(shù),以更真實地反映系統(tǒng)在典型應(yīng)用環(huán)境中的表現(xiàn)。評測基準(zhǔn)是對大數(shù)據(jù)應(yīng)用環(huán)境中數(shù)據(jù)管理任務(wù)的規(guī)范化與定義,對大數(shù)據(jù)系統(tǒng)的研發(fā)具有指導(dǎo)意義。
基準(zhǔn)制定是一個漫長的過程。RDBMS的基準(zhǔn)評測經(jīng)過30多年的發(fā)展,仍在不斷完善。而影響力較大的早期大數(shù)據(jù)評測基準(zhǔn)CALDA提出至今不過4年[4]。目前的相關(guān)評測基準(zhǔn)在應(yīng)用抽象、評測內(nèi)容與方法、應(yīng)用程度上都仍在初級階段??梢灶A(yù)見,未來的5~10年評測基準(zhǔn)將和BDMS的研發(fā)共同高速發(fā)展[5]。
另一方面,由于我國用戶分布、商業(yè)模式、政策法規(guī)的特點,應(yīng)用環(huán)境具有一定的特殊性。這種特殊性體現(xiàn)在數(shù)據(jù)、負(fù)載特性上。國外數(shù)據(jù)庫廠商因?qū)ξ覈鴩榈牟涣私馍踔潦怯幸獾钟|,很難在短時間內(nèi)研發(fā)出適合我國需求的系統(tǒng)和應(yīng)用。面向具有特色的應(yīng)用,制定評測基準(zhǔn),有助于引領(lǐng)大數(shù)據(jù)技術(shù)和系統(tǒng)的研發(fā),為解決我國所面臨的最急迫的大數(shù)據(jù)管理問題做出貢獻(xiàn),同時促進(jìn)國內(nèi)大數(shù)據(jù)系統(tǒng)的研發(fā),提振國內(nèi)大數(shù)據(jù)行業(yè)的發(fā)展。
本文將在簡要分析評測基準(zhǔn)的基本要素和大數(shù)據(jù)管理系統(tǒng)發(fā)展過程的基礎(chǔ)上,重點分析大數(shù)據(jù)管理系統(tǒng)的基準(zhǔn)評測需求與挑戰(zhàn),然后通過社交媒體分析型查詢評測基準(zhǔn)(benchmarkof social media analysis,BSMA),探討面向應(yīng)用的大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測的設(shè)計、實現(xiàn)問題。
2 評測基準(zhǔn)的基本要素
從宏觀角度看,評測基準(zhǔn)的3要素是數(shù)據(jù)、負(fù)載和度量體系,下面分別進(jìn)行介紹。
數(shù)據(jù):不同應(yīng)用的數(shù)據(jù)具有不同的靜態(tài)和動態(tài)特征,體現(xiàn)在結(jié)構(gòu)、規(guī)模、數(shù)據(jù)分布、變化速率等多個方面。傳統(tǒng)基準(zhǔn)通常只采用固定數(shù)據(jù)結(jié)構(gòu)和數(shù)據(jù)分布下的數(shù)據(jù)生成方法產(chǎn)生高仿真數(shù)據(jù)。而如何準(zhǔn)確刻畫大數(shù)據(jù)靜態(tài)和動態(tài)特征,如何在特征已知或未知的情況下,高效地生成測試所需的海量數(shù)據(jù)是大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測所需要解決的問題。
負(fù)載:負(fù)載是作用于數(shù)據(jù)的訪問和查詢、更新、分析任務(wù)。大數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn)必須能夠產(chǎn)生反映應(yīng)用需求的多樣化的負(fù)載(variety)。和數(shù)據(jù)一樣,評測基準(zhǔn)的負(fù)載必須在靜態(tài)和動態(tài)特征上與應(yīng)用具有相似性,即對于評價指標(biāo)而言,模擬負(fù)載能夠反映應(yīng)用的需求。具有良好適配性的負(fù)載生成理論和方法是大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測的第二個要素。
度量體系:度量體系指對于性能進(jìn)行評價的指標(biāo)集合。指標(biāo)可以是單一的,也可以是多維的。BDMS應(yīng)用環(huán)境不同于傳統(tǒng)DBMS。例如,新型硬件要求在評測時考慮非傳統(tǒng)的性能度量,如忙時數(shù)據(jù)更新量(面向集群化的大內(nèi)存系統(tǒng))、熱點數(shù)據(jù)更新頻率等;開放的運行環(huán)境要求評測能夠反映系統(tǒng)受干擾時的性能;分析型負(fù)載則將性能度量和結(jié)果的精確程度綁在一起。此外,性價比、能耗等因素進(jìn)一步增加了BDMS度量體系制定的難度。
3 大數(shù)據(jù)管理系統(tǒng)及其評測基準(zhǔn)需求
3.1 大數(shù)據(jù)管理系統(tǒng)的分類
大數(shù)據(jù)管理系統(tǒng)通常指那些基于集群環(huán)境,利用大容量內(nèi)存、高速網(wǎng)絡(luò),支撐海量數(shù)據(jù)存儲、索引、更新、查詢、檢索、分析和挖掘的數(shù)據(jù)管理系統(tǒng)。谷歌公司的GFS、MapReduce實現(xiàn)以及BigTable系統(tǒng)可以認(rèn)為是最早出現(xiàn)的有代表性的大數(shù)據(jù)管理系統(tǒng)。而隨著開源系統(tǒng)Hadoop的出現(xiàn)和相關(guān)開源生態(tài)圈的發(fā)展以及BerkeleyData Analytics Stack系列工具的快速發(fā)展,一大批系統(tǒng)和工具都可被歸于BDMS的范疇,如圖1所示[6]。這些系統(tǒng)的功能、接口層次、架構(gòu)、實現(xiàn)技術(shù)、面向應(yīng)用和所依賴的底層硬件各不相同,如何客觀、公正地比較它們在不同應(yīng)用場景下的性能,無論是對于系統(tǒng)開發(fā)者還是應(yīng)用開發(fā)和系統(tǒng)選型人員來說,都是一個難題。這也是BDMS基準(zhǔn)評測對于指導(dǎo)系統(tǒng)研發(fā)、系統(tǒng)選型,營造良好技術(shù)競爭環(huán)境的意義所在。
圖1 大數(shù)據(jù)管理系統(tǒng)及它們之間的關(guān)系
3.2 大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測需求
BDMS評測基準(zhǔn)首先需要具備大數(shù)據(jù)建模與高仿真的數(shù)據(jù)生成的能力。具體而言,包括以下需求。
大數(shù)據(jù)靜態(tài)和動態(tài)特征的刻畫:對現(xiàn)實應(yīng)用場景中的真實數(shù)據(jù)進(jìn)行動態(tài)和靜態(tài)特性的刻畫,是形成數(shù)據(jù)生成理論的前提。數(shù)據(jù)的靜態(tài)特征包括數(shù)據(jù)結(jié)構(gòu)、數(shù)據(jù)分布、精確性以及時序關(guān)系等。在成熟的應(yīng)用領(lǐng)域,數(shù)據(jù)靜態(tài)特征往往已經(jīng)有模型進(jìn)行描述。但大數(shù)據(jù)的動態(tài)性(velocity)特征難以用單一模型進(jìn)行刻畫。對數(shù)據(jù)的靜態(tài)和動態(tài)特性進(jìn)行參數(shù)化的刻畫是高仿真數(shù)據(jù)生成的前提。
高仿真的數(shù)據(jù)生成方法:大數(shù)據(jù)應(yīng)用的特點決定了需要采用應(yīng)用相關(guān)的數(shù)據(jù)生成方法。同時,大數(shù)據(jù)的復(fù)雜性和動態(tài)性決定了對數(shù)據(jù)特征的刻畫無法由領(lǐng)域?qū)<彝瓿?,而需要通過統(tǒng)計和機器學(xué)習(xí)自動進(jìn)行。
動態(tài)數(shù)據(jù)高效持續(xù)生成:大數(shù)據(jù)不斷變化、持續(xù)更新。因此,評測基準(zhǔn)需要具備采用并行數(shù)據(jù)生成、流式數(shù)據(jù)生成等技術(shù),仿真真實的海量、快速變化的動態(tài)數(shù)據(jù)的能力。
其次,BDMS評測基準(zhǔn)還需要具備能夠滿足多場景需求的綜合負(fù)載生成能力,具體介紹如下。
負(fù)載特性刻畫與建模:常見負(fù)載包括數(shù)據(jù)訪問、數(shù)據(jù)檢索與查詢、數(shù)據(jù)更新、批處理、迭代運算、聚集計算等,它們的處理代價各不相同。應(yīng)用中的負(fù)載常常是復(fù)合的,且負(fù)載的分布隨時間而變化。同時,負(fù)載作用于不同的數(shù)據(jù)對象(負(fù)載參數(shù)(argument)),其處理代價也是不同的。而且負(fù)載參數(shù)的分布也是動態(tài)、多樣的。具備豐富、靈活的負(fù)載特性刻畫能力,是準(zhǔn)確模擬應(yīng)用負(fù)載的前提。
BDMS原語與操作模式的抽象:BDMS的訪問接口具有多樣性。在不同層次的BDMS服務(wù)上,分別定義兼容多種系統(tǒng)的負(fù)載描述,是實現(xiàn)BDMS基準(zhǔn)評測的前提之一。這一需求也是BDMS評測基準(zhǔn)與傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)評測基準(zhǔn)的一項重要區(qū)別。
可適配的負(fù)載自動生成方法與系統(tǒng)框架:應(yīng)用的負(fù)載各不相同。為每個應(yīng)用定制負(fù)載生成器,成本高、效率低,不能滿足同一數(shù)據(jù)集上共生多種應(yīng)用的BDMS基準(zhǔn)評測需要。因此,給定負(fù)載特性刻畫,生成不同接口層面的代表性負(fù)載和相應(yīng)負(fù)載參數(shù),是另一項重要的BDMS基準(zhǔn)評測需求。
第三,負(fù)載相關(guān)的度量體系與測量方法對于BDMS評測基準(zhǔn)至關(guān)重要。
BDMS度量的基本特征與度量體系:BDMS系統(tǒng)的性能評價包括多項非傳統(tǒng)的度量,包括數(shù)據(jù)分析的實時性、系統(tǒng)的彈性能力,即環(huán)境變化時的自動管理能力、精度與性能的復(fù)合度量、能耗和能效比等。因此,需要制定可重復(fù)、可核實的新度量體系。這又是一項顯著不同于傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)評測基準(zhǔn)的需求。
影響度量可測量性的不確定因素的量化與相關(guān)性分析能力:多種不確定因素會影響最終的評測結(jié)果。云計算、多租戶、虛擬機環(huán)境都可能放大這種影響,造成評測結(jié)果的不客觀、不可重復(fù)等問題。因此,需要對影響可測量性的因素進(jìn)行量化和相關(guān)性分析,并進(jìn)一步修正度量體系,以保證評測結(jié)果的客觀和全面。
新的測量方法學(xué):基準(zhǔn)評測要求其過程和結(jié)果具有可解釋性、可重復(fù)性、可審計性。測量方法要求對這些特定現(xiàn)象進(jìn)行準(zhǔn)確記錄和描述。另一方面,大數(shù)據(jù)應(yīng)用的數(shù)據(jù)和負(fù)載常具有非穩(wěn)態(tài)、爆發(fā)性特征,即在特定時刻數(shù)據(jù)或負(fù)載量劇增。BDMS基準(zhǔn)評測方法必須具有可伸縮性,使得對爆發(fā)性的數(shù)據(jù)和負(fù)載,評測過程和結(jié)果仍有意義。此外,評測的結(jié)果還必須通過公開的方式報告評測環(huán)境、評測過程和評測結(jié)果。
3.3 大數(shù)據(jù)管理系統(tǒng)基準(zhǔn)評測的挑戰(zhàn)
大數(shù)據(jù)管理系統(tǒng)的一個重要特點是“同類適用(onesize fits a bunch)”,即一個系統(tǒng)所針對的是具有相似特點的一類(bunch)應(yīng)用,而不是所有應(yīng)用。它不同于傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)的“一體適用(onesize fits all)”特點[7]。這也是不同BDMS之間的差異明顯大于傳統(tǒng)數(shù)據(jù)庫管理系統(tǒng)間差異的主要原因。系統(tǒng)間的顯著差異為基準(zhǔn)評測制造了障礙。為了應(yīng)對這一情況,BDMS評測基準(zhǔn)也應(yīng)具有“同類適用”的特點,如圖2所示。
圖2 BDMS評測基準(zhǔn)的“同類適用”特點
具體而言,評測基準(zhǔn)需要滿足高仿真性、可適配性以及可測量性。
高仿真性,即生成的數(shù)據(jù)和負(fù)載在對于性能度量有明確影響的特征上具有高仿真性。
可適配性,即通過參數(shù)定制,基準(zhǔn)評測套件可適配于不同領(lǐng)域,以對應(yīng)BDMS系統(tǒng)的“同類適用”特點。可定制、可適配的評測基準(zhǔn)對于降低評測成本具有重要意義,這是BDMS評測所特有的問題,也是難點所在。
可測量性,即基準(zhǔn)評測結(jié)果在開放、動態(tài)應(yīng)用環(huán)境中仍有意義,開放、動態(tài)的大數(shù)據(jù)應(yīng)用環(huán)境向評測結(jié)果的可解釋性、可重復(fù)性、可審計性、公平性提出了挑戰(zhàn)。這一問題需要通過對BDMS進(jìn)行更細(xì)致的建模以及大量的實驗和實驗結(jié)果分析加以解決。
4 BSMA:面向社交媒體數(shù)據(jù)分析型查詢的基準(zhǔn)評測
4.1 BSMA框架
BSMA是一個社交媒體數(shù)據(jù)分析型查詢評測基準(zhǔn)[8,9],它包含了社交媒體數(shù)據(jù)的形式化描述規(guī)范和一個真實的社交媒體數(shù)據(jù)集,定義了24個測試查詢,提供了評測系統(tǒng)查詢性能的工具以及用于產(chǎn)生社交媒體時間軸(timeline)的數(shù)據(jù)生成器BSMA-Gen[10]。BSMA的系統(tǒng)結(jié)構(gòu)如圖3所示[9],BSMA所針對的數(shù)據(jù)定義如圖4所示[9]。其自帶的真實數(shù)據(jù)集和數(shù)據(jù)生成器所產(chǎn)生的模擬數(shù)據(jù)都符合這一數(shù)據(jù)定義。
圖3 BSMA框架
圖4 BSMA數(shù)據(jù)定義
社交媒體數(shù)據(jù)分析具有典型的大數(shù)據(jù)應(yīng)用的特征:
首先,社交媒體數(shù)據(jù)并非傳統(tǒng)的關(guān)系數(shù)據(jù),具有時序數(shù)據(jù)、文本和多媒體數(shù)據(jù)、圖數(shù)據(jù)和結(jié)構(gòu)化數(shù)據(jù)的多重特征;
其次,社交媒體數(shù)據(jù)量大、更新速度快;
第三,社交媒體數(shù)據(jù)分析通常分析任務(wù)復(fù)雜、具有較高的實時性要求。
BSMA的研究是BDMS評測基準(zhǔn)研究的一項初期工作,從中可以體現(xiàn)研究問題和難點所在。
4.2 數(shù)據(jù)生成
為了完成模擬社交媒體時間線的生成任務(wù),BSMA-Gen完成2個基本工作:模擬真實的社交媒體數(shù)據(jù)分布和高效產(chǎn)生時間線[10]。
BSMA-Gen產(chǎn)生時間軸,即消息數(shù)據(jù)流,每一條消息可表示為一個元組:m= 。其中t是信息發(fā)布的時間,c是內(nèi)容,u是發(fā)布者,f是一個指向源消息的指針。當(dāng)該消息是原始消息時,f為null;而當(dāng)該消息為轉(zhuǎn)發(fā)消息時,f指向被轉(zhuǎn)發(fā)的消息(此消息也可能是轉(zhuǎn)發(fā)的)。現(xiàn)在的生成器版本產(chǎn)生的數(shù)據(jù)只包含結(jié)構(gòu)信息t、u、f,并不包含內(nèi)容信息c。
BSMA-Gen將每個用戶發(fā)布信息的過程模擬成非齊次泊松過程(nonhomogeneousPoisson process),從而可根據(jù)不同配置參數(shù)產(chǎn)生帶有相應(yīng)分布的社交媒體時間軸數(shù)據(jù)。
社交媒體時間線中的元組間轉(zhuǎn)發(fā)相關(guān)性隨著時間間隔變大而衰減。BSMA-Gen采用衰退函數(shù)模擬這一關(guān)系,并通過維護(hù)歷史元組緩沖池和待產(chǎn)生元組緩沖池實現(xiàn)了元素的流式產(chǎn)生。同時,為了進(jìn)一步加快時間線的產(chǎn)生速度,BSMA-Gen采用主從(master-slave)結(jié)構(gòu),由主節(jié)點進(jìn)行發(fā)布者社交網(wǎng)絡(luò)劃分。每個從節(jié)點負(fù)責(zé)一個分區(qū)中所有發(fā)布者所發(fā)布的消息組成的部分時間線的生成。當(dāng)一個從節(jié)點需要從其他分區(qū)獲取發(fā)布者和社交網(wǎng)絡(luò)信息以確定一個元素的f指針時,該元素的輸出會被推遲,以等待遠(yuǎn)程從節(jié)點的信息到來。采用這種異步傳輸、延時生成的策略,每個元素的生成都不需要等待網(wǎng)絡(luò)通信。實驗表明,BSMA-Gen可以確保生成的時間線在轉(zhuǎn)發(fā)結(jié)構(gòu)、時序分布、用戶消息數(shù)等方面符合預(yù)先給定的分布和參數(shù),且吞吐率(即單位時間生成的元素數(shù))與從節(jié)點個數(shù)呈線性增長關(guān)系。
4.3 負(fù)載
BSMA提供了24個典型社交媒體數(shù)據(jù)分析型查詢負(fù)載。每個負(fù)載反映了一種或多種社交媒體數(shù)據(jù)分析的特性。BSMA負(fù)載主要覆蓋了以下3類查詢特性。
社交網(wǎng)絡(luò)查詢(socialnetwork query,SNQ):社交網(wǎng)絡(luò)的查詢圍繞消息發(fā)布者的關(guān)系展開。它的目標(biāo)是查詢社交網(wǎng)絡(luò)的某個特定模式或子圖。
時間線查詢(timelinequery,TQ):在社交媒體中,時間線(timeline)是指以時間逆序排列的消息序列,序列中消息的條數(shù)即時間線的長度。時間線廣義上可分全局時間線(globaltimeline)和局部時間線(local timeline)兩種,全局時間線中的消息來自社交媒體中的任意用戶,而局部時間線則限制了用戶范圍。時間線查詢的本質(zhì)是對于時間序列的查詢。
熱點查詢(hotspotquery,HQ):熱點是指在某個特定的時間線內(nèi)消息中滿足某些過濾條件且統(tǒng)計值最大的某類元素的集合。由于社交媒體中數(shù)據(jù)的統(tǒng)計值分布常符合冪律(power-law)分布,對熱點的查詢在進(jìn)行數(shù)據(jù)連接(join)和聚集(aggregation)計算時往往需要遠(yuǎn)超出查詢其他元素的存儲和計算開銷。
處理這些負(fù)載可能需要對兩個大的集合(關(guān)系)進(jìn)行連接操作、對大集合進(jìn)行多屬性查詢或?qū)Υ蠹线M(jìn)行聚集計算,而這些操作的處理通常是耗時、耗存儲資源的。因此,這些負(fù)載能夠測試數(shù)據(jù)管理系統(tǒng)在社交媒體數(shù)據(jù)分析這一特定應(yīng)用中的性能表現(xiàn)。
4.4 評測指標(biāo)與評測方法
BSMA使用以下3個性能評判指標(biāo)。對于24個典型負(fù)載的組合,計算出這3個指標(biāo)的值,以此來衡量查詢處理性能。當(dāng)然,查詢執(zhí)行的正確性是性能度量的基本前提。
吞吐率指標(biāo):吞吐率指單位時間內(nèi)完成的查詢數(shù)。在這里,吞吐率指標(biāo)度量的是在不同線程數(shù)設(shè)置下能達(dá)到的吞吐率最高值,這個值越高意味著性能越好。
延時指標(biāo):延時指一個查詢從發(fā)起請求到返回結(jié)果所需的時間。在這里,延時指標(biāo)度量的是在不同線程數(shù)設(shè)置下所達(dá)到的次高吞吐率下(即系統(tǒng)未過載時)的查詢延時,這個值越低意味著性能越好。
擴展性指標(biāo):擴展性指隨著吞吐率的提高系統(tǒng)維持延時的能力。在這里,擴展性指標(biāo)度量的是用最小二乘法擬合多個數(shù)據(jù)點的直線斜率。這些數(shù)據(jù)點對應(yīng)不同線程數(shù)設(shè)置下的吞吐量(橫坐標(biāo))和延時(縱坐標(biāo)),擬合直線越平滑意味著擴展性越好。
5 相關(guān)工作
數(shù)據(jù)庫評測基準(zhǔn)研究在關(guān)系數(shù)據(jù)管理和非關(guān)系型數(shù)據(jù)管理方面均取得較大進(jìn)展。針對大數(shù)據(jù)管理領(lǐng)域的基準(zhǔn)評測工作則剛起步。圖5概要地展示了數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn)的發(fā)展過程[11]。
圖5 數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn)的發(fā)展
5.1 面向關(guān)系模型的數(shù)據(jù)庫系統(tǒng)評測基準(zhǔn)
早期數(shù)據(jù)庫評測基準(zhǔn)主要針對RDBMS,相關(guān)研究持續(xù)至今。事務(wù)處理委員會(TPC)是事實上的工業(yè)化標(biāo)準(zhǔn)組織,已經(jīng)提出多個基準(zhǔn)來評測RDBMS[12]?,F(xiàn)有RDBMS評測基準(zhǔn)可被劃分為3類:面向聯(lián)機事務(wù)處理(OLTP)、面向聯(lián)機分析處理(OLAP)以及同時支持OLAP和OLTP的評測基準(zhǔn)。
面向OLTP的基準(zhǔn):面向OLTP的基準(zhǔn)評測包括威斯康星基準(zhǔn)[2]、DebitCredit[13]、AS3AP[14]、TPC-C和TPC-E等。其中,TPC-C和TPC-E目前仍在使用。它們分別仿真?zhèn)}庫訂單管理應(yīng)用和證券交易應(yīng)用。
面向OLAP的基準(zhǔn):此類基準(zhǔn)的負(fù)載包含大量聚集查詢,包括SetQuery[15]、SSB[16]、TPC-H和TPC-DS等。其中TPC-H和TPC-DS目前仍在使用,分別模擬商務(wù)采購應(yīng)用和決策支持應(yīng)用。
同時支持OLAP和OLTP的基準(zhǔn):部分新興數(shù)據(jù)管理技術(shù)支持同時具有OLAP和OLTP需求的應(yīng)用。CH-Benchmark基準(zhǔn)有效融合了TPC-C和TPC-H兩個基準(zhǔn),同時支持OLAP和OLTP評測。CBTR則提供了OLAP/OLTP復(fù)合負(fù)載[17]。
5.2 面向非關(guān)系型數(shù)據(jù)的基準(zhǔn)設(shè)計
數(shù)據(jù)管理技術(shù)發(fā)展的過程是不斷地將非結(jié)構(gòu)化數(shù)據(jù)結(jié)構(gòu)化,納入DBMS,從而降低管理成本、提高利用效率的過程。針對各種非關(guān)系型數(shù)據(jù),有不同的基準(zhǔn)對相關(guān)技術(shù)和系統(tǒng)進(jìn)行評測,見表1。
5.3 面向大數(shù)據(jù)管理技術(shù)的基準(zhǔn)
不同的BDMS的功能和接口各不相同。當(dāng)前的BDMS基準(zhǔn)評測研究工作從以下3個方面展開。
評測MapReduce功能的基準(zhǔn):MapReduce是大數(shù)據(jù)處理中最常用的編程模式(paradigm)。此類基準(zhǔn)主要評測MapReduce實現(xiàn)的性能。面向特定功能的此類基準(zhǔn)包括:模擬TPC-H的MRBench[33]、評測HDFS文件系統(tǒng)的TestDFSIO[34]、Hadoop自帶的Sort[34]和用于測試Pig的PigMix[35]等。此外,一些基準(zhǔn)可同時評測多種功能,如評測Hadoop整體性能的GridMix、混合功能基準(zhǔn)IntelHiBench以及涵蓋了常用數(shù)據(jù)挖掘和數(shù)據(jù)倉庫操作的CloudRank-D[36]。
BDMS基準(zhǔn)評測:CALDA基準(zhǔn)可比較不同BDMS的性能[4]。YCSB[37]及其擴展YCSB++[38]可從性能和可擴展性兩個層面評測云服務(wù)系統(tǒng)。Floratou等人對面向文檔的NoSQL系統(tǒng)、面向決策支持的系統(tǒng)以及商用的DBMS進(jìn)行了性能評測[39]。Rabl等人則比較了6種開源數(shù)據(jù)存儲系統(tǒng)在不同負(fù)載下的性能[40]。
面向應(yīng)用的大數(shù)據(jù)基準(zhǔn)評測:BigBench是一種面向商品零售業(yè)的基準(zhǔn),擴展了TPC-DS[41]。LinkBench是一個由Facebook提出,基于真實社交網(wǎng)絡(luò)應(yīng)用的大規(guī)模圖數(shù)據(jù)評測基準(zhǔn)[42]。而LDBC則是由歐盟資助的鏈接數(shù)據(jù)管理基準(zhǔn)評測組織,并已發(fā)布多個評測基準(zhǔn)[43]。
5.4 國內(nèi)的相關(guān)工作
針對新型計算機系統(tǒng)的基準(zhǔn)評測、新型DBMS的性能測試、新型數(shù)據(jù)庫基準(zhǔn)評測等問題,國內(nèi)學(xué)者也開展了廣泛而深入的研究。
在新型計算機系統(tǒng)的基準(zhǔn)評測方面,中國科學(xué)院計算技術(shù)研究所提出了ICTBench,包含面向數(shù)據(jù)倉庫負(fù)載的DCBench[44,45]、面向BDMS的BigDataBench[46,47]和面向云計算系統(tǒng)的CloudRank[36]3個部分。中國人民大學(xué)孟小峰等人提出了CloudBM基準(zhǔn)來評測云數(shù)據(jù)管理系統(tǒng)[48]。清華大學(xué)鄭緯民等人利用代表性的基準(zhǔn)測試對NAS存儲系統(tǒng)進(jìn)行了研究、比較和分析[49]。
大數(shù)據(jù)應(yīng)用中廣泛使用了包括內(nèi)存數(shù)據(jù)庫、NoSQL/NewSQL系統(tǒng)在內(nèi)的大量新型DBMS。中國人民大學(xué)王珊等人利用TPC-H評測了多款內(nèi)存數(shù)據(jù)庫的性能[50];杜小勇等人使用TPC-DS基準(zhǔn),在100個節(jié)點的集群上,對5種主流的開源BDMS進(jìn)行了全面深入的測試與分析,并在2013年的中國大數(shù)據(jù)技術(shù)大會上報告。華東師范大學(xué)金澈清等人提出了MemTest,以評測內(nèi)存DBMS的主要性能特性[51]。清華大學(xué)王建民團隊在NoSQL數(shù)據(jù)庫基礎(chǔ)上,實現(xiàn)了MOLAP引擎,并使用TPC-DC基準(zhǔn)進(jìn)行了測試[52]。此外,他們在OLAP系統(tǒng)的性能測試[53]、DBMS性能測試[54]等方面做了重要的基礎(chǔ)性工作。上海交通大學(xué)使用BigDataBench來評測數(shù)據(jù)中心上的資源共享策略[55];西安交通大學(xué)則使用這一基準(zhǔn)來診斷大數(shù)據(jù)系統(tǒng)中的性能瓶頸[56]。
在BDMS的評測基準(zhǔn)開發(fā)方面,BigDataBench包含了6個應(yīng)用場景的數(shù)據(jù)集合和19類負(fù)載[46,47]。華東師范大學(xué)提出了一種面向社交媒體數(shù)據(jù)分析型查詢處理的評測基準(zhǔn)BSMA[8,9];提出了一種并行社交媒體數(shù)據(jù)生成方法,以仿真微博等社交媒體數(shù)據(jù)[10]。周敏奇等人則設(shè)計了一種更為通用的可擴展的高仿真數(shù)據(jù)生成器框架[57]。而清華大學(xué)則針對工作流數(shù)據(jù)管理系統(tǒng)的負(fù)載生成開展了研究[58]。
6 結(jié)束語
在“大數(shù)據(jù)”熱潮下,大數(shù)據(jù)管理系統(tǒng)的研發(fā)和應(yīng)用進(jìn)展迅速,而相應(yīng)的評測基準(zhǔn)理論和方法研究則剛剛起步。針對大數(shù)據(jù)應(yīng)用,特別是我國金融、電信、電子商務(wù)等具有鮮明應(yīng)用特點的大數(shù)據(jù)應(yīng)用的特點,遵循“同類適用”原則,從數(shù)據(jù)生成、負(fù)載生成、性能指標(biāo)體系和測量方法這3個角度入手,解決應(yīng)用環(huán)境適配和仿真、科學(xué)和公平評測、評測結(jié)果比較與分析等問題,是大數(shù)據(jù)管理系統(tǒng)評測基準(zhǔn)研究的重要問題。現(xiàn)有的工作從應(yīng)用和系統(tǒng)建模、數(shù)據(jù)仿真、數(shù)據(jù)和負(fù)載的高效生成、多維度性能指標(biāo)設(shè)計等角度開展了研究。但對于設(shè)計和實現(xiàn)具有良好仿真能力、高適配能力的評測基準(zhǔn)而言,非結(jié)構(gòu)化數(shù)據(jù)仿真、超高負(fù)載環(huán)境模擬與評測方法、兼顧分析效果和性能的度量指標(biāo)、開放環(huán)境下的性能評測和評測結(jié)果分析等問題仍是具有挑戰(zhàn)性的研究問題。
數(shù)據(jù)分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
SQL Server 中 CONVERT 函數(shù)的日期轉(zhuǎn)換:從基礎(chǔ)用法到實戰(zhàn)優(yōu)化 在 SQL Server 的數(shù)據(jù)處理中,日期格式轉(zhuǎn)換是高頻需求 —— 無論 ...
2025-09-18MySQL 大表拆分與關(guān)聯(lián)查詢效率:打破 “拆分必慢” 的認(rèn)知誤區(qū) 在 MySQL 數(shù)據(jù)庫管理中,“大表” 始終是性能優(yōu)化繞不開的話題。 ...
2025-09-18CDA 數(shù)據(jù)分析師:表結(jié)構(gòu)數(shù)據(jù) “獲取 - 加工 - 使用” 全流程的賦能者 表結(jié)構(gòu)數(shù)據(jù)(如數(shù)據(jù)庫表、Excel 表、CSV 文件)是企業(yè)數(shù)字 ...
2025-09-18DSGE 模型中的 Et:理性預(yù)期算子的內(nèi)涵、作用與應(yīng)用解析 動態(tài)隨機一般均衡(Dynamic Stochastic General Equilibrium, DSGE)模 ...
2025-09-17Python 提取 TIF 中地名的完整指南 一、先明確:TIF 中的地名有哪兩種存在形式? 在開始提取前,需先判斷 TIF 文件的類型 —— ...
2025-09-17CDA 數(shù)據(jù)分析師:解鎖表結(jié)構(gòu)數(shù)據(jù)特征價值的專業(yè)核心 表結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 規(guī)范存儲的結(jié)構(gòu)化數(shù)據(jù),如數(shù)據(jù)庫表、Excel 表、 ...
2025-09-17Excel 導(dǎo)入數(shù)據(jù)含缺失值?詳解 dropna 函數(shù)的功能與實戰(zhàn)應(yīng)用 在用 Python(如 pandas 庫)處理 Excel 數(shù)據(jù)時,“缺失值” 是高頻 ...
2025-09-16深入解析卡方檢驗與 t 檢驗:差異、適用場景與實踐應(yīng)用 在數(shù)據(jù)分析與統(tǒng)計學(xué)領(lǐng)域,假設(shè)檢驗是驗證研究假設(shè)、判斷數(shù)據(jù)差異是否 “ ...
2025-09-16CDA 數(shù)據(jù)分析師:掌控表格結(jié)構(gòu)數(shù)據(jù)全功能周期的專業(yè)操盤手 表格結(jié)構(gòu)數(shù)據(jù)(以 “行 - 列” 存儲的結(jié)構(gòu)化數(shù)據(jù),如 Excel 表、數(shù)據(jù) ...
2025-09-16MySQL 執(zhí)行計劃中 rows 數(shù)量的準(zhǔn)確性解析:原理、影響因素與優(yōu)化 在 MySQL SQL 調(diào)優(yōu)中,EXPLAIN執(zhí)行計劃是核心工具,而其中的row ...
2025-09-15解析 Python 中 Response 對象的 text 與 content:區(qū)別、場景與實踐指南 在 Python 進(jìn)行 HTTP 網(wǎng)絡(luò)請求開發(fā)時(如使用requests ...
2025-09-15CDA 數(shù)據(jù)分析師:激活表格結(jié)構(gòu)數(shù)據(jù)價值的核心操盤手 表格結(jié)構(gòu)數(shù)據(jù)(如 Excel 表格、數(shù)據(jù)庫表)是企業(yè)最基礎(chǔ)、最核心的數(shù)據(jù)形態(tài) ...
2025-09-15Python HTTP 請求工具對比:urllib.request 與 requests 的核心差異與選擇指南 在 Python 處理 HTTP 請求(如接口調(diào)用、數(shù)據(jù)爬取 ...
2025-09-12解決 pd.read_csv 讀取長浮點數(shù)據(jù)的科學(xué)計數(shù)法問題 為幫助 Python 數(shù)據(jù)從業(yè)者解決pd.read_csv讀取長浮點數(shù)據(jù)時的科學(xué)計數(shù)法問題 ...
2025-09-12CDA 數(shù)據(jù)分析師:業(yè)務(wù)數(shù)據(jù)分析步驟的落地者與價值優(yōu)化者 業(yè)務(wù)數(shù)據(jù)分析是企業(yè)解決日常運營問題、提升執(zhí)行效率的核心手段,其價值 ...
2025-09-12用 SQL 驗證業(yè)務(wù)邏輯:從規(guī)則拆解到數(shù)據(jù)把關(guān)的實戰(zhàn)指南 在業(yè)務(wù)系統(tǒng)落地過程中,“業(yè)務(wù)邏輯” 是連接 “需求設(shè)計” 與 “用戶體驗 ...
2025-09-11塔吉特百貨孕婦營銷案例:數(shù)據(jù)驅(qū)動下的精準(zhǔn)零售革命與啟示 在零售行業(yè) “流量紅利見頂” 的當(dāng)下,精準(zhǔn)營銷成為企業(yè)突圍的核心方 ...
2025-09-11CDA 數(shù)據(jù)分析師與戰(zhàn)略 / 業(yè)務(wù)數(shù)據(jù)分析:概念辨析與協(xié)同價值 在數(shù)據(jù)驅(qū)動決策的體系中,“戰(zhàn)略數(shù)據(jù)分析”“業(yè)務(wù)數(shù)據(jù)分析” 是企業(yè) ...
2025-09-11Excel 數(shù)據(jù)聚類分析:從操作實踐到業(yè)務(wù)價值挖掘 在數(shù)據(jù)分析場景中,聚類分析作為 “無監(jiān)督分組” 的核心工具,能從雜亂數(shù)據(jù)中挖 ...
2025-09-10統(tǒng)計模型的核心目的:從數(shù)據(jù)解讀到?jīng)Q策支撐的價值導(dǎo)向 統(tǒng)計模型作為數(shù)據(jù)分析的核心工具,并非簡單的 “公式堆砌”,而是圍繞特定 ...
2025-09-10