“雅虎公司現(xiàn)在可以為客戶提供更相關(guān)的廣告數(shù)據(jù),從而提高了廣告投放費用和廣告活動的有效性。我們通過把處理大數(shù)據(jù)集的Hadoop和Hive技術(shù)與由Microsoft BI平臺提供的強大的分析洞察力實現(xiàn)了這一目標(biāo)。”
Dianne Cantwell TAO開發(fā)領(lǐng)導(dǎo) 雅虎
總部位于加州的雅虎公司經(jīng)營著世界上最受歡迎的網(wǎng)站之一,每個月在全球有超過700萬的獨立訪問者。該公司擁有并運營為廣大客戶提供的在線廣告服務(wù),這些服務(wù)通過雅虎一系列的網(wǎng)站進行提供。他們從這些訪問交換當(dāng)中來更好地定位和提高客戶廣告投放的效率和收益。致力于更快地為客戶提供更多更有意義和更有用的數(shù)據(jù)分析,雅虎專門實施了一個數(shù)據(jù)處理解決方案,將其龐大的存儲在Apache Hadoop開源框架中的數(shù)據(jù),整合到微軟SQL Server 2008 R2當(dāng)中。通過這一解決方案,雅虎成功地幫助客戶提高了廣告投放的效率,同時雅虎的廣告商們增加了在雅虎網(wǎng)站的廣告投放費用,公司還提供了更多更相關(guān)的廣告數(shù)據(jù),解決方案所采用的分區(qū)的設(shè)計,意味著可以支撐更快地加載大規(guī)模的數(shù)據(jù)集。
業(yè)務(wù)狀況
雅虎公司總部位于加利福尼亞州的桑尼維爾市,是一家互聯(lián)網(wǎng)公司,經(jīng)營一些非常受歡迎的網(wǎng)站。這些網(wǎng)站包括搜索引擎、門戶網(wǎng)站、新聞推送等,擁有每月超過700萬獨立訪問者,達到全球在線總數(shù)47%以上。
受到大量的在線觀眾的吸引,廣告客戶紛紛涌向這些網(wǎng)站。為了幫助廣告客戶更好地分析消費者相關(guān)的數(shù)據(jù)并成功地吸引客戶,雅虎構(gòu)建了定位、分析和優(yōu)化(Targeting、Analytics、Optimization,TAO)解決方案,構(gòu)建了一個功能強大的,可擴展的廣告分析工具。TAO基于雅虎網(wǎng)站,如汽車、財經(jīng)、健康、郵件、新聞、搜索、體育和旅游活動等頻道,通過Right Media Exchange(Right Media Exchange,RMX)為成千上萬在雅虎網(wǎng)站上投放廣告的客戶提供報表。
TAO平臺的一個組成部分是開源軟件框架Apache Hadoop,構(gòu)成了可靠的、可擴展的、分布式的計算環(huán)境。Hadoop平臺由雅虎創(chuàng)建,被用以分析大量的非結(jié)構(gòu)化的數(shù)據(jù),采用商業(yè)的服務(wù)器計算機并將數(shù)據(jù)實時分發(fā)至應(yīng)用程序。
在過去的幾年中,Hadoop成為公司廣告分析中大數(shù)據(jù)管理的主要工具。每天,Hadoop處理著超過3.5億次的廣告顯示,以每小時進行刷新。TAO的源集群每個季度處理著4640億行的數(shù)據(jù)。
盡管Hadoop正在幫助雅虎成功地處理著大規(guī)模的數(shù)據(jù)集,該公司依然需要從大數(shù)據(jù)當(dāng)中提取更多更有意義的分析信息,以開展更多的熱點和深入的分析。有了這項功能,公司能夠快速地對客戶的需求做出響應(yīng)。
具體而言,雅虎的廣告客戶希望能夠為消費者提供更具相關(guān)性的廣告推送,這類的廣告將會被視為有價值的建議。例如,針對性更強的廣告能夠為訪問雅虎網(wǎng)站的消費者留下更為深刻的印象,促使他們采取更進一步的行動,如查看廣告或點擊了解更多詳情等。
要提供這些信息,雅虎需要能夠從消費者的行為當(dāng)中獲得更多的信息,例如訪問的網(wǎng)站、一天之內(nèi)的訪問次數(shù)、性別、年齡、位置和興趣等,并根據(jù)這些信息來為不同的消費者提供不同的有針對性的信息。通過提供深入到這一層次的分析,雅虎能夠幫助廣告客戶快速找到他們的目標(biāo)客戶,以實現(xiàn)最佳的投資回報。
此外,雅虎希望能夠提高其TAO數(shù)據(jù)庫的性能,來更快地為客戶提供更多的數(shù)據(jù)。更低的延遲將能夠更加頻繁地幫助用戶優(yōu)化他們的廣告效率,這對于只持續(xù)數(shù)天的熱點廣告投放而言至關(guān)重要。
2010年上半年,雅虎決定尋求新的、性能更高的、能夠與Hadoop協(xié)同工作的商業(yè)智能解決方案。
解決方案
多年以來,雅虎都是微軟公司的重要客戶之一,在為其解決方案選擇新的技術(shù)時,基于其與微軟公司多年的合作關(guān)系,雅虎與微軟緊密合作,利用微軟SQL Server 2008 R2企業(yè)版數(shù)據(jù)管理軟件,創(chuàng)建了一個新的BI解決方案。
通過使用SQL Server 2008 R2,雅虎增強了其TAO基礎(chǔ)架構(gòu),現(xiàn)在能夠從一個Hadoop集群當(dāng)中抽取數(shù)據(jù)并加載到一個第三方的數(shù)據(jù)庫當(dāng)中,并最終把數(shù)據(jù)加載到一個SQL Server 2008 R2分析服務(wù)的多維數(shù)據(jù)集當(dāng)中。多維數(shù)據(jù)集支持來自客戶端,如Tableau Desktop業(yè)務(wù)分析軟件、內(nèi)部自定義的應(yīng)用程序等工具的連接。員工可以使用這一軟件來創(chuàng)建交互式的數(shù)據(jù)儀表板并實現(xiàn)熱點分析。
新的基礎(chǔ)架構(gòu)部署在IBM x3560服務(wù)器計算機上,同樣采用了新的分區(qū)方法,針對提高超大型數(shù)據(jù)集的查詢功能做出了優(yōu)化。在這個模型中,源數(shù)據(jù)被加載到關(guān)系型數(shù)據(jù)庫當(dāng)中,在該數(shù)據(jù)庫中,數(shù)據(jù)被存儲在一個分區(qū)表當(dāng)中,每個分區(qū)相當(dāng)于大約等同于每小時可以處理的數(shù)據(jù)量,然后每天在多維數(shù)據(jù)集端合并及分配到四個分區(qū)。
通過采取這種方式存儲和讀取數(shù)據(jù),賦予SQL Server 2008 R2分析服務(wù)以更快的速度讀取和處理數(shù)據(jù),如果數(shù)據(jù)沒有被存儲在分區(qū)表當(dāng)中的話,性能將遠遠低于采用分區(qū)表的方式。因此,對于非常大的數(shù)據(jù)集,查詢的性能得到了極大的提高。
TAO基礎(chǔ)架構(gòu)現(xiàn)在包含了一個2PB級的Hadoop集群,每天發(fā)送1.2TB的原始數(shù)據(jù)到11G真實應(yīng)用程序集群中的第三方數(shù)據(jù)庫。從這里開始,每天經(jīng)過壓縮之后的135GB的數(shù)據(jù)會被發(fā)送到一個SQL Server 2008 R2分析服務(wù)數(shù)據(jù)集當(dāng)中,多維數(shù)據(jù)集每個季度會產(chǎn)生24TB的數(shù)據(jù),使其成為世界上已知最大的SQL Server分析服務(wù)多維數(shù)據(jù)集。
微軟已經(jīng)開發(fā)出了針對Apache Hadoop的SQL Server連接器,其設(shè)計目的是實現(xiàn)在Hadoop和SQL Server 2008 R2之間的高效數(shù)據(jù)傳輸。
通過使用該解決方案,企業(yè)客戶將能夠把大量的Hadoop數(shù)據(jù)移動到SQL Server 2008 R2平臺上,從而實現(xiàn)從結(jié)構(gòu)化的和非結(jié)構(gòu)化的數(shù)據(jù)當(dāng)中獲得更為深刻的業(yè)務(wù)洞察力。
SQL Server Connector for Hadoop能夠為雅虎提供潛在的、更快的數(shù)據(jù)加載能力。雅虎公司計劃采用熟悉的分析工具,如微軟SQL Server 2008 R2分析服務(wù),來對Hadoop大數(shù)據(jù)處理作業(yè)所產(chǎn)生的結(jié)果進行分析。
雅虎也在與微軟合作以確定把從Hadoop中獲得的數(shù)據(jù)遷移到SQL Server 2008 R2分析服務(wù)多維數(shù)據(jù)集中的最佳方式。通過把Hadoop與微軟商業(yè)智能環(huán)境進一步融合,微軟一直致力于開發(fā)針對Hadoop Hive的連接器原型,Hive是一個構(gòu)建在Hadoop之上的數(shù)據(jù)倉庫基礎(chǔ)架構(gòu)。研究的一個領(lǐng)域是使用Hadoop Hive Open Database Connectivity(ODBC)驅(qū)動程序,它是一個針對Hive提供的采用ODBC API標(biāo)準(zhǔn)的軟件庫。通過使用這一驅(qū)動程序(現(xiàn)階段還處于原型狀態(tài)),雅虎將能夠直接把數(shù)據(jù)從Hadoop當(dāng)中抽取到SQL Server 2008 R2分析服務(wù)多維數(shù)據(jù)集當(dāng)中。
微軟也在使用相同的Hive ODBC驅(qū)動程序來與PowerPivot for Excel中的xVelocity內(nèi)存駐留分析引擎(VertiPaq)進行整合。該連接器還將結(jié)合xVelocity提供的內(nèi)存優(yōu)化的列存儲索引功能,在SQL Server 2012當(dāng)中加速對數(shù)據(jù)倉庫查詢的處理。
企業(yè)收益
新的TAO解決方案已經(jīng)幫助雅虎提高了廣告投放的效率,并提升了其廣告客戶在廣告上的投入。此外,雅虎還可以為其客戶提供關(guān)聯(lián)度更高的廣告數(shù)據(jù),并且以比過去快得多的速度來加載和檢索分析數(shù)據(jù)。
提高廣告客戶的廣告投入和廣告活動的效率
通過引入SQL Server 2008 R2并將其作為一個核心組件,雅虎已經(jīng)從新的TAO基礎(chǔ)架構(gòu)當(dāng)中在廣告客戶廣告投入和廣告投放效率兩個領(lǐng)域看到了很大的好處。由于廣告客戶已經(jīng)從他們在雅虎平臺上的廣告投放當(dāng)中提高了投資的收益,他們很樂于增加自己的廣告投放。
在供應(yīng)方面,TAO可以幫助雅虎通過在一系列的維度上進行數(shù)據(jù)切片,實現(xiàn)對諸如每千次有效的廣告投放的成本(eCPM)等信息的跟蹤,來提高量化的分析。在一般情況下,eCPM越高,意味著雅虎和它的廣告客戶越能夠從他們的廣告投放當(dāng)中獲得越大的收益。
雅虎廣告業(yè)務(wù)主管將這些收益歸結(jié)為SQL Server 2008 R2分析服務(wù)多維數(shù)據(jù)集的使用,這為雅虎的廣告客戶提供了一個更為精準(zhǔn)地細分目標(biāo)網(wǎng)絡(luò)用戶市場的方法。
提供關(guān)聯(lián)度更高的廣告數(shù)據(jù)
通過從新的微軟解決方案當(dāng)中獲得的增強的廣告分析功能,雅虎可以提供關(guān)聯(lián)度更高的廣告數(shù)據(jù),這些數(shù)據(jù)可以轉(zhuǎn)化成為廣告客戶的收益和更好的性能,并最終為雅虎帶來更高的收入。
由于引入新的增強的TAO基礎(chǔ)架構(gòu),雅虎現(xiàn)在可以為廣告投放經(jīng)理和廣告客戶提供關(guān)聯(lián)度更高的數(shù)據(jù)。在實施新的解決方案之前,雅虎的廣告投放經(jīng)理和廣告客戶在衡量廣告活動的收益方面效果較差?,F(xiàn)在,通過引入SQL Server 2008 R2分析服務(wù)多維數(shù)據(jù)集、自定義的Web應(yīng)用程序,以及和Tableau之間的相互作用,提供了一個更為清晰地了解某個廣告投放的效果如何,以及雅虎的網(wǎng)站在如何為公司創(chuàng)造收入。
總體而言,新的解決方案可以幫助雅虎更好地分析廣告數(shù)據(jù),為其帶來更多的企業(yè)廣告客戶,幫助廣告客戶增加廣告投入,并幫助雅虎最終從中收益。
更快地加載數(shù)據(jù)、處理更快速的查詢
新的TAO基礎(chǔ)架構(gòu)所采用的分區(qū)設(shè)計對于加快把數(shù)據(jù)加載到多維數(shù)據(jù)集當(dāng)中至關(guān)重要。分區(qū)是新的微軟解決方案成功的基礎(chǔ),因為它有助于加快從源當(dāng)中的臨時數(shù)據(jù)到分析多維數(shù)據(jù)集處理的吞吐量。
分區(qū)的策略也有助于更快的查詢時間。對于雅虎TAO用戶而言,從Tableau Desktop客戶端提交的查詢結(jié)果返回的平均時間為6秒,而從公司定制的優(yōu)化的應(yīng)用程序提交的查詢結(jié)果返回的平均時間為2秒。
雅虎計劃繼續(xù)擴展這一解決方案,將來將會添加更多的數(shù)據(jù)和更多新的功能到解決方案當(dāng)中。