為什麼現在要談大資料?

出版圈郭志敏發表於2013-05-29

“所謂大資料,是一個綜合性概念,它包括因具備3V(Volume/Variety/Velocity)特徵而難以進行管理的資料,對這些資料進行儲存、處理、分析的技術,以及能夠通過分析這些資料獲得實用意義和觀點的人才和組織。”

所謂“儲存、處理、分析的技術”,指的是用於大規模資料分散式處理的框架Hadoop、具備良好擴充套件性的NoSQL資料庫,以及機器學習和統計分析等。所謂“能夠通過分析這些資料獲得實用意義和觀點的人才和組織”,指的是目前在歐美十分緊俏的“資料科學家”這類人才,以及能夠對大資料進行有效運用的組織。

大資料的民主化

大資料本身並不是一個新的概念。特別是僅僅從資料量的角度來看的話,大資料在過去就已經存在了。例如,波音的噴氣發動機每30分鐘就會產生10TB的執行資訊資料,這樣計算的話,安裝了4臺發動機的大型客機,每次飛越大西洋就會產生640TB的資料。世界各地每天有超過2.5萬架的飛機在工作,可見其資料量是何等龐大。生物技術領域中的基因組分析,以及以NASA(美國國家航空航天局)為中心的太空開發領域,從很早就開始使用十分昂貴的高階超級計算機來對龐大的資料進行分析和處理了。

現在和過去的區別之一,就是大資料已經不僅產生於特定領域中,而且還產生於我們每天的日常生活中,Facebook、Twitter等社交媒體上的文字資料就是最好的例子。而且,儘管我們無法得到全部資料,但大部分資料可以通過公開的API(應用程式程式設計介面)相對容易地進行採集。在B2C企業中,使用文字挖掘(text mining)和情感分析等技術,就可以分析消費者對於自家產品的評價。

硬體價效比的提高以及軟體技術的進步

另一個原因在於,計算機價效比的提高,磁碟價格的下降,利用通用伺服器對大量資料進行高速處理的軟體技術Hadoop的誕生,以及隨著雲端計算的興起,甚至已經無需自行搭建這樣的大規模環境。上述這些因素,大幅降低了大資料儲存和處理的門檻。因此,過去只有像NASA這樣的研究機構以及屈指可數的幾家特大企業才能做到的對大量資料的深入分析,現在只要極小的成本和時間就可以完成,無論是剛剛創業的企業,還是中小企業或是大企業,都可以對大資料進行充分的利用。

(1)計算機價效比的提高

承擔資料處理任務的計算機,其處理能力遵循摩爾定律一直在不斷進化。所謂摩爾定律,是美國英特爾公司共同創始人之一的高登•摩爾(Gordon Moore,1929~)於1965年提出的一個觀點,即“半導體晶片的整合度,大約每18個月會翻一番”。從家電賣場中所陳列的電腦規格指標就可以一目瞭然地看出,現在以同樣的價格能夠買到的計算機,其處理能力已經和過去不可同日而語了。

(2)磁碟價格的下降

除了CPU效能的提高,硬碟等儲存器(資料的儲存裝置)的價格也明顯下降。2000年的硬碟驅動器平均每GB容量的單價約為16美元到19美元,而現在卻只有7美分,相當於下降到了10年前的230~270分之一(圖表1-4)。換算成人民幣的話,就相當於4~5毛錢的樣子。

變化的不僅僅是價格,儲存器在重量方面也產生了巨大的進步。1982年日立最早開發的超1GB級硬碟驅動器(容量為1.2GB),重量約為250磅(約合113千克)。而現在,32GB的微型SD卡重量卻只有0.5克左右,技術進步的速度真是相當驚人。

enter image description here

(3)大規模資料分散式處理技術Hadoop的誕生

Hadoop是一種可以在通用伺服器上執行的開源分散式處理技術(詳細說明見第2章),它的誕生成為了目前大資料浪潮的第一推動力。如果只是結構化資料不斷增長,用傳統的關係型資料庫和資料倉儲,或者是其衍生技術,就可以進行儲存和處理了,但這樣的技術無法對非結構化資料進行處理。Hadoop的最大特徵,就是能夠對大量非結構化資料進行高速的處理。

雲端計算的普及

上述①~③所提到的這種大資料的處理環境,現在在很多情況下也並不一定要自行搭建了。例如,使用Amazon的雲端計算服務EC2(Elastic Compute Cloud)和S3(Simple Storage Service),就可以在無需自行搭建大規模資料處理環境的前提下,以按用量付費的方式,來使用由計算機叢集組成的計算處理環境和大規模資料儲存環境了。此外,在EC2和S3上還利用預先配置的Hadoop工作環境提供了“EMR”(Elastic MapReduce)服務。利用這樣的雲端計算環境,即使是資金不太充裕的創業型公司,也可以進行大資料的分析了。

實際上,在美國,新的IT創業公司如雨後春筍般不斷出現,它們通過利用Amazon的雲端計算環境,對大資料進行處理,從而催生出新型的服務。這些公司包括網路廣告公司Razorfish、提供預測航班起飛晚點等“航班預報”服務的FlightCaster、對消費電子產品價格走勢進行預測的Decide.com等。下面我們來介紹一下Decide.com和FightCaster這兩家公司的案例。

