この記事は更新をやめました。見てくださったみなさんありがとうございました!!!(もしかしたら再開するかもですが)。20210324
Glueのすぐ使えそうな操作
1.Glueの使い方的な①(GUIでジョブ実行)
GUIだけでcsv->parquet変換処理してAthenaで見たい時
2.Glueの使い方的な②(csvデータをパーティション分割したparquetに変換)
元データにタイムスタンプが入ってるデータを、パーティションによるディレクトリ構成にしてデータ配置とフォーマットなど変換したい時
3.Glueの使い方的な③(CLIでジョブ作成)
CLIでジョブ作成などしたい時
4.Glueの使い方的な④(ブックマーク)
処理したデータを2回目は無視させたい時。
それがGlueのブックマークと言う機能。
5.Glueの使い方的な⑤(パーティション分割してるcsvデータをパーティション分割したparquetに変換)
パーティション分割して配置されてるcsvを同じパーティション分割してparquetにしたい時
6.Glueの使い方的な⑥(監視モニタリング)
Glueの監視したい時
7.Glueの使い方的な⑦(StepFunctionsでジョブフロー)
Glueでジョブフロー作りたい時。
Glueクローラー実行して処理が終わったらGlueジョブを実行するフローを作る
8.Glueの使い方的な⑧(依存jarを使う)
GlueジョブやJupyterで依存jarを使いたい時
9.Glueの使い方的な⑨(Data Catalogのバックアップリストア)
DataCatalogのバックアップ/リストアしたい時
10.Glueの使い方的な⑩(カスタムClassifierの手始め)
クローラーで独自なログフォーマットを認識させたい時
11.Glueの使い方的な⑪(DynamicFrameでpartitionByが使えるようになった)
DynamicFrameでもpartitionByしたい時
12.Glueの使い方的な⑫(DynamicFrameのPre-Filtering機能)
S3から必要なパーティションだけをロードしたい時
13.Glueの使い方的な⑬(Glueを試してみる!チュートリアル集)
Glueの公式チュートリアルをやりたい時
14.Glueの使い方的な⑭(クローラー(Crawler)のSchemaChangePolicyその1)
Glueクローラー実行時、スキーマに変更があった場合の動作のオプション設定1
15.Glueの使い方的な⑮(クローラー(Crawler)のConfiguration optionその2)
Glueクローラー実行時、スキーマに変更があった場合の動作のオプション設定2
16.Glueの使い方的な⑯(出力ファイル数をまとめる)
出力ファイルがいっぱいできちゃう時
17.Glueの使い方的な⑰(DynamoDBをデータソースにする)
DynamoDBで集計するなって言われた時
18.Glueの使い方的な⑱(ETL ジョブの CloudWatch メトリクス確認)
Glueで取得できるCloudWatchメトリクスの見方
19.Glueの使い方的な⑲(ユーザー設定)
ジョブやクローラー作る際に毎回IAMロール選んだり一時ディレクトリ選んだりがめんどい時
Glueの"ユーザー設定"でデフォルト値を設定できる
20.Glueの使い方的な⑳(クローラーオプション_Grouping behavior for S3 data)
クローラーで判別するスキーマを、しっかり区別したい時or一緒にしちゃいたい時
21.Glueの使い方的な㉑(セキュリティ設定 & データカタログ暗号化)
データの暗号化をしたい時
22.Glueの使い方的な㉒(csvデータをパーティション分割したparquetに変換_2)
元データに"2018/08/26 12:00:01"みたいなタイムスタンプが入ってるデータを、タイムスタンプでパーティションによるディレクトリ構成にしてデータ配置とフォーマットなど変換
23.Glueの使い方的な㉓(DevEndpointとNotebookの使い方_2018夏)
Glueで開発する時。ノートブックを使いたい時
zeppelin編
24.Glueの使い方的な㉔(S3からRedshiftにロード_準備編)
S3からRedshiftに変換してロードしたい時
25.Glueの使い方的な㉕(S3からRedshiftにロード_実行編)
S3からRedshiftに変換してロードしたい時
26.Glueの使い方的な㉖(S3のオブジェクトのリストを取る)
S3のオブジェクトのリストを取得したい時
27.Glueの使い方的な㉗(Jupyter NotebookをGlueの開発で使う)
Glueで開発する時。ノートブックを使いたい時。
jupyter編
28.Glueの使い方的な㉘(DataFrameでデータ読み込み)
DataFrameを使いたい時
29.Glueの使い方的な㉙(セキュリティグループの自己参照ルール)
自己参照ルールが意味わからない時
30.Glueの使い方的な㉚(Step FunctionsでAWSサービスのAPI使ったジョブフロー(今後も更新))
ジョブフローを作りたい時2
31.Glueの使い方的な㉛(GlueやAthenaで見えるテーブルを制限する)
Glue Data Catalogのテーブルを他のユーザーには見せたくない時
32.Glueの使い方的な㉜(Python Shellを使う)
普通のPythonをGlueで動かしたい時
33.Glueの使い方的な㉝(別のAWSアカウントのS3バケットに出力時の権限のアレ)
別のアカウントのS3に出力したデータが誰もさわれなくて困った時
34.Glueの使い方的な㉞(環境変数を使う)
環境変数使いたい時
35.Glueの使い方的な㉟(RDBにwhereでロードするデータを絞る)
RDBからロードする時メモリエラーする時。
whereする
36.Glueの使い方的な㊱(RDBからの読み取りを並列化する)
RDBからロードする時メモリエラーする時
hashfield、hashexpression、または hashpartitionsなどのオプションで緩和
37.Glueの使い方的な㊲(GlueDataCatalogのテーブルにSpark SQLクエリを直接実行)
Spark SQL使いたい時
38.Glueの使い方的な㊳(WorkerTypeとは)
Executorのメモリエラーする時。Executorのメモリ量変えたい時。
Spark Executorのメモリ調整
39.Glueの使い方的な㊴(RDSからAmazon Elasticsearch Serviceにロード)
RDBからElasticsearchに書き込みたい時
40.Glueの使い方的な㊵(Workflowsでジョブフローの可視化)
クローラーとジョブとのジョブフローをビジュアライズして作りたい時
41.Glueの使い方的な㊶(Workflows/ジョブ間でパラメータを受け渡す)
ワークフローで環境変数を受け渡ししたいとき
43.Glueの使い方的な㊸(DynamicFrameのMerge)
44.Glueの使い方的な㊹(S3データセットの操作 Transition/Purge)
45.Glueの使い方的な㊺(Python shellでPythonから他の.pyを読み込む)
47.GlueではないけどManaged AirflowのMWAAでGlueのワークフロー作ってみた
Lake Formationの使い方まとめ
TIPS
101.S3 Selectでparquetファイルを開く(parquet-tools入れるより楽かも)
104.Glueのアップデート履歴
105.Glue python shell アイデア集
ネタやアイデアを書いたら是非教えてください。リンクはらせてくださいmm
## 外部
GlueでApache Sparkジョブをスケーリングし、データをパーティション分割するためのベストプラクティス
多くの小さなファイルをまとめて読み込むgroupFiles/groupSize指定でパフォーマンスを改善する_クラメソ
AWS Glue を使用して非ネイティブ JDBC データソースに対して ETL ジョブを実行する
GlueでApache Sparkジョブをスケーリングし、データをパーティション分割するためのベストプラクティス
入力データを絞り込む_cloudpack
CloudPackさんの、Glue入力データを絞り込む方法
Glueのパフォーマンス・チューニング re:Invent2018資料
パフォーマンス・チューニングのポイントをまとめた良資料。英語です。
Sansanさんの節約のための工夫。実装コストもかかるので苦労もともないそう
Glueジョブの中で並列処理を行うちょっと変わった使いたかですが、Sansanさんらしくうまく使いこなしている
GMOさんのAdventCalender Sparkのrepartitionによるチューニング
Continuous LoggingでDriverとExecutorのログを分けた出力とリアルタイムロギング
Glueの誕生日
2017/08/15
https://aws.amazon.com/jp/blogs/news/launch-aws-glue-now-generally-available/