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

はじめに AWS Glueは現在Preview中のサービスです 本資料に記載した内容はGA 正式リリース ま でに予告なく変更される可能性があります Twitterのハッシュタグは です 2

N/A
N/A
Protected

Academic year: 2021

シェア "はじめに AWS Glueは現在Preview中のサービスです 本資料に記載した内容はGA 正式リリース ま でに予告なく変更される可能性があります Twitterのハッシュタグは です 2"

Copied!
42
0
0

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

全文

(1)

1

#AWSDBDay

ETL をサーバーレスで実現する新サービス

AWS Glue のご紹介

2017年7月5日

アマゾン ウェブ サービス ジャパン

ソリューションアーキテクト

下佐粉 昭 (@simosako)

(2)

2

#AWSDBDay

はじめに

• AWS Glueは現在Preview中のサービスです

• 本資料に記載した内容はGA(正式リリース)ま

でに予告なく変更される可能性があります

• Twitterのハッシュタグは #AWSDBDay です

(3)

3

#AWSDBDay

自己紹介

下佐粉 昭(しもさこ あきら)

Twitter -

@simosako

所属:

アマゾン ウェブ サービス ジャパン

技術統括本部 エンタープライズソリューション部

ソリューションアーキテクト

好きなAWSサービス:Redshift, RDS, S3

人間が運用等から解放されて楽になるサービスが好きです

(4)

4

#AWSDBDay

アジェンダ

• データレイクを中心とした大規模データ分析基盤

• クラウド上のETL - AWS Glue

• AWS Glueの機能

(5)

5

#AWSDBDay

データレイクを中心とした

大規模データ分析基盤

(6)

6

#AWSDBDay

①データをデータレイクに集め、多様な分析につなげる

②分析はスケールアウト可能なインフラの上で実現

大規模データ分析 on クラウド

収集

データレイク

(保存)

分析

可視化

データを収集し、

データレイクへ

格納

全期間保存

共通APIでア

クセス

可視化

スケールアウト 可能な技術

分析

スケールアウト 可能な技術

API

(7)

7

#AWSDBDay

データレイク

• 多様なデータを一元的に保存

• データを失わない

• サイズ制限からの開放

• 決められた方法(API)です

ぐにアクセスできる

センサー データ RDBMS 非構造化ファイルテキストファイル データレイク

API呼び出しによる連携

(8)

8

#AWSDBDay

Amazon S3によるデータレイクの実現

• 上限無し:サイジング不要

• 高い耐久性:99.999999999%

• 安価:

$0.025/GB/月*

(スタンダード)

$0.019/GB/月*

(標準-低頻度アクセス)

例)10TBの保存で約2.1万円/月**

• APIアクセス

多様な言語にライブラリを提供

AWS各種サービスと連携

データレイク Amazon EMR (Hadoop) Amazon

Redshift Amazon API Gateway Amazon S3 センサー データ RDBMS 非構造化ファイルテキストファイル * 費用は2017年7月時点での東京リージョンでの価格です ** 1USドル = 110円で、標準-低頻度アクセスでの試算 Amazon Machine Learning

(9)

9

#AWSDBDay

スケールアウトが鍵

• スケールアップもスケールアウト

もクラウドでは容易

• …しかしスケールアップには限界

がある(CPU、メモリ)

スケールアウト可能なテクノロジー

=規模の増加に耐えうる設計

S

XL

スケールアップ

スケールアウト

(10)

10

#AWSDBDay

スケールアウト ≠ 高価

• クラウドではスケールアウトがコスト・時間の両面で効率的

• 必要な時に必要なだけノードを追加できる

• ノードを増やしても利用時間が短くなればコストは同じ

処理時間 8時間 処理時間 2時間

JOB

16ノードに 拡張

JOB

4ノード×8時間

=32

16ノード×2時間

=32

(11)

11

#AWSDBDay

スケールアウト可能な分析サービス

マネージド, 標準技術, スケールアウトが選択の鍵

Amazon

Redshift AmazonEMR AmazonAthena

マネージド マネージド DWH(RDB) マネージド Hadoop/Spark環境 マネージド クエリ環境 標準・デファクトス タンダード技術 SQL標準 Hadoop/Spark(デファクト) SQL標準 スケールアウト ユーザ操作で スケールアウト ユーザ操作で スケールアウト 自動的に スケールアウト

(12)

12

#AWSDBDay

分析

分析

データレイク

全体図(組み合わせ例)

①データをデータレイクに集め、多様な分析につなげる

②分析はスケールアウト可能なインフラの上で実現

③データソースからの収集やプリプロセス(ETL)は?

収集

可視化

Redshift QuickSight Amazon S3 BI+EC2

プリプロセス

全データ 変形済 Athena

(13)

13

#AWSDBDay

