我們可以將大數據描述為這樣一種數據管理難題,由于數據量、數據速度和數據多樣性方面的需求日益增加,人們無法使用傳統數據庫來解決這種難題。大數據的定義很多,但其中大部分定義都包含所謂大數據的“三個 V”的概念:
大量 (Volume):數據量從數 TB 到數 PB
多樣 (Variety):包括多種來源和格式(例如 Web 日志、社交媒體互動、電子商務與在線交易、財務交易,等等)的數據
高速 (Velocity):從生成數據的時間到向用戶提供可付諸行動的見解的時間,企業對速度的要求越來越高。因此,需要以相對較短的時間(從每天一次到實時)完成數據的收集、存儲、處理和分析
您為什么會需要大數據?
盡管關于大數據的宣傳無處不在,許多組織仍然沒有意識到他們正面臨大數據問題,或者根本沒有從大數據的角度思考自己面臨的問題。一般而言,如果組織現有的數據庫和應用程序已無法再擴展以應對數據量、數據多樣性和數據速度方面需求的激增,那么該組織很可能會通過采用大數據技術而獲益。
若未能正確解決大數據難題,則會導致成本不斷上升,工作效率和競爭力不斷下降。而合理的大數據策略則能夠遷移現有的繁重工作負載,交由大數據技術處理,并部署新應用程序以利用新的商機,從而幫助組織降低成本并提高運營效率。
大數據的工作原理是什么?
大數據技術提供了可滿足整個數據管理周期需求的新工具,因此具有技術上和經濟上的可行性,不僅能夠收集并存儲更大的數據集,還能對其進行分析,以發掘有價值的新見解。在大多數情況下,大數據處理包含一種常見的數據流 – 從收集原始數據到使用可付諸行動的信息。
收集。收集原始數據(事務、日志、移動設備等)是眾多組織在應對大數據時所面臨的第一個難題。優秀的大數據平臺可使這一步事半功倍,讓開發人員能夠以任意速度(從實時處理到批處理)攝取多種數據(從結構化數據到非結構化數據)。
存儲。任何大數據平臺都需要一個安全、可控制且持久耐用的存儲庫,用于在處理任務之前(甚至之后)存儲數據。根據具體需求,您可能還需要臨時存儲來存儲傳輸過程中的數據。
處理和分析。在這一步中,數據將從其原始狀態轉換為可使用的格式,實現的方法通常是排序、聚合、合并,甚至是執行更高級的函數和算法。隨后,將存儲轉換后產生的數據集以供進一步處理,或者通過商業智能和數據可視化工具向用戶提供這些數據集。
使用和可視化。大數據解決方案的意義就在于從您的數據集中獲取高價值、可付諸行動的見解。理想情況下,您可通過自助式商業智能工具和靈活的數據可視化工具向相關人員提供數據,他們可利用這些工具輕松快速地瀏覽這些數據集。根據分析的類型,最終用戶還可能以統計“預測”(預測分析)或建議行動(規范分析)的形式使用分析結果數據。
大數據處理的發展歷程
大數據生態系統一直在以驚人的速度向前發展。如今,有多種分析類型可滿足組織中眾多職能的需求。
描述分析可幫助用戶回答以下問題:“發生了什么事?為什么?”。示例包括帶有計分卡和儀表板的傳統的查詢和報告環境。
預測分析可幫助用戶估計某個給定事件在未來發生的幾率。示例包括早期的警報系統、欺詐檢測、預防性維護應用程序和預測。
規范分析可為用戶提供具體(規范)建議。它們可回答用戶的以下問題:“如果發生‘x’,我該怎么做?”
最初,Hadoop 之類的大數據框架只支持批處理工作負載,它們在指定的時間段(通常為數小時乃至數天)內批量處理大型數據集。然而,隨著“獲得見解的時間”變得越來越重要,大數據的“高速”特點已經促使許多新的框架(例如 Apache Spark、Apache Kafka、Amazon Kinesis 等)做出改進以支持實時和流式數據處理。