Post on 15-Jan-2015
description
Hadoop 與 SQL 的甜蜜連結精誠資訊 雲中心
Etu 首席顧問 陳昭宇
摘要您曾經聽說過 Hadoop 和 NoSQL 嗎 ? 您是否了解非結構化與結構化資料 ? 它們之間是什麼樣的關係 ? 根據統計 , 企業內結構化的資料約僅佔 15%, 另有 85% 的寶貴資訊是以非結構化的方式存在 , 例如網頁 , 電子郵件 , 應用系統的日誌等等 . 如何處理並分析這些非結構化資料 , 挖掘其中所蘊藏的商業價值 , 已成為企業 IT 必須面對的課題 .
關聯式資料庫及資料倉儲系統可說是今日企業資訊的核心 , 結構化查詢語言 SQL 也幾乎是企業資訊從業人員必需具備的技能之一 . 然而面對爆炸性成長的非結構化資訊 , 企業應該採用什麼樣的策略 ? 該如何讓既有的關聯式資料庫與 Hadoop 整合 , 建立企業對於非結構化資訊的管理能力 ? 精誠 Etu 團隊將協助您的企業 , 打開 SQL to Hadoop 之路 .
大綱• 結構與非結構化資訊• 什麼是 Hadoop ?• 關聯式資料庫與 Hadoop 的差異 • 連結關聯式資料庫與 Hadoop• SQL 與 Hadoop 整合應用的策略• Etu Appliance 簡介
什麼是非結構化資訊 ?
4
Unstructured Data refers to information that either does not have a pre-defined data model and/or does not fit well into relational tables. Unstructured information is typically text-heavy, but may contain data such as dates, numbers, and facts as well. This results in irregularities and ambiguities that make it difficult to understand using traditional computer programs as compared to data stored in fielded form in databases or annotated (semantically tagged) in documents -- from Wikipedia http://en.wikipedia.org/wiki/Unstructured_data
非結構化資訊的特性• 無法事先定義資料模型• 不適合存放於關聯式資料庫• 通常含有大量無格式的文字訊息• 可能含有非文字資訊 , 如圖片 , 影像 , 聲音
有哪些非結構化資訊
6
Social Media Machine / SensorDOC / MediaWeb
Clickstream
AppsCall Log/xDR
Log
Hadoop 與大數據處理
7
關聯式資料庫 & DW
異質資料處理平台
結構化
非結構化
15%15%
85%85%
Big Data 時代來臨 – 新量級、新處理模式、新企業智慧
行動 / 網際網路Mobile/Internet
物聯網Internet of Things
Big Data 新處理方式
檔案系統檔案系統
ETL 工具或
script
ETL 工具或
script
關連式資料庫關連式資料庫
分散式檔案系統
分散式檔案系統
分散式檔案系統
分散式檔案系統
分散式檔案系統
分散式檔案系統
平行運算平行運算 平行運算平行運算 平行運算平行運算
NoSQLNoSQL NoSQLNoSQL NoSQLNoSQL
Scale Out (TB to PB)Scale Out (TB to PB)
原始數據原始數據
資料處理資料處理
查詢應用查詢應用
什麼是 Hadoop ?
• 由 Doug Cutting 所發起的 Open Source 分散式計算框架
• 參考 Google 的 GFS 與 Map Reduce 架構
• 公有雲等級的資料儲存與處理能力• 內建資料與任務的容錯機制 , 可以容忍硬體及網路故障
• 設計運行於商用伺服器 , 無需特殊之硬體10
為什麼要用 Hadoop
• 儲存並處理海量結構與非結構資訊• 執行資料分析程式於分散式系統上• 簡化分散式系統的管理與資源調度• 線性化的擴充能力• 高可用性與容錯性
11
Hadoop 不只是 Hadoop
12
HIVEHIVE
Big Data ApplicationsBig Data ApplicationsBig Data ApplicationsBig Data Applications
Pig!Pig!
ZooZooKeeperKeeper
SQLSQL
RAWRAW
Hadoop 生態系統 ZooKeeper – distributed coordination service HBase – distributed column-oriented database for
random read/write HIVE – SQL like database on top of Hadoop Pig – high level scripting language for data processing Mahout – a scalable machine learning library for
MapReduce Sqoop – SQL-to-Hadoop connector Flume – a distributed streaming data collection
framework
13
關聯式資料庫 vs Hadoop
關聯式資料庫 Hadoop
資料量 GB -> TB TB -> PB
存取方式 互動式與批次 批次資料更新 多次讀寫 一次寫 , 多次讀資料結構 固定 schema 無 schema
資料一致性 高 (ACID) 低擴充性 非線性 線性
聲音檔案影片檔案圖形檔案
文件檔案文字資料XML 檔案
Web Logs點擊事件
社交網路關聯圖譜新聞
Feeds
感應器嵌入設備
RFID Tags
地理資訊GPS 點位
事件其他
Big Data精煉處理場
NewSQL
NewSQLNoSQLNoSQLSQLSQL
NewSQL
NewSQLMPPMPPEDWEDW
商業智慧與
線上分析
Web, Mobile, CRM, ERP, SCM, …
Dashboard, Report, Visualization, …
商務交易與
行為互動
Original source: http://hortonworks.com/blog/big-data-refinery-fuels-next-generation-data-architecture
傳統 ETL
預處理
回饋 /歷史資料
回饋 /歷史資料
多結構資料儲存 /彙整 /轉換 /運算
Big Data Taiwan 2012 整合大全
連結關聯式資料庫與 Hadoop
• 匯入與匯出資料– Sqoop (by Cloudera)
• 查詢與整合– Hive JDBC Driver (Java)– Hive ODBC Driver (C++)– Hive Add-in for Excel (by Microsoft)– Thrift (C/C++, Python, Perl, PHP)
Hive 簡介• 由 Facebook 開發• 架構於 Hadoop 之上 , 設計用來管理結構化資料的中介軟體• 以 MapReduce 為執行環境• 資料儲存於 HDFS上• Metadata 儲存於 RDMBS中
• Hive的設計原則• 採用類 SQL語法• – 擴充性 Types, Functions, Formats, Scripts• 性能與平水擴展能力兼具
Hive的架構
• Driver• 將 SQL 語法編譯成
MapReduce 任務 ,進行最佳化 ,發送到 Job Tracker執行
• CLI/Web UI• Ad-hoc查詢• Schema查詢• 管理介面
• JDBC/ODBC • 標準介面與其他資料庫工
具及應用程式介接
Driver(compiler, optimizer,
executor)
Driver(compiler, optimizer,
executor)
metastore
metastore
Web UI
Web UI CLICLI JDBC
ODBCJDBCODBC
Hive – SQL like Hadoop Database
Driver(compiler, optimizer,
executor)
Driver(compiler, optimizer,
executor)
metastore
metastore
Data NodeData Node
Data NodeData Node
Data NodeData Node
Data NodeData Node
Hadoop Cluster
M/RM/R M/RM/R M/RM/R M/RM/R
Web UI
Web UI CLICLI JDBC
ODBCJDBCODBC
Create M/R Job
Sqoop – SQL to Hadoop
JDBCJDBC JDBCJDBC JDBCJDBC
MapMap MapMap MapMap
HDFS/HIVE/HBase
HDFS/HIVE/HBase
SQL
Create Map Tasks
Sqoop 支援的 RDMBS
• Oracle• Netezza• Teradata• SQL Server• Microsoft PDW• MySql• Postgre SQL
傳統的資料處理流程營運資訊
新用戶
新訂單
新產品
資料倉儲
使用者瀏覽日誌大部份刪除
ETL部份資料
探索式的資料處理流程
新用戶
新訂單
新產品
資料倉儲營運資訊
廣告效益分析 ? 促銷活動分析 ?
電子報效益分 析 ?
廣告效益分析 ? 促銷活動分析 ?
電子報效益分 析 ?
使用者瀏覽日誌
24Strictly NDA - Microsoft Confidential
Sensors
Devices
Web Log
Crawlers ERP CRM LOB APPs
Connectors
非結構化資料來源
S S RS
SSAS
BI Platform
Familiar End User Tools
PowerView Excel with PowerPivot
Embedded BI
Predictive Analytics
結構化資料來源
Hadoop
企業的 Hadoop 應用策略
第一招 : 參照 RDBMS 中的資料表
RDBMS
Customers
WebLogs
Products
HDFS
第二招 : 離線數據分析
RDBMS
Customers
ProductsHDFS
Sales History
RDBMSHDFS
Sales 2008
Sales 2009
Sales 2010
Sales 2008
ODBC/JDBC
第三招 : 歷史數據與線上數據交互運用
第四招 : 利用 Hadoop 進行數 據彙總
RDBMS
WebLogs
HDFS
WebLog Summary
第五招 : 利用 ODBC 連結 Excel & Hive
Excel Hive Add-in
在線資料 : MS SQL Server
歷史資料 : Hive
Hadoop 平台競爭要素
Hadoop Disruption Vectors
Source: GigaOM Pro, 2012
整合部署存取
• 延展:公有雲等級的運算架構• 可靠:電信等級的系統品質• 效能:企業等級的創新績效
Etu Appliance 簡介Big Data End-to-End Solution in a Box
儲存與運算一體,簡化與最佳化的優勢機種:
•10 分鐘內可部署 100+ 節點
•資料擷取能力 1U 勝過 8U
•Big Data 運算處理最適化
三種資料溫度的整合: Hot / Warm / Cold
Hot Data在線結構化資料在線半 / 非結構化資料
Warm Data在線半 / 非結構化資料
Cold Data離線資料
Hadoop-based Solution
SAN / NAS / Scale-out NAS
OLTP OLAP
33
軟硬體整合
管理維運功能
全自動化部署不停機擴充軟硬體全面最佳化中央叢集系統管理中央叢集系統監控完整的高可用性設計
管理維運功能
全自動化部署不停機擴充軟硬體全面最佳化中央叢集系統管理中央叢集系統監控完整的高可用性設計
Etu Appliance 主要功能
Etu Appliance 軟體架構
Katta/LuceneKatta/Lucene MahoutMahout
HBaseHBase
Hive QLHive QL
MapReduceMapReduce
Data Processing
Lib
Data Processing
Lib
HDFSHDFS
PigPig
Data Store Layer
Data Processing Layer
FlumeFlume
Application Layer (by SYSTEX)
MonitoringMonitoring
Log Manageme
nt
Log Manageme
ntAccount
Management
Account Manageme
ntConfiguration
Management
Configuration
Management
SchedulerScheduler
High Availability
High Availability
Search APISearch API
Data Source
HiveHiveSqoopSqoop
Etu OS for Hadoop (by SYSTEX)
Etu Management Console
Etu Cluster Management
Etu Service Management
總結
• 關聯式資料庫與 Hadoop 的連結是企業導入 Hadoop 的重要關鍵
• Sqoop 及 Hive 提供企業延伸資訊管理能力及於非結構化資訊
• 關聯式資料庫與 Hadoop 皆為工具 , 更重要的是整體的解決方案
• 精誠 Etu 團隊是您整合 SQL 與 Hadoop 的最佳夥伴
Demo• Etu Appliance 自動佈署• Sqoop 與 MS SQL 連結• Excel 與 Hive 連結
One Service顧問服務
One Application分析應用系統
One Platform處理平台
Etu Consulting商業暨科技顧問Etu Consulting商業暨科技顧問
Etu Recommender精準推薦應用Etu Recommender精準推薦應用
Etu Appliance巨量資料處理解決方案Etu Appliance巨量資料處理解決方案
Follow Us: 歡迎加入 Etu Taiwan Facebook 粉絲專頁
http://www.facebook.com/etusolution