• 検索結果がありません。

A bridge to the Cloud Damien Contreras ダミアン コントレラ Customer Engineer Specialist, Data Analytics, Google Cloud

N/A
N/A
Protected

Academic year: 2022

シェア "A bridge to the Cloud Damien Contreras ダミアン コントレラ Customer Engineer Specialist, Data Analytics, Google Cloud"

Copied!
60
0
0

読み込み中.... (全文を見る)

全文

(1)

A bridge to the Cloud

Damien Contreras ダミアン コントレラ

Customer Engineer Specialist, Data Analytics,

Google Cloud

(2)

アジェンダ

はじめに 移行する前の 準備

DWHの移行 について

1 2 4

GCP と連動

5 6

データの表示

(3)

01

はじめに

(4)

移行する前に | データウェアハウスの欠点

コスト

データ増加 データ形式対応外

リアルタイムの負担は受 けられない

セルフサービス分析が難 しい

スタースキーマとディメン 表ションとファクト表に合わ せる

ベンダーロックインの心 配

(5)

移行する前に | データレイクの欠点

クラスターのリソースの バランス

バージョンアップ

複数のデータレイクが構築 される

パートナー、人材採用が困 難

コスト

(6)

移行する前に | Google Cloud の価値

弾力性のある構 コストパフォーマン

スが良い

サーバーレスでNo-ops

サイロはない ANSI SQL-2011

セキュリティー

(7)

02

移行をする前に考

えること

(8)

パートナーと

Google リソースが 協力し合う

移行する前に | 社内にスキルはない場合

Cloud plan & cloud deploy

Partners

BigQuery のスター ターパック

グーグルの支援

https://cloud.google.com/partner s/?hl=ja

(9)

移行する前に | TCO & ROI

アンケートを記入するだけ で

総所有コストのも計算

(10)

データと関連データの

発見 Proof of

Concept

基盤を構築

周りのシステム と通信用のツー

ルの構築 ソースデータを

移行 機械学習

1 2

6 5 4

3

サイロ化に なっている データセット

誰でも ML を 使えれるよう

移行する前に | クラウドで構築

(11)

03

DWH の移行について

(12)

Teradata IBM Netezza

移行する前に | DWH 移行対応

Teradata

t

t n r

RedshiftAWS

m

Azure SQL

h

Hadoop

o

Oracle

s

Snowflake

v

Vertica

b

SAP BW

?

その他

BigQuery

(13)

IBM Netezza から

13

(14)

IBM Netezza | アーキテクチャ

FPGA CPU メモリー FPGA CPU

メモリー

FPGA CPU メモリー

Host (Linux

サー バ)

Disk

Enclosure S-Blade Network

fabric

Symmetric Multiprocessing

(SMP) 複数のマイクロプロセッサ

Massively Parallel Processing (MPP)  大量な並行処理

AMPP Architecture

NZSQLコマンド:DML, データダンプ JDBCコネクター:SQLクエリ

(15)

IBM Netezza | データタイプ

IBM Netezza の 31 タイプを全部 BigQuery でマッピングが出来ます

IBM Netezza BigQuery

VARCHAR STRING

BOOLEANま

たBOOL BOOL BigQuery : TRUE / FALSE

Netezza : True / False, 1 / 0, yes / no, on / off TIME / TIMETZ

TIME_WITH_TI/ ME_ZONE

TIME BigQuery : の TIME でタイムゾーンはない

ARRAY Netezza : VARCHARのデータタイプに保存

(16)

IBM Netezza | それ以外の違い

IBM Netezza BigQuery

拡張性

テラバイトのスケールまで:TwinFin (all N2001) また Striper (all N2001); 最大:

320 Terabytes

ペタバイト

データモデル Relational DBMS - 圧縮比:1:3 Distributed Columnar Database - 圧縮比

:1:10

SQL SQL-92とSQL-99のエクステンション SQL-2011

処理エンジン MapReduce Dremel

UDF C++ Javascript

ストアドプロシージャ NZPLSQL BigQuery のSQLでストアドプロシージャを 書くalphaになります

フィールド名 日本語対応, 最大:128バイト A-z, A-Z, 0-9 また underscore “_”  最大

:128 文字

(17)

● IBM Netezza のデータタイプを BigQuery のデータタイプにマッピング

● フィールド名のマッピング

● IBM Netezza の SQL からに使用されてるクエリを ANSI SQL-2011に切り替えます

● C++ の UDF を BigQuery の UDF に書き直す ストアドプロシージャを他の仕組みで対応

● データソースのと連携ツールを選択する

○ 最初のデータ移動方法

○ 定期的なデータ更新方法 (差分管理)

IBM Netezza | チェックリスト

(18)

