天天看點

大資料的典型 應用場景及展望

四年前的矽谷,風投埃裡森拿出一億美金來投資大資料公司,他認為hadoop技術在未來的若幹年中會從底層的資料平台,從傳統的關系型資料庫進行遷移。資料的分析層會被全新的資料分析工具所替代,可視化層和應用分析會有更多的新工具出現,并認為這個市場将達到幾百億美金的規模。

過去幾年,hadoop的發展非常迅猛。我們常講大資料的四v特征,hadoop在大資料處理上表現出的處理量、性能、挖掘能力的提升和碎片化處理能力,使其得到越來越廣泛的應用。

一、hadoop的主流應用場景:資料倉庫的主要組成部分

傳統的企業有若幹個主機,用于銷售、營運管理等等,産生的資料首先經過ods層,将資料從多個業務系統中集中起來,進行清洗、轉換等內建操作,然後将過加工的資料進入企業it架構的核心——資料倉庫進行統計、挖掘和分析。最後用可視化工具進行展現。這是傳統的企業資料倉庫的架構,經常采用主流的甲骨文等資料庫技術來實作。

hadoop作為資料倉庫組成部分的四個驅動力

網際網路公司早年的時候,是把hadoop做在資料倉庫的核心,比如facebook早期的時候是從伺服器采集是通過實時的日志的采集工具,經過hadoop把hadoop作為資料分析工具,呈現把結果放在甲骨文中做展現。

網際網路公司之是以這麼做,是因為網際網路資料量大到在傳統的資料庫不能處理。現在傳統的企業也面臨同樣的問題,将hadoop作為資料倉庫主要組成部分有四個驅動力:

效率:傳統的資料倉庫技術已經面臨非常繁重的資料分析任務,處理的延遲從一天到了一周。

成本:傳統的資料架構成本動辄幾千萬。hadoop可以實作成本若幹倍的降低。

資料來源多樣:視訊、音頻等企業非結構化資料來源增多。mapreduce對于非結構化或半結構化資料的讀取非常有效。

資料分析需求的演進: 資料分析不再隻滿足于統計。使用hadoop的技術,能夠對資料進行深度的挖掘和分析,實作對未來的預測。

hadoop改變企業資料倉庫架構的線路圖

第一步:資料倉庫的補充

2011、2012年的時候 hadoop主要是作為資料倉庫的補充在做資料的清洗。這一層hadoop很擅長。hadoop的優勢是能夠把計算任務對全要素進行統計分析,這是方式非常适合簡單的場景,早年hadoop的最佳用途是作為etl的平台。

第二步:逐漸進入核心

随着hadoop生态系統逐漸完善,有更多的數字化工具支援hadoop, hadoop開始進入資料倉庫的核心領域。有些企業開使用hadoop來直接做資料可視化,在有些行業中已經開始用hadoop逐漸取代傳統的關系資料庫來建立資料倉庫。從整個的資料倉庫的架構來看,有一半的架構已經開始被hadoop覆寫了。

第三步:hadoop使資源管理變為可能,最終将取代企業完整的整據倉庫

在一兩年之内有些企業完整的資料倉庫架構都可能會被hadoop取代掉。

過去企業資料倉庫的時候任務很繁重,系統效率低下。造成這種狀況的重要原因是,客戶把過多的負載放在資料倉庫上面,資料倉庫本身又沒有資源配合的方式。

hadoop2.0推出了管理架構,使得資源管理變成了可能,使得資料倉庫支撐多個部門的資料分析和通路更加高效。舉例來說,每個部門的業務都是動态建立虛拟叢集實作的,每個叢集都有一定的資源配額,這樣的配額用時不會超過這個配額,使得使用者任何的負載不會影響其他的使用者,這成為資料倉庫裡一個重要的實作,資料倉庫完全平滑,24小時不間斷運作的保障。過去上千人在通路hadoop的時候,也是通過排程機制實作的,随着hadoop2.0的出現和資源管理能力的提升,通過資源管理層可以友善的配置資源。

我們可以設定cpu的記憶體和存儲資源,每個部門使用的時候有配額的最低保障。當另外一個部門的使用者上線使用的時候,比如建立了一個叢集,這時會把你的部分資源還給後面的第二個使用者,原來第一個使用者的資源被收縮了,更多的使用者進來的時候,第一個使用者的資源被進一步收縮,收縮到一個最低的名額。一方面充分保障了每個使用者最低資源的配額,第二也保證系統整體運作的情況下可以充分有效利用整體的計算資源。

二、随着雲計算和物聯網的逐漸興起,實時流資料的處理将成為關注重點

雲計算和物聯網使得資料呈現兩個主要特點。首先,資料在沒有人工幹預的情況下24小時不間斷的産生;第二資料并發量高,使得單一的統計已經不能滿足使用者要求,對資料模式的分析和深度挖掘的要求增強

現在的大資料處理不光需要做統計,而是需要做機器學習,快速地檢測出異常的狀态。

