在 AWS 實現資料湖的架構
大數據一詞其實已經火紅了一段時間,例如:Amazon, Yahoo!, PCHome, MOMO⋯等各大電商平台,都仰賴透過大數據來預測客戶行為、提高物流效率、優化客戶體驗等,透過大數據創建商業價值。
那什麼是大數據呢?
想用聽的請點這:Spotify Podcast、Apple Podcast、Google Podcasts、KKBOX Podcast
在過去指的是傳統資料處理的工具不足以處理大或複雜的資料集,來自各種來源的大量結構化與非結構化資料。但近年來因為資料量日漸趨大、軟體技術快速進步、雲端環境成熟,現在的定義 不只是資料,而是一種商業思維,可以透過大數據去分析客戶喜好、優化企業業務流程、更甚是預測未來⋯等等,開創新穎且有價值的商業模式。
我們歸納了常見的大數據有以下幾種特性,統稱為 4V:
- Volume, 資料量大
- Variety, 資料多樣性
- Velocity, 資料即時性
- Veracity, 資料真實性
搭建大數據儲存方案 – 資料湖(Data Lake)
在進行資料分析前,企業必須要蒐集和分析日益增加的資料,如果使用傳統資料儲存、管理和分析的解決方案,是無法達到在現今資訊快速流通的要求,所以許多人開始推崇使用資料湖。
資料湖 其實是一個概念,被定義為一種有別於原始資料倉庫的資料儲存架構,以原生格式保存大量的原始資料,支援所有的資料類型,包含結構化和非結構化資料,直到資料被使用的時候再進行處理,可以有效處理非結構化資料、新的資料探索及挖掘需求。
那 AWS 雲端能幫我們做什麼呢?
AWS 提供 多種模組化的積木,幫助客戶建置安全、彈性和具成本效益的資料湖,包含 AWS 全託管的服務幫助客戶資料注入、儲存、分析複雜類型的資料。
Amazon S3 和 S3 Glacier 提供理想的資料湖儲存解決方案,也能與大數據分析工具做整合,幫助企業降低成本和複雜的萃取(extract)、轉置(transform)、載入(load)至目地端的過程。
AWS 實現資料湖的架構
AWS 提供資料湖解決方案,可以自動配置所需的 AWS 核心服務,包含標記、搜尋、共享、轉換、分析和管理資料集。此方案還部屬一個控制台,客戶可以訪問該控制台來查看資料集,以滿足搜索和瀏覽的商業需求。下圖是 AWS 上快速部屬資料湖的架構,可以使用 AWS CloudFormation,在幾分鐘之內部屬完成。
AWS 實現資料湖的服務 – AWS Lake Formation
除了透過上面方法來部屬資料湖,假使企業中沒有人力來建置和管理資料湖,也可以選擇 AWS Lake Formation 服務快速構建安全的資料湖,客戶透過 Console,處理建置和配置資料湖,簡化資料湖的管理工作,以下為資料湖建置過程及使用的服務:
-
Step 1. 設定儲存
- 在 AWS 上可配置 Amazon S3 儲存桶進行資料分區,若是地端構建的資料湖,則需要購買硬體,並設置磁碟陣列來儲存所有資料。
-
Step 2. 移動資料
- 連接地端和雲端中的不同資料來源,蒐集完需要組織相關的資料集,並爬取資料的 Metadata 訊息,將 Metadata 標籤加至目錄中,可使用這幾個服務:
-
Step 3. 清理和準備資料
- 仔細對所蒐集的資料進行分區、索引並轉換格式,優化性能和成本。
-
Step 4. 配置和實行安全及合規策略
- 保護敏感資料、資料如何訪問、誰有權限訪問以及是否具有合規性⋯等等,可以透過加密和存取控制軟體來保護資料。例如,正在使用 Amazon Redshift 和 Amazon Athena 對資料湖進行分析,則須為每個服務設定存取控制規則。而 AWS Lake Formation 可以控制存取 AWS Glue Data Catalog 所管理的資料來源,除了可以設定每個 Table 的權限,也能針對 Column 層級。
結論
透過導入資料湖的概念,企業可以有效地將資料整合,不需要在取得資料前事先建立好資料結構,可以最簡單、快速的方式輸入資料,在讀取資料時在建立及套用資料結構。後續不管是在資料倉儲環境或是分析,都可以透過雲端來達到需求,不一定要購買實體設備,降低企業導入資料湖的門檻,以新的 IT 架構增加企業競爭力。
作者:Josie Tseng。
資料來源:
Tag:Amazon S3, AWS Lake Formation, Data Lake, 資料湖