クラウド上のETL

AWS Glue

(14)

14

#AWSDBDay

AWS上のETL(Extract, Transform and Load)サービス

巨大データへのETL処理を...

「スケールアウト」で対応

「サーバレス」で提供

AWS Glue (Preview)

(15)

15

#AWSDBDay

Glueはスケールアウト処理を実現

• ベース技術にSparkを採用

• 大規模データに対し自動的

にスケールアウト

• スケールアウトのための設

計が不要

JOB

(16)

16

#AWSDBDay

サーバレスのジョブ実行

• サーバレス:サーバ管理を意

識しないで利用できるサービ

• プロビジョン、コンフィグ、

パッチ等が不要に

• 処理に掛かったリソースのみ

への支払い

(※利用費用については未 定であり、変更の可能性があります)

(17)

17

#AWSDBDay

分析

データレイク

ビッグデータ処理もサーバレスで実現可能に

サーバレス = より分析に集中しやすい環境を実現

※全ての分析がサーバレスで実現できるわけではありません。適材適所の配置が重要です

可視化

Amazon QuickSight Amazon S3

プリプロセス

全データ 変形済 Amazon Athena AWS Glue

収集

AWS Glue

(18)

18

#AWSDBDay

Amazon EMRとAWS Glue

Amazon EMR

AWS Glue

用途

汎用Hadop/Spark環境

ETL処理に特化

(Sparkベース)

スケールアウト

可能(ユーザ設計)

可能(自動判断)

サーバ管理

数クリックで指定した環境

が準備される

サーバの管理自体不要

データレイク(S3)へ

の透過的なアクセス

可能

可能

プログラミング環境

Hadoopエコシステム上の

多様なアプリケーション

PySparkでETL処理をカス

タマイズ

(19)

19

#AWSDBDay

(20)

20

#AWSDBDay

AWS Glue – 全体像

データソースを

クロール

し、

メタデータを取得

メタデータは

データカタログ

で管理

メタデータを元に

ジョブ

を作成(PySpark)

ジョブは

サーバレス

な環境

で実行される

(21)

21

#AWSDBDay

データカタログ  Hiveメタストア互換のデータソース用メタデータリポジトリ  テーブル、データ型、パーティションフォーマットを推測するため に ソースをクロール オーケストレーション  オートスケール - 複数インスタンスでジョブを実行  サーバレス - 利用したリソース分だけの支払い ジョブオーサリング  ETL処理のためのPythonコード(PySpark)を生成  任意のIDEでコードを作成可能

AWS Glueの構成要素

(22)

22

#AWSDBDay

Glueデータカタログ

データセットの発見・管理

(23)

23

#AWSDBDay

表のメタデータをHiveメタストアで管理 メタデータ • 列・プロパティ・型データロケーション(URI)接続情報更新情報 クローラーによる自動チェックと登録

(24)

24

#AWSDBDay

クローラーが自動的にスキーマを推測 • ファイルタイプを識別子、どのような内容 が含まれるのかを分類(Classifier)しスキー マとして抽出 • Grokフィルタでカスタマイズ可能 クローラーをスケジュール実行すること で新しいデータやスキーマの変更を発見 クローラーを使わず手動での登録も可能 ログはCloudWatch Logsに出力

クローラーによるデータカタログの自動更新

(25)

25

#AWSDBDay

クロールする範囲(接続)

• RDB

– RDBへの接続情報を定義

– ホスト名、ID、パスワード+

セキュリティグループでアク

セスを制限

• S3

– S3バケットを指定

– IAMでアクセスを制限

(26)

26

#AWSDBDay

クローラー:対応データソース

• Amazon RDS

– Aurora, MySQL, MariaDB, PostgreSQL

• Amazon Redshift

• EC2上のRDBにJDBC接続

• S3上のファイル

(27)

27

#AWSDBDay

標準Classifier

• 多様なClassifierを提供

(右表)

• 圧縮ファイルにも対応

– ZIP

(1アーカイブ=1ファイルのみ)

– BZIP2

– GZIP

– LZ4

– Snappy (標準Snappy)

(28)

28

#AWSDBDay

補足:カスタムClassifier

• GorkパターンでカスタムClassifierを作成可能

– Grokパターンで表記できないものについては、カスタムパター

ン(正規表現ベース)で対応可能

%{TIMESTAMP_ISO8601:timestamp} ¥[%{MESSAGEPREFIX:message_prefix}¥] %{CRAWLERLOGLEVEL:loglevel} : %{GREEDYDATA:message}

例)Grokパターン

(29)

29

#AWSDBDay

ジョブオーサリング

(30)

30

#AWSDBDay

自動的なジョブコード生成

データソースとターゲットを指定してETLジョブを定義

GUIで定義を決めるとPySparkのコードが出力される

