SlideShare a Scribd company logo
Glue DataBrewでデータを
クリーニング、加工してみよう
2021/10/7
データアナリティクス事業本部
須藤 健志
2
自己紹介
須藤 健志(suto takeshi)
所属
データアナリティクス事業本部
『データ分析基盤や機械学習基盤のコンサル・構築を担当』
略歴
通信事業会社のNWエンジニア→メーカー系SIer
→クラスメソッドJoin(2020年4月)
好きなAWSサービス
AWS CDK、Glue DataBrew、SageMaker
3
アジェンダ
• はじめに
• Glue Databrewの概要
• Glue Databrewの機能と特徴
• Glue Databrewの使いどころ
• デモ
• まとめ
4
はじめに
データ分析・機械学習の前に行う
「データクレンジング」
5
はじめに
•こんなことありませんか?
• 誤記や表記ゆれがあり前処理がうまくいかない
• 重複しているデータがある、欠損値がある
• エラーが発生してデータを取り込めない
6
はじめに
データのクレンジングが必要
欠損の修正
重複データの削除
正規化・標準化
無関係なデータの削除や
マスキング
7
はじめに
しかしデータクレンジングには
時間とコストがかかる
• ワークフローの構築とその自動化
• システム間で大容量データの移動
8
Glue DataBrewとは
コードを記述せずに
データのクリーンアップおよび正規化ができる
ビジュアルデータ準備ツール
AWSマネージドサービス
(サーバレスで使える)
9
Glue DataBrewとは
主な機能
250種類以上の変換処理
• プレビューで変換前と変換後を比べながら処理を作成
10
Glue DataBrewとは
主な機能
ワークフローの自動化
• ジョブの実行をスケジューリングできる
11
Glue DataBrewとは
主な機能
データリネージの視覚化
• データが通過した様々なデータソースと変換ステップをビジュアルで確認
12
Glue DataBrewとは
主な機能
データプロファイリング
• データの相関関係や統計をわかりやすく表示
13
Glue DataBrewとは
サポートしているファイルタイプ
【入力ファイル】
• CSV
• Parquet
• Json
• Excel
【区切り文字】
• カンマ(,)
• コロン(:)
• セミコロン(:)
• パイプ(|)
• タブ(¥t)
• キャレット(^)
• バックスラッシュ(\)
• スペース
【圧縮タイプ】
• なし
• Snappy
• Gzip
• LZ4
• Bzip2
• Deflate
• Brotli
【出力ファイル】
• CSV
• Parquet
• Glue Parquet
• AVRO
• ORC
• XML
• Json
• Tableau Hyper
14
Glue DataBrewとは
指定できるデータソース、出力先も充実してきた
【データソース】
• Amazon S3
• Amazon Redshift
• Glueデータカタログ
(S3、Redshift、RDS、Lake Formation)
• Snowflake
• その他データベース
(JDBC接続経由)
• サードパーティデータ
(AWS Data Exchange
またはAmazon AppFlow経由)
【出力先】
• Amazon S3
• Amazon Redshift
• Glueデータカタログ
(S3、Redshift、RDS 、Lake Formation )
• Snowflake
• その他データベース
(JDBC接続経由)
15
Glue DataBrewの料金
インタラクティブセッション(1.0$/30分)
• プロジェクト画面を開くとセッション開始
• 未操作の時間が続けば自動でサスペンド
• はじめてDataBrewを使う場合、最初の40セッションは無償
ジョブ実行(0.48$/ノード/時間)
• ジョブ実行に使用されたノード数に基づいて1時間ごとに課金
• デフォルトでは各ジョブに5ノード割り当て
• 1ノード4vCPUs、16GBメモリ
16
Glue DataBrewの使いどころ
主なユースケース
• データをアドホックに探索して
BIレポートやデータマートの作成に向けた策定
• 定常的かつ簡単なデータクリーニング処理を自動化したい
• データ準備処理のためのパイプラインを
コーディングレスで構築したい
17
Glue DataBrewの使いどころ
(技術的に可能だが)DataBrewには向かないケース
• 複雑なETL処理
→実現に膨大なステップ数となるため
• 機械学習における特徴量計算
• データ分析における複数テーブルからの統計処理
→エンジニアからすればコード開発した方がラク
• データ前処理工程を1つのサーバ内で一貫して素早く処理したい
• Glue Databrewジョブの実行完了には時間がかかる
• 同じ処理をコードで実行した方が早い
18
ここから実際の画面でデモをやっていきます
内容:DataBrewプロジェクト作成〜レシピ作成〜ジョブ実行をやってみよう
使用するデータ:Titanicの機械学習用データ
(以下URLからダウンロードして、S3バケットに保存した状態からスタートします)
https://www.kaggle.com/c/titanic/data
19
まとめ
データクリーニング、正規化に使えるGlue DataBrew
• サーバレスかつコードを書かずにデータ処理のジョブを作成で
きるので構築に手間がかからない
• プレビューで変換前/後を確認しながら様々な処理ができる
• データをアドホックに探索しながらワークフローを作るのに有
用だが、複雑なETL処理の実装には向かない
Glue DataBrewでデータをクリーニング、加工してみよう