IBM Netezza | カバレッジ

 データ通信 データ形式

UDF SQLクエリ

ストアドプロシージャ データ量

JDBCコネクター

コマンドラインでデータダンプ BigQuery のSQLでストアドプロ

シージャ(alpha) C++ → Javascript

ペタバイト対応 マッピング可能

書き直し可能

(19)

Teradata から

(20)

Teradata | アーキテクチャ

CPU CPU メモリー CPU CPU

メモリー

CPU CPU メモリー

Dual BYNET Interconne

cts

Massively Parallel   Processing

(MPP)  大量な並行処理 最大: 1024 ノード

Teradata MPP Architecture

O S

O S

O S SMP

Nodes

Server Management

BTEQコマンド:DML, データダンプ, 複数のインスタンスからデータクエリ

JDBCコネクター:SQLクエリ

(21)

Teradata | データタイプ

Teradata の全てのタイプを BigQuery に

Teradata BigQuery

VARCHAR STRING

INTERVAL_HOUR, INTERVAL_MINUTE, INTERVAL_SECOND,

INTERVAL_DAY, INTERVAL_MONTH,

INTERVAL_YEAR

INT64 BigQuery: 期間のデータタイプない

PERIOD(DATE), PERIOD(TIMESTAMP_

WITH_TIME_ZONE), PERIOD(TIMESTAMP),

PERIOD(TIME)

STRING BigQuery: 期間のデータタイプない

(22)

Teradata | それ以外の違い

Teradata BigQuery

拡張性 テラバイト ペタバイト

データモデル Relational DBMS - 圧縮比:最大:1:10 Distributed Columnar Database - 圧縮比

:1:10 SQL Teradata SQL 一部 SQL-2011 ベース (書き

直すことは出来ます) ANSI SQL-2011

処理エンジン Dremel

UDF SQL Javascript

ストアドプロシー

ジャ SQL BigQuery のSQLでストアドプロシージャを書く

alphaになります フィールド名 A-z, A-Z, 0-9 またアンダースコアー “_” , ド

ル “$”, シャープ “#” 最大:30 文字 A-z, A-Z, 0-9 またアンダースコアー “_”  最大

:128 文字

(23)

Teradata | カバレッジ

 データ通信 データ形式

UDF SQLクエリ

ストアドプロシージャ データ量

JDBCコネクター コマンドラインでダンプ BigQuery のSQLでストアドプロ

シージャ(alpha) SQL → Javascript

ペタバイト対応 マッピング可能

書き直し可能

(24)

Hadoop から

24

(25)

Hadoop | アーキテクチャ

CPU メモリー

CPU メモリー

CPU メモリー

O S O S O S CPU

メモリー

O S CPU

メモリー

O S

w o r k e r N o d e m a s t e r N o d e

HDFS : ファイルシステム Yarn:リソース管理

ハードウエアー

Spark Hive Hbase Kafka

Slider

Phoenix

Z o o k e e p e r

Tez

Network ソフトエアースタック

ハードウェアスタック

s q o o p n i f i

データウ エアハウ

キーバリュー データベス

メッセージ ブローカ

JDBCコネクター:SQLク エリ

専用のAPI

専用のAPI

(26)

フルマネージド、Hadoop / Spark、

カスタマイズ可能なマシン

90 秒以内で立ち上げて、エフェメラル またオンデマンドのクラスター秒単位の 請求

データの暗号化

Hadoop | GCP Dataproc

(27)

ジョブ

Cloud Dataproc

Cluster 1

クラスター作成 処理の結果書込 み

Cloud Dataproc

削除

クラスター削除

Stack driver

Logging &

monitoring

データ

Cloud Storage Bucket BigQuery

Hadoop | GCP Dataproc 一時的なクラスター

(28)

アドホッククエリまたインタラクティブクエリを起動 (Hive, Impala, Kudu, Drill, Druid, AtScale、

MaprDB, …)

Hadoop | マイグレション選択マトリクス

データウェアハウスの処理

クエリーを書き直しても大丈 夫ですか

Cloud Dataproc

BigQuery

NoSQL を使ってます

NoSQL を使ってますか

HBase を使ってますか Accumulo を使って、移行 がしたくないのでそのまま 使いたい

Phoenix を使ってますか

BigQuery Cloud

Dataproc

また

Cloud Bigtable

いいえ

いいえ いいえ

はい

はい

はい

はい はい

(29)

● Hive データタイプを BigQuery のデータタイプにマッピング

● Hive の UDF また SerDe を移行計画

● Hive に使用されているHQLクエリを ANSI SQL に切り替えます

● HDFS に保存されてるバイナリーファイルの処理プロセスを移行の計画

● Spark, MapReduce また Pig script のデータ処理の移動計画