(31)

31

#AWSDBDay

柔軟な処理を提供するGlue ETLスクリプト

• 人間が読め、編集し

易いコードを出力

• PySparkのライブラ

リを活用して高度な

カスタマイズも可能

• 任意のエディタで編

集可能

(32)

32

#AWSDBDay

開発者に優しいETLスクリプト

• 生成されたコードはETL図

に連動したアノテーション

が人間が読める形で記載さ

れている

• 任意の開発環境で開発可能

– AWSにはAWS CodeStar等の 開発環境も

(33)

33

#AWSDBDay

PySpark extensionと外部ライブラリ

• 変換処理をPySparkのextension

として用意済

• 多彩な出力フォーマットに対応:

プログラム不要

• PySparkコード+ライブラリで柔

軟な処理

– S3上に置いたPythonライブラリや Jarファイルを読み込み可能

— transforms —

• drop_fields

• join

• relationalize

• rename_field

• select_fields

• spigot

• split_fields

• split_rows

• unbox

• unnest

• write

(34)

34

#AWSDBDay

オーケストレーション&リソース管理

フルマネージド、サーバレスのジョブ実行

(35)

35

#AWSDBDay

ジョブの定義と実行

• 作成したETLスクリプトを読み込

んで実行

– IAMロールで権限を設定

• ジョブの実行開始方法

– APIコール(手動) – トリガー

• リトライ制限の指定や、パラメー

タを渡すことが可能

• 実行ログやエラーログは

CloudWatch Logsに出力

(36)

36

#AWSDBDay

トリガー

• ジョブ開始のタイミング

– 先行ジョブ完了時 – スケジュール – API(オンデマンド)

(37)

37

#AWSDBDay

サーバレスのジョブ実行環境

サーバ管理や準備が不要

 ジョブに必要なインスタンス

が自動的に用意される

 ワームプール:事前コンフィ

グ済のインスタンスフリート

によりスタートアップに掛か

る時間を削減

 VPC内のリソースにアクセス

可能

お客様VPC お客様VPC インスタンスのワームプール

(38)

38

#AWSDBDay

ジョブ実行時のVPC内へのアクセス

ジョブインスタンスはVPC内に存

在するように見える

(※VPC内のリ ソースにアクセスするジョブの場合)

ジョブインスタンスにはプライ

ベートIPが付与

インターネットへのアクセスが無

いサブネットでも利用可能

そのため、S3にアクセスする場合

はVPC Endpointの設定が必須

(39)

39

#AWSDBDay

まとめ – AWS Glue

• サーバレスなETL環境

• Sparkベースのスケールアウト処理

• PySparkを使ってジョブをカスタマイズ

現在プレビュー中:ぜひお試しください!

https://pages.awscloud.com/glue-sign-up-form.html

(40)

40

#AWSDBDay

参考情報

• AWS Glue ホームページ

– 各種資料や動画等へのリンクがあります

https://aws.amazon.com/jp/glue/

• AWS Glue プレビューお申込み

https://pages.awscloud.com/glue-sign-up-form.html

(41)

41

#AWSDBDay

内容についての注意

• 本資料では2017年7月5日時点のサービス内容および価格についてご説明しています。最 新の情報はAWS公式ウェブサイト(http://aws.amazon.com)にてご確認ください。 • 資料作成には十分注意しておりますが、資料内の価格とAWS公式ウェブサイト記載の価格 に相違があった場合、AWS公式ウェブサイトの価格を優先とさせていただきます。 • 価格は税抜表記となっています。日本居住者のお客様が東京リージョンを使用する場合、 別途消費税をご請求させていただきます。

• AWS does not offer binding price quotes. AWS pricing is publicly available and is subject to change in accordance with the AWS Customer Agreement available at http://aws.amazon.com/agreement/. Any pricing information included in this document is provided only as an estimate of usage charges for AWS services based on certain information that you have provided. Monthly charges will be based on your actual use of AWS services, and may vary from the estimates provided.

(42)

参照

関連したドキュメント

しかしながら,式 (8) の Courant 条件による時間増分

実際, クラス C の多様体については, ここでは 詳細には述べないが, 代数 reduction をはじめ類似のいくつかの方法を 組み合わせてその構造を組織的に研究することができる

Windows Hell は、指紋または顔認証を使って Windows 10 デバイスにアクセスできる、よ

・ここに掲載する内容は、令和 4年10月 1日現在の予定であるため、実際に発注する建設コンサル

本論文での分析は、叙述関係の Subject であれば、 Predicate に対して分配される ことが可能というものである。そして o

発行日:2022 年3月 22 日 発行:NPO法人

・本計画は都市計画に関する基本的な方 針を定めるもので、各事業の具体的な

定的に定まり具体化されたのは︑