狠狠撸

狠狠撸Share a Scribd company logo
Azure Data Lake 簡介
應用系統的資料來源
1985 1990 1995 2000 2005 2010 2015 2020
網際網路連結
數位
類比
$
1.6兆
領先運用資料資產的公司將創
造出額外的商業價值
Source: IDC, 2014
10%的公司, 在2020年預期將有一
個藉由資料資產營利的高獲益
事業單位
Source: Gartner, 2016
ETL pipeline
特定 ETL 工具 (e.g. SSIS)
定義 schema
查詢
結果
關連式資料
業務應用系統
傳統商業資料分析流程
所有沒有立即需要的資料被丟棄或封存
4
無限期的儲存 分析 察看結果
從所有資料來源取得
資料
Iterate
新的大數據思維: 所有的資料都有價值
? 所有的資料都有潛在價值
? 資料需要儲藏
? 沒有定義好的schema—儲存原始格式
? Schema 在查詢時才被指派跟轉化(schema-on-read).
? 應用程式跟使用者決定適合的資料解譯方式
5
大數據 (Big Data) 定義
Big data is high-Volume, high-Velocity
and/or high-Variety information assets
that demand cost-effective, innovative
forms of information processing that
enable enhanced insight, decision
making, and process automation.
– Gartner, Big Data Definition*
* Gartner, Big Data (Stamford, CT.: Gartner, 2016), URL: http://www.gartner.com/it-glossary/big-data/
Volume, Velocity, Variety
(資料量大, 資料流速快, 資料型態變化大)
微軟內部面對大數據的挑戰
因應微軟內部的資料分析需求
所以我們建立了…
? 資料湖讓所有人可以把資料放進去
? 提供給開發人員友善的工具
? 可讓大家協同合作的機器學習工具
結果…
? 在微軟內部不同產品 ( Office, Xbox Live, Azure,
Windows, Bing and Skype) 使用
? 超過一萬個開發人員使用在不同資料處理分析情境
上
? 管理 EB (Exabytes) 級的資料
2010 2011 2012 2013 2014 2015 2016
微軟內部數據量
Windows
SMSG
Live
Bing
CRM/Dynamics
Xbox Live
Office365
Malware Protection Microsoft Stores
Commerce Risk
Skype
LCA
Exchange
Yammer
Microsoft 現在將自己過去因
處理大數據而發展出來的技
術方案, 重新整理調整後提供
給客戶來使用
Technology. Cost. Culture.
行動
People
Automated
Systems
Apps
Web
Mobile
Bots
智慧服務
儀錶板 & 資料視覺化
Cortana
Bot
Framework
Cognitive
Services
Power BI
資訊管理
Event Hubs
Data Catalog
Data Factory
機器學習跟分析
HDInsight
(Hadoop and
Spark)
Stream
Analytics
智慧服務
Data Lake
Analytics
Machine
Learning
巨量資料儲存
SQL Data
Warehouse
Data Lake
Store
資料
來源
應用
程式
感知器
與裝置
資料
IoT Hub
巨量資料儲存 機器學習跟分析
行動
People
Automated
Systems
Apps
Web
Mobile
Bots
智慧服務
儀錶板 & 資料視覺化
Cortana
Bot
Framework
Cognitive
Services
Power BI
資訊管理
Event Hubs
Data Catalog
Data Factory
HDInsight
(Hadoop and
Spark)
Stream
Analytics
智慧服務
Data Lake
Analytics
Machine
Learning
SQL Data
Warehouse
Data Lake
Store
資料
來源
應用
程式
感知器
與裝置
資料
IoT Hub
結構性資料
非結構性資料
從數MB 到數百PB 大小
Data Lake Store
Azure
Data Lake Store
針對大數據分析需求設
計的超級規模資料儲存
庫
雲端上提供的Hadoop File System (HDFS)
沒有資料量上限
儲存任何資料的原始格式
企業等級的權限管控跟加密
針對分析的需求作效能最佳化
具高度延展性, 分散式, 支援平行處理的雲端檔案系統
支援多種的資料分析框架
什麼是 Azure Data Lake Store?
LOB Applications
SocialDevices
Clickstream
Sensors
Video
Web
Relational
HDInsight
ADL Analytics
Machine Learning
Spark
R
14
ADL Store
ADL Store 無限規模架構
ADL Store 中的檔案被切片分散到不同blocks
中
Blocks 被分散到後端儲存系統中的不同的data
nodes
在有足夠的data nodes狀況下, 任何大小的檔案
可以被儲存˙
Azure 雲端上的後端儲存系統概念上可以有無
限的資源
每個檔案的Metadata也被同樣的系統儲存
15
Azure Data Lake Store file
…Block 1 Block 2 Block 2
後端儲存系統
Data node Data node Data node Data node Data nodeData node
Block Block Block Block Block Block
ADL Store 提供大量的傳輸量
透過平行讀取ADL Store提供大量的傳輸量
每個讀取動作都在data notes 上藉由平行讀取
同時進行
Read operation
16
Azure Data Lake Store file
…Block 1 Block 2 Block 2
後端儲存系統
Data node Data node Data node Data node Data nodeData node
Block Block Block Block Block Block
ADL Store 資料安全: Role-based 存取控制
每個檔案跟目錄都被指派給一個擁有
者(owner)跟群組(group )
檔案跟目錄都可以有不同的權限
(read(r), write(w), execute(x)) 給擁有者
(owner)跟群組(group )還有其他使用
者(other)
詳細的存取控制規則(ACLs)可以被指派
到特定的使用者及群組
17
ADL Store 是 HDFS-相容檔案系統
透過 WebHDFS 端點 Azure Data Lake Store 是一個 Hadoop相容檔案系統, 可以無縫的
整合 Azure HDInsight
Map reduce
HBase
transactions
Any HDFS applicationHive query
Azure HDInsight
Hadoop WebHDFS client
Hadoop WebHDFS client
WebHDFS
endpoint
WebHDFS
REST API
WebHDFS
REST API
18
ADL Store file ADL Store file ADL Store file ADL Store fileADL Store file
Azure Data Lake Store
ADL Store: 高可用性及可靠度
? 每個區域(region) Azure 將資料物件存放3份分
別在不同的失敗(fault) 及升級(upgrade) 領域
(domains)
? 所有操作動作都複製到另外兩份, 並確保複製
完成後才 commit.
? 可以從任何一個資料副本進行讀取
Data is never lost or unavailable
even under failures
Replica 1
Replica 2 Replica 3
Fault/upgrade
domains
Write Commit
ADL Store: Ingress
Data can be ingested into Azure Data Lake Store from a variety of sources
Server logs
Azure Event Hub
Apache
Flume
Azure Storage Blobs
Custom programs
.NET SDK
JavaScript CLI
Azure Portal
Azure PowerShell
Azure Data Factory
Apache Sqoop
Azure SQL DB
Azure SQL DW
Azure tables
Table Storage
On-premises databases
SQL
20
ADL Store
ADLS Built-in
copy service
ADL Store: Egress
Data can be exported from Azure Data Lake Store into numerous targets/sinks
Azure SQL DB
SQL
Azure SQL DW
Azure Tables
Table Storage
On-premises databases
Azure Data Factory
Apache Sqoop
Azure Storage Blobs
Custom programs
.NET SDK
JavaScript CLI
Azure Portal
Azure PowerShell
21
Built-in
ADLS copy service
ADL Store
Data Lake Store: 技術規格
安全性 資料存取需要支援授權管理
原始格式 能儲存原始資料格式以追蹤資料血統及出處
低延遲 能支援高頻率的資料操作.
能支援多種分析框架—Batch, Real-time, Streaming, ML etc.
沒有單一框架可以支援所有資料內容跟分析方式.
多種分析框架
資料細節 可記載資料的詳細內容.
吞吐量 能承受像Hadoop and Spark這樣平行處理架構的資料存取需求
可靠度 高可用度及可靠度.
延展性 可容納快速增長的資料
多種資料來源 可從多種資料來源輸入資料.
Demo
Data Lake Analytics
企業規格的安
全性
高度延展性,
可隨時調整運
算效能
立即可以使用,
無須事先建置
容易使用, 客
製化彈性高
處理所有的資
料類型
0100101001000101010100101001000
10101010010100100010101010010100
10001010101001010010001010101001
0100100010101010010100100010101
0100101001000101010100101001000
10101010010100100010101010010100
10001010101001010010001010101001
0100100010101010010100100010101
0100101001000101010100101001000
10101010010100100010101010010100
Azure Data Lake Analytics
Azure
Data Lake Analytics
新的分散式資料分析服務
基於Apache YARN上的分散式資料分析服
務
每個搜尋都可以彈性的指定執行規模, 使用
者可以專注在商業需求, 而不是硬體
內建 U-SQL— 可以混合使用SQL查詢語法
及 C# 程式的語言
整合Visual Studio , 開發, 除錯, 調校程式碼
更快速
Federated query 支援多個 Azure 資料來源
企業等級的 role based access control
ADL Analytics
特色
? 針對大數據應用設計
? 支援多種資料來源
? 簡化管理跟維護成本
? 透過新的U-SQL 語言來處理巨量資料
27
ADLA直接在資料來源做查詢
? 無須移動資料, 直接將查詢任務派送到資料來源
執行
? 避免查詢前必須將儲存在不同地方的大量資料透
過網路搬移
? 提供單一資料檢視方式, 無論資料實際儲存在何
處
? 減少資料多個副本的資料擴散(Data proliferation )
問題
? 所有資料都可用單一查詢語法
? 各個資料來源可以維持原本各自的管理機制
? 將SQL查詢表示式直接在遠端SQL 資料來源執行
? Filters
? Joins
U-SQL Query Query
Azure
Storage Blobs
Azure SQL
in VMs
Azure
SQL DB
Azure Data
Lake Analytics
Azure
SQL Data Warehouse
Azure
Data Lake Storage
Work across all cloud data
Azure Data Lake
Analytics
Azure SQL DW Azure SQL DB
Azure
Storage Blobs
Azure
Data Lake Store
SQL Server in an
Azure VM
U-SQL 語法
SQL 陳述式(Declarative) 查詢
? 使用 SQL語法 : SELECT FROM WHERE with GROUP
BY/aggregation, joins, SQL analytics functions
? 容易做最佳化調校
可處理結構性及非結構性資料
? Schema 在讀檔時決定
? 支援關聯式 metadata 物件 (e.g. database, table)
高度擴充性
? 基於C# 型別系統(Type system )
? C# 表述語言(Expression language)
? 使用者自訂義 functions (U-SQL and C#)
? 使用者自訂義 aggregators (C#)
? 使用者自訂義 operators (UDO) (C#)
提供容易擴充的平行化處理及Scale-out架構
? EXTRACTOR, OUTPUTTER, PROCESSOR, REDUCER,
COMBINER, APPLIER
將查詢送到不同資料來源執行
REFERENCE MyDB.MyAssembly;
CREATE TABLE T( cid int, first_order DateTime
, last_order DateTime, order_count int
, order_amount float );
@o = EXTRACT oid int, cid int, odate DateTime, amount float
FROM "/input/orders.txt"
USING Extractors.Csv();
@c = EXTRACT cid int, name string, city string
FROM "/input/customers.txt"
USING Extractors.Csv();
@j = SELECT c.cid, MIN(o.odate) AS firstorder
, MAX(o.date) AS lastorder, COUNT(o.oid) AS ordercnt
, AGG<MyAgg.MySum>(c.amount) AS totalamount
FROM @c AS c LEFT OUTER JOIN @o AS o ON c.cid == o.cid
WHERE c.city.StartsWith("New")
&& MyNamespace.MyFunction(o.odate) > 10
GROUP BY c.cid;
OUTPUT @j TO "/output/result.txt"
USING new MyData.Write();
INSERT INTO T SELECT * FROM @j;
Azure Data Lake 簡介
Azure Data Lake 簡介
Demo
整合 Visual Studio
整合U-SQL, Hive 及Storm
初學者容易上手
提供給專家豐富的工具
視覺化的呈現執行狀態, 並可重播執行狀態以利找出效能
瓶頸及進行優化
Logical -> Physical Plan
每個方塊代表Vertex, 代表
整體工作中的一部分任務
每個SuperVertex (aka “Stage)
中的 Vertexes 都對相同的資
料做相同的動作
後面stages 中的Vertexes 有可
能會跟前一個 stage的Vertexes
有關 視覺化呈現執行結構
與狀態
透過10個平行(Parallelism)將1.87GB Json檔案
資料做彙總計算
- 編譯時間: 28 秒
- 執行時間: 2分鐘
簡化管理跟維護
? 以網頁為基礎的管理介面
? 透過 PowerShell自動化排
程
? 整合 Azure AD, 以角色為
主的權限管控
? 監控服務操作及執行
Azure Data Lake 簡介
U-SQL
GitHub
Microsoft.Analytics.Samples.Formats/
Azure提供多元的大數據技術架構選擇
透過完整的解決方案協助企業加速創新
任何 Hadoop
技術
最佳化調校,
受管理維護的
Haddop叢集
針對大數據資料整理
需求設計的
資料分析服務
HDP | CDH | MapR
(Azure Marketplace)
Data Lake Analytics
Azure Data Lake
Analytics
Data Lake StoreAzure Storage
控制 容易使用
UserAdoption
IaaS Hadoop Managed Hadoop Big Data as-a-service
HDInsight
Microsoft Azure Data Lake
YARN
U-SQL
Analytics Service HDInsight
Store
HDFS
商業智慧產業領導者
Forrester Wave: Agile BI Platforms, Q3 2015 Gartner BI MQ as of February 2016
Q&A

More Related Content

Azure Data Lake 簡介