$30 off During Our Annual Pro Sale. View Details »
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
AWSでデータ解析を始めたーい
Search
koara
September 16, 2023
Technology
0
300
AWSでデータ解析を始めたーい
四国クラウドお遍路 2023
koara
September 16, 2023
Tweet
Share
More Decks by koara
See All by koara
SST ( Serverless Stack Toolkit ) 使ってみた
ra1211
0
220
もめんと会 Momento Cache
ra1211
0
67
JAWS-UG 名古屋 AVAハンズオン+re:Inforceの復習
ra1211
0
120
JAWS ミート 2023
ra1211
0
63
JAWS-UG大阪 AWS re:Invent 2022 re:Cap
ra1211
0
120
20221112_四国クラウドお遍路.pdf
ra1211
0
330
Other Decks in Technology
See All in Technology
非CUDAの悲哀 〜Claude Code と挑んだ image to 3D “Hunyuan3D”を EVO-X2(Ryzen AI Max+395)で動作させるチャレンジ〜
hawkymisc
1
160
Haskell を武器にして挑む競技プログラミング ─ 操作的思考から意味モデル思考へ
naoya
4
880
世界最速級 memcached 互換サーバー作った
yasukata
0
330
最近のLinux普段づかいWaylandデスクトップ元年
penguin2716
1
670
AWS Trainium3 をちょっと身近に感じたい
bigmuramura
1
130
20251209_WAKECareer_生成AIを活用した設計・開発プロセス
syobochim
5
1.4k
法人支出管理領域におけるソフトウェアアーキテクチャに基づいたテスト戦略の実践
ogugu9
1
210
Snowflakeでデータ基盤を もう一度作り直すなら / rebuilding-data-platform-with-snowflake
pei0804
2
780
pmconf2025 - データを活用し「価値」へ繋げる
glorypulse
0
700
【CEDEC+KYUSHU2025】学生・若手必見!テクニカルアーティスト 大全 ~仕事・スキル・キャリアパス、TAの「わからない」を徹底解剖~
cygames
PRO
0
150
意外とあった SQL Server 関連アップデート + Database Savings Plans
stknohg
PRO
0
290
エンジニアとPMのドメイン知識の溝をなくす、 AIネイティブな開発プロセス
applism118
4
1k
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
253
22k
Being A Developer After 40
akosma
91
590k
Building an army of robots
kneath
306
46k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
Imperfection Machines: The Place of Print at Facebook
scottboms
269
13k
For a Future-Friendly Web
brad_frost
180
10k
The World Runs on Bad Software
bkeepers
PRO
72
12k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Documentation Writing (for coders)
carmenintech
76
5.2k
Thoughts on Productivity
jonyablonski
73
5k
Building Flexible Design Systems
yeseniaperezcruz
330
39k
Transcript
AWSでデータ分析を始めたーい クラウドお遍路 2023/09/16
Who am I ? { "name": "古賀巧", "X_id": "@koara__fftr", "age":
27, "career": [ “C”, ”C++”, ”C#”, ”JavaScript”, ”PHP”], "hobbies": ["音楽"], "certifications": [ ], "favorite_AWS_service": "AWS Lambda", "other": [ ] }
・はじめに ・データ分析の流れ ・AWSのデータ分析サービス ・Amazon AthenaでNo ETLで、分析してみる ・AWS Glue DataBrewでETLして、分析してみる ・まとめ
Contents
はじめに AWSを使いたい動機 オンプレで大量のデータを扱うためのリソースの調達や管理などが難しい したくない サクッと試して、今あるデータでどんなことをできるか知りたい 小さく作って、早く失敗して、改善していきたい
はじめに データ分析の流れ データ収集 蓄積・加工 可視化・分析
データ分析の流れ 1° 収集 データを集める 例) システムのアクセスログ IoTセンサーのデータ 購買履歴 音声データ SNSデータ
データ分析の流れ 部門や地域で サイロ化したデータを DLに集める 2°-1 蓄積・加工 DWH、DMに格納 分析しやすい形式に加工 ETL処理
データ分析の流れ Extraxt 2°-2 加工処理 データ分析全体の8割くらいを占める Transform Load Extraxt Load Transform
データを加工してから、書き出す →非構造化データにも対応 データを書き出してから、加工する
データ分析の流れ 2°で加工したデータを BIツールでの可視化や 機械学習の学習データとして活用 3° 可視化・分析
AWSのデータ分析サービス 収集 蓄積・加工 可視化・分析
Amazon AthenaでNo ETLで、分析してみる Amazon Athena サーバレスでインフラ管理不要 S3に保存・蓄積したログに対してSQLクエリを投げて データをロードせずに直接分析を行える
Amazon AthenaでNo ETLで、分析してみる 1°データをS3に保存する サポートしているデータ形式 Apache Parquet ORC CloudTrail ログ
CSV、TSV JSON など 行指向データ 行ごとにデータを保存 特定の列を扱う場合でも、行全体を読み込む必要がある 列指向データ 列ごとにデータを保存 特定の列だけ扱う処理では、行全体を読み込む必要がない
Amazon AthenaでNo ETLで、分析してみる 2°「データベース」と「テーブル」の作成 データベース・・・テーブルをグループにまとめる テーブル・・・列名、データ型などを定義 テーブル定義の作成 ・DDL(Data Define Language)で定義する
・Glue Crawlerで自動作成 列名やデータ型を推測して、作成してくれる
Amazon AthenaでNo ETLで、分析してみる 3°SQLでクエリ クエリ結果はS3に自動保存 コンソールから履歴も確認できる ANSI標準のSQLが使える(標準のSQL)
Amazon AthenaでNo ETLで、分析してみる +α 横串検索(Federated Query) データコネクタを利用した、複数データソースに横断的なクエリを実行
Amazon Athenaのパフォーマンスチューニング その他 Amazon Athena のパフォーマンスチューニング Tips トップ 10 https://aws.amazon.com/jp/blogs/news/top-10-performance-tuning-tips-for-amazon-athena/
1° スキャンするデータ量を減らす →列指向データ(Apache Parquet、ORCなど)を使用する →データの圧縮(Snappy→圧縮/解凍が速い, LZOなど) 2° 小さいサイズをまとめる 128MB以上にする 3° データをパーティションで分割する 例)2023/09/13 /14 /15 Amazon Athena でのパーティション射影 https://docs.aws.amazon.com/ja_jp/athena/latest/ug/partition-projection.html
Amazon AthenaとAmazon Redshift Spectrum Amazon Athena サーバーレス スキャンしたデータ量で課金 (1TBあたり$5) クエリタイムアウト時間
:30分 Amazon Redshift Spectrum Redshift クラスタの管理が必要 クラスタの実行時間で課金 より大規模なデータや 複数テーブルのJOINなどの複雑なクエリを実行 パフォーマンスはより安定
簡単に(?) AWS Glue DataBrewでETLして、分析してみる AWS Glue DataBrew は視覚的なデータ準備ツール であり、データアナリストやデー タサイエンティストはデータをより簡単にクリーンアップおよび正規化し、分析や機
械学習 (ML) の準備をすることができます。250 を超える事前構築された変換から 選択して、コードを記述することなくデータ準備タスクを自動化 できます。異常のフィ ルタリング、標準形式へのデータの変換、無効な値の修正などのタスクを自動化で きます。データの準備が整ったら、 すぐに分析と ML プロジェクトに使用で きます。 実際に使用した分に対してのみ料金が発生します。前払いの義務はありません。 https://aws.amazon.com/jp/glue/features/databrew/
簡単に(?) AWS Glue DataBrewでETLして、分析してみる DataBrewプロジェクトを作成 DataBrew レシピにデータ加工処理を記録
簡単に(?) AWS Glue DataBrewでETLして、分析してみる 一旦、赤枠のデータ操作は無視してデータと向き合う (坐禅タイム
簡単に(?) AWS Glue DataBrewでETLして、分析してみる 列ごとに統計情報と それに対するレコメンドを確認できる
簡単に(?) AWS Glue DataBrewでETLして、分析してみる レシピはGUIで作成することを前提にしている
簡単に(?) AWS Glue DataBrewでETLして、分析してみる レシピからジョブを作成
簡単に(?) AWS Glue DataBrewでETLして、分析してみる 出力先を指定して、ジョブを実行 実行した結果をQuickSightで可視化(マニフェストファイルの作成が必要)
Glue Databrew Glue Studio データを可視化して GUIでETLジョブの作成 用意された変換処理が200種類以上 GUIとコード両方を使用可能 ETLジョブの作成、実行、実行状況の監視
用意された変換処理は 40個 2つを組み合わせて使用することも可能 Glue DataBrewでデータの傾向把握と用意された変換処理を行い Glue DataBrewで足りない部分はGlue Studioでコードを書いて実現
まとめ AWSを使うことで ・データアクセスの民主化 + ・ツールの民主化 ・分析スキルの民主化へ
ちょっと宣伝
ちょっと宣伝2