● HBase のデータ移行の計画

● Zeppelin ノートブックの移行計画

● Kafka が使われているフローの移行計画

● Sqoop のスクリプトを基づいて、データソースのと連携ツールを選択する

○ 最初のデータ移動方法

○ 定期的のデータ更新方法 (差分管理)

Hadoop | チェックリスト

(30)

Hadoop | カバレッジ

 データ通信 データ形式

UDF & Serde SQLクエリ

データ処理 データ量

JDBCコネクター HDFSのダンプ対応 専用のAPI

SQL / Java → Javascript

ペタバイト対応 マッピング可能

書き直し可能

書き直し可能 Dataprocに起動

BigQuerySQLでストアドプロ シージャ(alpha)

(31)

04

GCP との連動

(32)

GCP のサービスを紹介

32

(33)

ETL 処理 Pub/Sub

GCP | Data pipeline 全体図

データソース ランディング・ゾー

加工 / 処理 活用

ETL/ESB 蓄積 / DWH 分析

Legacy EDW

バッチ

他社のツー

ELT SQL パートナーのツール / Datafusion / Data Transfer Service

Cloud storage

公開 データ

セット

BigQuery

ストリーミング

(34)

34 耐久性と高可用性を両立させた

BLOB ストレージ(オブジェクトスト レージ)

安全で耐久性のあるデータ保管 容量管理が不要

転送中のデータと保存データの暗号 化

パフォーマンスとコストバランスの取 れたストレージクラス

BigQuery や Dataflow, Dataproc な どの分析サービスとの統合

GCP | Cloud Storage

(35)

35 信頼性の高いリアルタイムメッセージング

サービス

グローバルに設計された高い可用性 プロビジョニングが不要で自動処理 At Least Once 配信

多彩なパターンで利用が可能

GCP | Cloud Pub/Sub

(36)

連携パターン

(37)

GCP | データパイプラインの連携ツール選択

Cloud

Pub/Sub Cloud BigQuery

Dataflow Cloud Dataproc

Cloud Dataprep

Data Transfer Service

Data Fusion ソース

Hadoop S3 Bucket

Bq load

Teradata

t

Netezza

n

RedShift

r

ランディング・ゾー

加工 / 処理

ETL/ESB 蓄積 / DWH

ESB / ETL

RDBMS

Cloud Storage Exadata

e

DWH

...

(38)

GCP | データパイプラインの連携ツール選択

Sqoop / NiFi + Spark またMR

ジョブズ クラウド

ネーティ

No

その他 の ETL ツール

Talend Informati

ca Intelligen

t Cloud Services

今現在、データ連携のツールがすでにあ りますか (ESB, ETL)?

はい

GCP に行く時にデータパイプライン(デー タ通信またデータ処理)を GCP で最適に 再構築?

カスタムロジックまた複雑なデー タパイプラインを Java また Python で書いてコントロールし たい?

Cloud Dataflow

はい

GCP から(プル)それぞれのデー タソースに接続したい?

bq load GCP API

いいえ

カスタムロジックまた複雑なデー タフローをビジュアルツールで作 りたい?

いいえ はい

Data Fusion

はい

データ整理だけが必要、ビジュア ルデータ探索したい、ルールベー スで構築したい

Dataprep

程的にデータをデータソースから シンクしたい場合

Data Transfer Service

はい

はい いいえ

いいえ

Cloud Dataproc

パート ナーの

ETL ツール

いいえ はい

いいえ

いいえ

(39)

バッチで、ファイルの構 でデータ送る

構 化データの場合

オンプレミスのスケジューラーの対応

GCP | BQ Load

向いている場面

データをオンプレミスからプッシュする時

(40)

GCP | BQ Load

事例

BigQuery ソース

Cloud

Storage bq load ランディング・ゾー

加工 活用Visualize

ETL/ESB 蓄積 / DWH 分析 Analyze

gsutil cp スケジューラー

BigQuery bq load

スケジューラー

1

2

GCS を経由

直接の書き込み

(41)

GCP | BQ Load

詳細

コマンドライン、Java, C#, Python, PHP, Ruby, Node.js, Go

ローカルディスクからロードをしたい時、

制限:

● コマンド毎 10MB 以下また 16,000 のレコー ド

● フォルダまたWildcardは使えない

(42)

バッチもしくはストリーミング対応

データフローをマージー、データ変換、データマッピ ング:複雑なデータフローを構築する時

マネージドサービス

GCP | Data fusion

向いている場面

(43)

GCP | Data fusion

事例

BigQuery Data

Fusion Data

Warehouse ランディング・ゾー

加工 活用Visualize

ETL/ESB 蓄積 / DWH 分析 Analyze

Netezza

n

Cloud Pub/Sub