比如在交通行業部署的實時監控平台,這是一個發展得比較成熟的案例,在全國已經得到了廣泛部署。其主要用途是把路面上裝的錄影機的照片和分析出來的車牌等資訊,實時的傳送到中心的大叢集中,然後把所有的車流資訊實時彙總至省級叢集部署,通過流處理形成實時的應用,比如說區間測速、實時路況、公安部實時布控的應用等。相關資料也會進入到資料庫,對外提供車輛軌迹的查詢,實時路況的檢索,比如行車分析和交通管理的應用等。

過去在常見的部署架構中由資料叢集做實時的處理時,包括應用和查詢的功能,資料會經過蜂窩隊列,分布量是非常高的,單節點的伺服器可以支撐一秒鐘十萬條結果的插入,基本上是滿負荷。

傳統的流處理加上hadoop,可以解耦前端應用和後端的分析應用。由于分布隊列的吞吐量很高,可以在幾百萬個地方寫入,可以基本滿足上千萬傳感器同時傳送峰值的壓力,後端的是流處理的引擎做資料分析。

我們把資料流按時間切片,每個小切片一百毫秒左右。我們需要在資料經過這個流的時候在流上直接做異常檢測,包括多種算法,最基本的是希望将這些算法直接移植到流上,實作流式的異常檢測。這裡面有一個挑戰是,剛開始出現的異常可能并不準确,盡量要避免誤報的情況,通常會用sql來做聚合和預先的資料處理,而spark可以實作小片的批處理流程,我們在小的批量上能夠實作延遲是一秒鐘内可以發出告警。

這種方式的好處是可以對實時資料和曆史資料實作綜合的分析,都同在一個資料庫中,可以在上面用完整的統計分析的挖掘,包括可以做計算和預測,這些分析超出了以前統計的範疇,而且需要曆史資料和實時資料進行統一的分析。這個領域今年可能會是比較熱門的領域,預計這個模式在物聯網實時處理上得到更加廣泛的應用。

三、大資料技術能給我們的生活帶來什麼

我們把資料源分兩大類:

1.人的行為産生的資料:包括網上購物、通過營運商通話、發微信都會留下資料,這些分析無外乎是給客戶提供更好的服務,或者是幫助商家更準确的找到客戶進行精準營銷;

2.機器産生的資料:幫助發現一些客觀規律,比如說交通的模式是怎樣的,用電的消耗量和氣侯和電網的關系是怎樣的,也對資料進行分析和能夠做實時報警和診斷優化生産線的流程提供依據。

資料分析和挖掘開始出現,目前還不是主流。大資料描繪的場景是能夠進行預測,這逐漸開始成為事實。

人流密度實時預警

比如通過對基站的資料基本上可以比較粗的定位人的大緻位置。通過對資料進行密度的統計,可以非常迅速的找出區域内部密度的值,基礎值是每個基站每英裡多少個使用者數,這是基站可以提供的資料,利用這個資料可以非常快的知道人群的密度。

也可以利用銀聯的資料,我們的合作夥伴用銀聯的資料把上海的商圈都找出來了,商圈是根據過去三個月銀聯的刷卡記錄,根據消費額、消費地點以及消費商戶的類别進行統計的,上海14個商圈是比較密集的,有些商圈我們也沒去過,比較偏遠的反而是商圈。上海的架構看基礎是衛星城的架構,和北京不同,周圍有很多密集的商圈。

這個資料也可以做人群的預測,商圈是人群密集的地方,随着踩踏事件的出現,公安的客戶也來找到我們,發現這個資料對他們很有用,因為我們可以統計節日間實時的刷卡記錄,可以判斷晚七點到九點消費集中的區域,這些區域是人。

垃圾短信分類

利用流式的機器學習做垃圾短信的分類,在流上做實時的檢測,速度是非常快的,可以流上實時的實作。營運商所有的短信經過流式系統可以迅速的判斷出哪些消息是垃圾短信,來淨化現在營運商的垃圾短信泛濫局面。

消費者行為預測

機器學習類:協同過濾、相似度主要是比較商品間的相似程度進行推薦,一些新的應用也比較有趣,像是基于時序關系的預測。每次消費行為和時間是有關的,一個人經常跑到陸家嘴有一個明顯的地方,帶着小孩會去海洋公園玩一下,有時看東方明珠看一下,然後去正大廣場吃個午飯,這是統計出一個模式,這是時序相關性,我們可以對客戶推送一些比較精準的廣告。

總結

我們看到hadoop主要的用途是資料倉庫中,未來會逐漸的開始把更多的負載牽到上面來;第二物聯網逐漸的興起,針對一些挑戰我們需要在流上做更強的分析和機器學習,這種新的架構也層出不窮;第三是全新的叢集的應用。可以預見的是,随着雲計算和物聯網等技術的不斷發展,利用大資料的分析能力實作對未來的洞察将逐漸成為現實。

本文轉自d1net(轉載)