(1) Decide.com

Decide.com是一家成立於2010年的創業型公司,它提供的服務主要是告訴大家數位相機、電腦、智慧手機、電視機等數碼產品什麼時候購買最划算。

也許大家都有這樣的經歷,剛剛買的數位相機和電視機,馬上就降價了,真是後悔不已。利用Decide.com所提供的服務,就可以知道價格上漲和下降的時機,再買這些產品時就不會讓自己後悔了。

Decide.com每天要從數百家網上商城中收集超過10萬條家電和數碼產品的價格資料,同時還會搜尋關於這些產品的部落格和新聞報導,以獲取是否會有新型號準備發售等資訊。這些資料的資料量每天超過25GB,整體用於分析的資料量則高達約100TB。這些收集到的資料會被髮送到Amazon的雲端計算平臺,並通過Hadoop來進行統計和分析工作。

Decide.com競爭力的源泉,來自公司中4位電腦科學博士所開發的演算法,這種演算法可以對家電和數碼產品價格的上漲或下降走勢做出高精度的預測。

我們輸入了幾種產品進行測試,得到的結果如下。

  • Amazon平板電腦Kindle Fire

Kindle Fire是2011年11月14日發售的,我們詢問發售兩週後是否值得購買,得到的回答是: “可以購買,價格不太可能會下降。”(Buy Prices not likely to drop)(圖表1-5)。

enter image description here

  • 三星Galaxy Tab 10.1

三星Galaxy Tab(10.1英寸版)是2011年6月發售的,在發售半年之後的12月1日,是否值得購買呢?得到的結果是:“在漲價之前購買。”(Buy Before prices rise)如果相信Decide.com給出的建議,則該產品有86%的概率會在兩週之內漲價(圖表1-6)。

enter image description here

  • 索尼46英寸液晶電視Bravia(KDL-46BX420)

這款索尼46英寸液晶電視是2011年1月發售的,在發售約11個月之後的2011年12月是否值得購買呢?得到的結果是: “等待價格下降”(Wait for prices to drop)根據Decide.com的預測,該產品有84%的概率會在兩週內降價(圖表1-7)。 遺憾的是,該服務還不支援日本市場,不過它依然是一項十分有意思的服務。

enter image description here

(2)FlightCaster

FlightCaster創立於2009年,它所提供的服務,是在航空公司發出正式通知6個小時之前,就能夠對航班晚點做出預報。 FlightCaster的預報是基於交通統計局的資料、聯邦航空局航空交通管制系統指令中心的警報、FlightStats(一個釋出航班運營狀況資訊的網站)的資料、美國氣象局的天氣預報等所釋出的。這些資料都是公開資料,有需要的話,任何人都可以獲得。 基於這些資料,FlightCaster可以做出類似“正點概率為3%,輕微晚點(60分鐘以內)概率為14%,晚點60分鐘以上概率為83%”這樣的預測。如果預報顯示該航班有很大概率會晚點,還會給出相應的理由,如“目的地因暴雨天氣風力較強”、“(往返飛行的)到達航班已經晚點72分鐘”等(圖表1-8)。

enter image description here

該公司服務的強項在於,可以對過去10年的統計資料加上實時資料所構成的龐大資料,通過其擁有專利的人工智慧演算法進行分析,做出準確率高達85~90%的航班晚點預測。

既然能夠產生如此準確的預測結果,我們不禁要關心其所運用的技術和硬體架構。FlightCaster是一家創業型公司,並沒有豐厚的資金,為了控制初期投資,其龐大的資料處理都是在Amazon的雲端計算平臺(EC2和S3)上搭建的Hadoop叢集中完成的。這個Hadoop叢集是Cloudera公司提供的一項名為AMI(Amazon Machine Image)的服務,而FlightCaster正是利用了這個叢集上的機器學習功能來進行資料探勘的。

另一方面,其前端部分是在Heroku公司(被Salesforce.com收購)的雲端計算平臺上開發的,Heroku提供了Ruby on Rails(開發框架)的PaaS(Platform as a Service)服務。順便說一下,Heroku的PaaS是部署在EC2、S3等Amazon雲平臺上的。 此外,該公司還運用了大量的新技術,如將Hadoop進行抽象化的高階工作流語言Cascading,以及用Java編寫的Lisp方言動態語言Clojure等,對於技術極客們來說還是相當有吸引力的。

FlightCaster上還發布了一組到達航班晚點可能性最高和最低的機場排名,這裡列出來供大家參考。

  • 到達航班晚點可能性最高的機場

第1名:紐瓦克機場(新澤西州)

第2名:拉瓜迪亞機場(紐約州)

第3名:JFK機場(紐約州)

第4名:芝加哥奧黑爾機場(伊利諾伊州)

第5名:費城機場(賓夕法尼亞州)

  • 到達航班晚點可能性最低的機場

第1名:檀香山機場(夏威夷州)

第2名:鹽湖城機場(猶他州)

第3名:達拉斯機場(德克薩斯州)

第4名:辛辛那提機場(肯塔基州)

第5名:約翰•韋恩機場(加利福尼亞州)

本文摘自即將在6月10號左右上市的《大資料的衝擊》

enter image description here

相關文章