Friday, April 16, 2021

關於大數據(1):容量

         今天來談談大資料。大數據這名稱有點魔幻,到底多大的資料才算是大資料?資料有多大跟我有什麼關係?今天要介紹的,是從一個學生的角度,來思考大資料要如何入門。


         網路上可以找到一些關於大資料的定義,這裡結錄一段基本概念:

「大數據(big data)」這一名詞是2008年由Infineta Systems公司的Haseeb Budhani提出。麥肯錫公司2011年對大數據有如下定義:大數據是其體量超出了傳統資料庫軟體工具的採集、存儲、管理和分析能力的數據。

大數據有5V特性,分別是VolumeVelocityVarietyValueVeracity

容量(Volume):大數據量大,不僅量大而且增長速度快;

變化性(Velocity):數據流動性大,變化迅速;

種類(Variety):數據類型的多樣性;

價值(Value):價值是決定大數據應用的根本屬性,沒有價值就沒有大數據;

真實性(Veracity):要求數據準確,準確的數據才能反映真實的資訊。


大數據有多大?這麼大!!

         由於篇幅比較大,今天先介紹關於資料容量的部分。也是我個人覺得重要性排名比較後的一部分。往下介紹之前,要說明的是大數據的出現,並不會影響這名詞出現前的分析方法或工具。現今大數據最大的跳戰,在於從不同的異種數據之間(例如圖像+語音+GPS+app操作習慣),挖掘出數據價值。

         先岔開一個話題。就我個人認知而言,大數據表現出來的是有價值的重點資訊,跟資料量多寡沒有直接關係。舉例來說:利用全國人口資料,能算出全國男女比例、年齡分佈等人口統計,這是大資料沒錯。

        而一家服裝公司累積了幾十年的客戶身材資料,能夠快速設計出各種服裝,這些累積的身材資料可能只有幾十個mb,一個小小的筆電用excel也能產出極高的商業價值。我個人認為這也是的大資料。

        除非是討論技術問題,就資料價值來說,將焦點放在資料量的“大小”,其實沒太大的實質意義。因此接下來的說明,都是站在你該“學習”什麼大數據技術的角度來了解什麼是大數據。

 

  • 容量(Volume:

        我們從最終數據使用者的角度出發,從一般人都孰悉的Excel開始,一步一步往數據源走,了解什麼是大數據。        

        容量是第一個遇到的問題。但在說明容量之前,還要叉出去一個話題。你有沒有過這樣的經驗,一個幾十萬筆的excel(csv)你用excel開不了,但在同一台電腦上裝上MySQL或是python這些工具,都能秒開這些資料。關鍵問題是excel不是為了這樣數量的資料設計的,但資料庫的應用程式就是專門為了這些資料量設計的而這一塊是數據工具方面。

        容量的問題另一個核心問題是資料庫的設計。舉個簡單的例子,如果你的資料量每天都在增加,你可以設計成每天、每月存成一個檔案。資料查詢太慢,你可以改變將一些欄位的定義。例如在Excel中,你要查詢文字是很慢的,但查詢數字是很快的。如果在你的資料中,有些數字類型的欄位元例如收入、生日、股價的資料,就要改成數字格式。以上這些領域是數據結構的領域。

        接下來一個情境是,你需要讀入多個資料來源。例如你需要讀入財務部關於成本的數據,你需要業務部的銷售數據、你需要開發部提供的客戶在官網webapp上的行為數據、你還需要接入一些外部公司的資料例如客戶透過fb粉絲群的反應。這時候你需要中台部門幫你整合並管理這些資料介面你只面對數據中台,不需要自己都去接這些數據源,也不用去管理不同團隊間的權限和數據庫驅動。這是中台部門的領域。

        這些不同的數據沒法直接提煉出你要的決策數據,你可以想像,面對這麼多數源(sheet),你要在excel中做出個樞紐分析表前,得先將這些資料來源根據一些規則合併成一張sheet,而這就是商業智慧(BI)部門在做的事。這些同事依據你給的規則,幫你做出自動產出、即時更新的分析層資料集市(Data Mart)以及分析圖表(大部分情況是他們提供分析工具讓你自己做報表)

        再往上走接下來資料量更大了,例如電信公司會存用戶上網時,是哪個基地台、用了多少用量。這時候涉及同一份庫表存在不同的物理硬碟或是伺服器上,你如果依照某些檔案存在某個物理磁片上的單機經驗,你的磁片很快就會爆而且磁碟空間的使用很沒效率。這領域是分散式存儲分散式運算

        再往上還有呢。現在業界面臨的一個問題是資料孤島的問題。你家客戶的數據跟我家客戶的數據是不相通的。在面對一些問題的時候往往需要相互合作。例如某個信用卡詐欺集團同時申請了多家銀行的信用卡,如何跨銀行間合作找出這些詐欺集團的行為特徵?如何偵測同一個pos機或是商家在短期間內出現多家銀行信用卡的刷卡消費?銀行間如何在保密和合作間找到解決方案?就算有加密你的客戶資料會不會被合作夥伴用一些驗算法找出你的客群畫像?目前這一塊領域還在發展中,有興趣的可以找一下聯邦學習(Federated Learning)?


No comments:

Post a Comment