More Related Content

What's hot

データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
データウェアハウスモデリング入門(ダイジェスト版)(事前公開版) データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
Satoshi Nagayasu
 
MLOps入門
MLOps入門MLOps入門
MLOps入門
Hiro Mura
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Amazon Web Services Japan
 
アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門
Yoichi Kawasaki
 
データ利活用を促進するメタデータ
データ利活用を促進するメタデータデータ利活用を促進するメタデータ
データ利活用を促進するメタデータ
Yahoo!デベロッパーネットワーク
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
Amazon Web Services Japan
 
Amazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオンAmazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオン
Amazon Web Services Japan
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
NTT DATA Technology & Innovation
 
AWSで作る分析基盤
AWSで作る分析基盤AWSで作る分析基盤
AWSで作る分析基盤
Yu Otsubo
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
Takuto Wada
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
mosa siru
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習
西岡 賢一郎
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティス
Amazon Web Services Japan
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
Shinsuke Sugaya
 
データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門
Satoru Ishikawa
 
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
Recruit Lifestyle Co., Ltd.
 
The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発
Amazon Web Services Japan
 
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
Yusuke Suzuki
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
Amazon Web Services Japan
 
VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話
Noritaka Sekiyama
 

What's hot (20)

データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
データウェアハウスモデリング入門(ダイジェスト版)(事前公開版) データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
データウェアハウスモデリング入門(ダイジェスト版)(事前公開版)
 
MLOps入門
MLOps入門MLOps入門
MLOps入門
 
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
Kinesis + Elasticsearchでつくるさいきょうのログ分析基盤
 
アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門アプリケーション開発者のためのAzure Databricks入門
アプリケーション開発者のためのAzure Databricks入門
 
データ利活用を促進するメタデータ
データ利活用を促進するメタデータデータ利活用を促進するメタデータ
データ利活用を促進するメタデータ
 
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design PatternAWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
AWS Black Belt Online Seminar 2018 Amazon DynamoDB Advanced Design Pattern
 
Amazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオンAmazon Athena 初心者向けハンズオン
Amazon Athena 初心者向けハンズオン
 
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
入門 Kubeflow ~Kubernetesで機械学習をはじめるために~ (NTT Tech Conference #4 講演資料)
 
AWSで作る分析基盤
AWSで作る分析基盤AWSで作る分析基盤
AWSで作る分析基盤
 
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
SQLアンチパターン 幻の第26章「とりあえず削除フラグ」
 
マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!マイクロにしすぎた結果がこれだよ!
マイクロにしすぎた結果がこれだよ!
 
Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習Amazon SageMakerでカスタムコンテナを使った学習
Amazon SageMakerでカスタムコンテナを使った学習
 
AWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティスAWSでDockerを扱うためのベストプラクティス
AWSでDockerを扱うためのベストプラクティス
 
SolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみようSolrとElasticsearchを比べてみよう
SolrとElasticsearchを比べてみよう
 
データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門データ分析を支える技術 DWH再入門
データ分析を支える技術 DWH再入門
 
分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方分散トレーシングAWS:X-Rayとの上手い付き合い方
分散トレーシングAWS:X-Rayとの上手い付き合い方
 
The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発The Twelve-Factor Appで考えるAWSのサービス開発
The Twelve-Factor Appで考えるAWSのサービス開発
 
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
見えない壁を越えよう!アジャイルやマイクロサービスを阻む「今までのやり方」 - デブサミ夏2023
 
マルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのことマルチテナント化で知っておきたいデータベースのこと
マルチテナント化で知っておきたいデータベースのこと
 
VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話VPC Reachability Analyzer 使って人生が変わった話
VPC Reachability Analyzer 使って人生が変わった話
 

Similar to Glue DataBrewでデータをクリーニング、加工してみよう

若手エンジニアとして今年頑張ったこと
若手エンジニアとして今年頑張ったこと若手エンジニアとして今年頑張ったこと
若手エンジニアとして今年頑張ったこと
Tsukasa Omukai
 
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーションBIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
Hisashi Igarashi
 
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
オラクルエンジニア通信
 
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみたAWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
tatsuya 264
 
佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う
Daiyu Hatakeyama
 
Azure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data LakeAzure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data Lake
Hideo Takagi
 
Data Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdaysData Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdays
Kenta Suzuki
 
Data Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdaysData Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdaysVOYAGE GROUP
 
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
Amazon Web Services Japan
 
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
Yosuke Katsuki
 
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
Ryoma Nagata
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
Keiichi Hashimoto
 
Qlik TechFest C-8 パフォーマンス問題との闘い方
Qlik TechFest C-8 パフォーマンス問題との闘い方 Qlik TechFest C-8 パフォーマンス問題との闘い方
Qlik TechFest C-8 パフォーマンス問題との闘い方
QlikPresalesJapan
 
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
Developers Summit
 
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へD1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
Hideaki Tokida
 
Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩
Ryuichi Tokugami
 
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
Daisuke Masubuchi
 
Tableauが魅せる Data Visualization の世界
Tableauが魅せる Data Visualization の世界Tableauが魅せる Data Visualization の世界
Tableauが魅せる Data Visualization の世界Takahiro Inoue
 
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
JustSystems Corporation
 
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
日本マイクロソフト株式会社
 

Similar to Glue DataBrewでデータをクリーニング、加工してみよう (20)

若手エンジニアとして今年頑張ったこと
若手エンジニアとして今年頑張ったこと若手エンジニアとして今年頑張ったこと
若手エンジニアとして今年頑張ったこと
 
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーションBIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
BIがクラウドで更なる進化!  データとの連携を強化したデータビジュアライゼーション
 
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
BIがクラウドで更なる進化!データとの連携を強化したデータビジュアライゼーション(Oracle Cloud Days Tokyo 2015)
 
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみたAWS朝会2022/1	セッション① 数年間、レイクハウスを設計運用してみた
AWS朝会2022/1 セッション① 数年間、レイクハウスを設計運用してみた
 
佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う佐賀大学 - データ分析と向き合う
佐賀大学 - データ分析と向き合う
 
Azure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data LakeAzure Antenna はじめての Azure Data Lake
Azure Antenna はじめての Azure Data Lake
 
Data Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdaysData Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdays
 
Data Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdaysData Engineering at VOYAGE GROUP #jawsdays
Data Engineering at VOYAGE GROUP #jawsdays
 
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
20210330 AWS Black Belt Online Seminar AWS Glue -Glue Studioを使ったデータ変換のベストプラクティス-
 
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
re:Growth 2016 in TOKYO発表「AWS Glueの紹介」
 
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応クラウドDWHにおける観点とAzure Synapse Analyticsの対応
クラウドDWHにおける観点とAzure Synapse Analyticsの対応
 
現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure現場開発者視点で答えるWindows Azure
現場開発者視点で答えるWindows Azure
 
Qlik TechFest C-8 パフォーマンス問題との闘い方
Qlik TechFest C-8 パフォーマンス問題との闘い方 Qlik TechFest C-8 パフォーマンス問題との闘い方
Qlik TechFest C-8 パフォーマンス問題との闘い方
 
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
【14-B-2】グリーを支えるデータ分析基盤の過去と現在(橋本泰一〔グリー〕)
 
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へD1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
D1-2-S07 オンプレミスのデータウェアハウス基盤を BigQuery へ
 
Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩Azure Databricksで始めるSpark 構築から活用までの第一歩
Azure Databricksで始めるSpark 構築から活用までの第一歩
 
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
PDF版 世界中のゲーム分析をしてきたPlayFabが大進化!一緒に裏側の最新データ探索の仕組みを覗いてみよう Db tech showcase2020
 
Tableauが魅せる Data Visualization の世界
Tableauが魅せる Data Visualization の世界Tableauが魅せる Data Visualization の世界
Tableauが魅せる Data Visualization の世界
 
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
DDDとクリーンアーキテクチャでサーバーアプリケーションを作っている話
 
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
【de:code 2020】 Power Platform で広がるデータ インテグレーションの世界 (1/2)
 

Glue DataBrewでデータをクリーニング、加工してみよう

Editor's Notes

  1. 皆さん こんにちは。 本セッションでは、「AWS Glue DataBrewを使ってデータをクリーニング、加工する」といったデータのクレンジングを行う方法についてご紹介します。 この動画では、Glue DataBrewでデータ処理を行うジョブを作成するための一連の操作方法を理解でき、どのような場面でDataBrewを活用すると良いのかを知ることができます。
  2. 自己紹介させていただきます。私、須藤健志と申します。 データアナリティクス事業本部に所属しており、主にデータ分析基盤や機械学習基盤のコンサルティングと構築を担当しています。 クラスメソッドには2020年4月にJoinいたしました。 よろしくお願いします。
  3. 今日のアジェンダです。 はじめにDataBrewの概要や機能についてお話しし、次に実際に私が使ってみたときの所感をもとに、DataBrewの使いどころをお話しします。 そのあと、実際のAWSコンソール画面を映しながらDataBrewの操作方法を解説し、最後にまとめとなります。
  4. データ分析や機械学習を始める際に、業務システムにデータを直接読み込ませるのではなく、前段のフェーズで「データのクレンジング」という工程が必要になってくることはご存知でしょうか? データクレンジングとは元のデータベースにあるデータから欠損している値、表記揺れがある値を探索し、その修正や正規化を行う「データ前処理のフェーズ」で行う工程のことです。
  5. データ分析や機械学習のデータ前処理のなかでデータクレンジングが必要になってくる背景として、 データベースからロードした生のデータをそのまま分析基盤や機械学習にかけようとしても、 ・誤記や表記ゆれが含まれているため、データ変換時に歪みが発生するであったり ・重複している部分や欠損している部分があり、データの信頼性が低い状態であったり こういった理由によるシステムエラーでうまくデータを読み取れず、運用を継続できない といった課題が生じます。
  6. そのために、欠損の修正、重複データの削除、データの正規化や標準化、無関係なデータの削除やマスキングといったデータのクレンジング作業が必要となります。
  7. しかし、「データ分析や機械学習の業務にかかる時間は、データ前処理の工程が8割である」という言葉があるように、データクレンジングには多くの時間とコストがかかります。 その要因として、変換処理を行うスクリプト開発だけでなく、それを自動化するためのワークフロー構築や、システム間で大容量のデータを集約する仕組みと環境も必要になってくるからです。
  8. このような悩みを解決してくれるサービスとしてAWS Glue DataBrewというサービスがあります。 Glue DataBrewとは、SQLやPythonのようなコードを記述せずにデータのクリーンアップおよび正規化ができるデータ準備ツールです。 特徴として、AWSマネージドサービスのためサーバレスで開発環境とジョブ実行環境を用意することができ、データの読み取り先もS3、Redshift、Glue、RDSなどの連携対応しており、データの集約の仕組みも簡単に実装できます。
  9. 主な機能についてざっくりご紹介していきます。 こちらのスライドに移しているのはDataBrewの開発画面であるプロジェクト画面になります。 上に並んでいるアイコンから処理内容をクリックし、右側に現れる編集ウィンドウから項目を選択していくだけで、コードを一切書かずにデータ変換処理を生成することができます。 作成した処理は1つのステップとして蓄積していき、ステップの塊を処理する一連のフローがレシピという単位で保存されます。 また、プレビュー機能で変換前と変換後を比べながら開発でき、データ探索や処理内容の試行錯誤を行いながら開発を進められるという強みがあります。
  10. こうしてレシピに保存された処理内容を実行するジョブを生成できるのですが、作成したジョブはスケジュール機能により任意の日時と頻度で実行するように設定することができます。 実行頻度はcron式で記述することもできますので、ある程度柔軟性のある実行スケジュールを組むことができると思います。
  11. また、DataBrewにはデータリネージの視覚化をしてくれる機能があります。 こちらの画面のように、データが通過した様々なデータソースと変換ステップのフローをビジュアルで表示されるため、プロセスの流れについての確認がしやすくなっています。
  12. また読み込んだデータソースをこちらの画面のようにプロファイリングする機能もあり、データの相関関係や統計をわかりやすく表示することができます。
  13. 次にサービスとしてサポートしているファイルタイプについてです。 2021年9月30日時点の情報となりますが、S3バケットから読み込めるファイルタイプとしてこちらに表示しているものをサポートしています。 データソースとしてよく使われるcsvやParqutなどがありますし、 他のAWSサービスにはあまり見られない特徴として、EXCELの拡張子ファイルの読み取りや、Tableau Hyper形式での出力をサポートしているところが面白いところですね。
  14. また、データセットに指定できるデータソースや、ジョブの出力先に関しても日々のアップデートとともに充実してきています。 最近はJDBCドライバで接続できるデータベースが対応したことと、DataDogやSalesfourceなどのSaaSサービスと連携できるAmazon AppFlowに対応したことは大きなアップデートではないでしょうか。
  15. 料金についてですが、 まず1つ目に、プロジェクト画面を開くと開発環境へのセッションが開始され、この時点から30分ごとに1ドルずつ課金が発生します。 しかし、これから初めてDataBrewを使う場合であるならば、セッション接続回数において最初の40回分は無償となり料金は発生しません。 2つ目は、ジョブ実行に使用されたノード数に基づいて、1時間ごとに課金が発生します。 デフォルトでは1つのジョブに対して5ノードを割り当てます。 無駄に課金を発生させないためのポイントですが、無闇にプロジェクト画面を開きに行ってセッション開始による課金を発生させないように注意してください。 また作業が終わった後はプロジェクト画面をそのまま放置せずウィンドウを閉じることを心がけると良いと思います。
  16. 次に、私が実際にDataBrewを使ってきて感じたことをもとに、こういうシチュエーションのときにDataBrewを利用するのが良いのではないか、ということについてお話しします。 まず、データをアドホックに探索してBIレポートやデータマートの作成方針を検討しながら開発を進める場合です。 つまり、現状で各々の業務システムで使われているデータベースの中身をまだ詳しく確認しておらず、これからどのような前処理が必要になるか把握できていない状況において、いろいろ試行錯誤しながら開発を進めたいのであれば、DataBrewの利用は有効になると思います。 2つ目と3つ目にある、定常的かつ簡単なデータクリーニング処理を自動化したい場合、またそのためのパイプラインをコーディングレスで構築したい場合です。 例えば、単純なデータ変換処理を自動化するワークフローを短期間で構築したい、そんな時にDataBrewであれば開発とジョブ実行のための環境を用意する必要がなく、スクリプト等のコード開発もする必要がないため、作業コストがかからず構築できると思います。
  17. 次に、サービス機能として実現可能でありますがが、DataBrewの利用には向かないユースケースについてお話しします。 1つ目は、複雑なETL処理には向かないと感じました。 例えば、機械学習における特徴量計算や、データ分析における複数テーブルからデータを読み込んで計算する統計処理などを実現しようとすると膨大なステップ数となります。 それを全てマウスクリックなどのGUI操作で作成していくのはかなりの負担であり、コードを書けるエンジニアからすれば素直にスクリプト作成やLambdaやStepFunctionsでコードを書いた方がラクだと思いました。 2つ目は、データクレンジングもデータ加工のETL処理も1つのサーバ内で一貫して素早く処理したい場合です。 私が使ってきた体感ではありますが、Glue DataBrewジョブの実行時間は、決して早いとは感じませんでしたし、 データの規模は処理内容による部分はありますが、同じ処理をLambdaやStepfunctions内のコードでデータの処理や計算をさせた方が処理が早いこともあります。 それはDataBrewのステップ数が膨大であればあるほど実行時間の差は開いていくように思いました。 ですので、DataBrewのジョブは比較的単純なデータクレンジング処理を営業時間外の夜間に実行するジョブとしてスケジュールして運用していく使い方が良いのではないかと感じました。 アーキテクチャの面においても、データ前処理で細かい工程ごとに利用するサービスを増やしたくないという思いがあるのなら、DataBrewを必ず採用する必要性はないのなかと思います。
  18. さて、ここからは実際のDatBrewの画面をお見せしながらプロジェクト作成〜レシピ作成〜ジョブ実行までの手順を解説していきます。 今回のデモで使用するデータはKaggleにあるタイタニックの機械学習用データを使わせていただきます。 前準備として、このデータをS3バケットに保存した状態からデモはスタートします。 それではAWSコンソール画面に移動いたします。
  19. では、まとめに入ります。 DataBrewを利用する際に押さえておくポイントとして、 サーバレスかつコードを書かずにデータ処理のジョブを作成できるので構築に手間がかからないというメリットがあること。 プレビューで変換前/後を確認しながら様々な処理ができるという強みがあること。 また、DataBrewの使い所として、データをアドホックに探索しながらワークフローを作るのに有用だが、複雑なETL処理の実装には向かない、ということが挙げられます。 また、今回のデモで紹介した処理内容の他に、DataBrewで様々な変換処理の検証を行なっているブログ記事がありますので、そちらの方を動画の概要欄に貼っておきますので是非ご参照ください。
  20. 以上で私の発表は終了となります。 最後まで見てくださった皆さん、ご視聴ありがとうございました。 クラスメソッドには他にも様々な動画コンテンツがあります。 よかったらチャンネル登録や高評価していただけたら非常に嬉しいです。 それでは、さようなら。