Data Fusion

Cloud Storage

1 バッチ

1 ストリーミング

(44)

GCP | Data fusion

詳細

No-opsのデータパイプラインの構築と管理のための統 合サービス

フルマネージド型のデータ統合また処理 統一されたバッチとストリーミング

GUIでグラフの形で(DAG)フローの流れをビジュアル で作れる

エラー管理

メインのデータベースとデータウェアハウスと連携:IBM Netezza, Oracle 12c, Redshift, Kudu, MySQL, MS SQL Server, IBM DB2...

Beta

(45)

バッチ & ストリーミング

コードで複雑な処理を描きたい

GCPのサービスと連携したい時、テンプレー トを使いたい場合

GCP | Dataflow

向いている場面

(46)

GCP | Dataflow

事例

Cloud

Pub/Sub Cloud BigQuery

Dataflow Data

Warehouse ETL/ESB Landing 加工 蓄積 / DWH 分析 Analyze 活用Visualize

(47)

オープンソースのプログラミング モデル

サーバーレスでフル マネージド型のデー タ処理

何百万もの QPS に合わせた自動最適 化

Python また Javaで使い慣れた言語で 統一されたバッチとストリーミング

47

GCP | Dataflow

詳細

(48)

BigQuery へのデータの移動を自動化するマネー ジド サービス,コネクターが Teradata, S3,

redshift、さまざまなソースから

信頼性の高いデータ取り込み(アップタイム SLA と データ配信 SLA)

データ配信のスケーリング

GCP | Data Transfer Service

向いている場面

(49)

GCP | Data Transfer Service

事例

BigQuery Data

Warehouse

S3 Bucket

Landing 加工 活用Visualize

ETL/ESB 蓄積 / DWH 分析 Analyze

Data Transfer Service

(50)

GCP | Data Transfer Service

Data Transfer Service

様々なソースから (AWS S3, AWS Redshift, Redshift, …)

数クリックで設定はできます

スケジューラー、通知の機能も

(51)

今すでに使われている場合

データをオンプレミスからクラウドへ

ビジュアルでフロー構築

Partner | Informatica

向いている場面

データ周りの完全管理:data Catalog, MDM

(52)

Partner | Informatica

Informatica PowerCenter - use your ETL to integrate

BigQuery Data

Warehouse Hadoop

Oracle RDBMS

O

Landing 加工 活用

ETL/ESB 蓄積 / DWH 分析

Informatica

PowerCenter 1 オンプレミス

Informatica PowerCenter

2 クラウド

Informatica intelligent Cloud Services

BigQuery Hadoop

Oracle RDBMS

O

Informatica Cloud

Informatica Cloud

(53)

Partner | Informatica

ChangeDataCapture 対応 (Oracle, Db2, SQL Server, MySQL)

GUI で出来る:

データマッピング スキーママッピング フロー構築

ログファイルの構 解析

データウエアハウスマイグレション対応:

Netezza, Teradata また Hadoop のコネクター すでにある Tier で GCP 対応:

Tier C で標準で GCS のコネクター Tier D で直接の BigQuery コネクター

(54)

GCP | データ連携のパートナー

1000+ partners

(55)

04

データを表示する、

BI ツール

05

(56)

スプレッドショート直で BigQuery のデータを

BI ツール | Google スプレッドシート

SQL が書けなくってもデータにアクセス できる

データが見れるから簡単にすぐ理解は できる

(57)

BI ツール | データポータル

GUI でダッシュボード作れる

データソースがまとまってなくても様々なデータソー スを Join できる

テンプレートで簡単にダッシュボード作れる

カスタムグラフを D3.js を使って、Javascript で作る

(58)

● BigQuery と統合

● クラウドなのでスケーラブル

● どこでもからアクセスは出来る

● 50 以上のデータベース直接接続

BI ツール | Looker

(59)

GCP | パートナー

1000+ partners

(60)

Thank you

参照

関連したドキュメント

In this way the persistent homology of the point cloud X captures its essential topological features: the number of points is determined by the H 0 barcodes at small values of

Using this characterization, we prove that two covering blocks (which in the distributive case are maximal Boolean intervals) of a free bounded distributive lattice intersect in

「Silicon Labs Dual CP210x USB to UART Bridge : Standard COM Port (COM**)」. ※(COM**) の部分の

Azure Cloud Native Dojo Azure Light-Up.. ©Microsoft

Efficiency use of natural energy and storage systems... Application of E-Bike

例1) 自社又は顧客サーバの増加 例2) 情報通信用途の面積増加. 例3)

HACCP とは、食品の製造・加工工程のあらゆる段階で発生するおそれのあ る微生物汚染等の 危害をあらかじめ分析( Hazard Analysis )

[r]