AWS Glue
GlueのPython Shellでloggingモジュールを利用してログを取得を考えてた時のメモです。 ログ出力先 loggingモジュールのデフォルトの出力先 ログ設定パターン デフォルト 全て /aws-glue/python-jobs/error に出力するパターン ストリームを使い分けるパター…
題名の件、Glueで外部ライブラリをインポートしたので、その方法を書いておきます。 外部ライブラリ 参照元 アップロードパッケージ作成 GlueジョブにPythonの外部パッケージ設定 GlueのPySparkコードから実行 出力結果 本当はこんなことしたかったわけでは…
AWS Summitで発表されたようですが、Glueの標準機能でワークフローが組めるようになったと聞いたので早速試してみました。 Glueでワークフローを組むのは大変だった やってみる CrawlerとJobを用意 ワークフロー作成 トリガー作成 ワークフロー作成 ワークフ…
金額計算などで利用する固定小数点数 decimal をGlueで扱う場合の注意点を書きます。 GlueのGUIでそのまま設定すると、decimalにはなるのですが、 decimal(10,2) という型に固定されてしまうといった落とし穴もありますので、そのあたりも。 例として以下のC…
やりたいこと 準備 テストデータ生成 S3にアップロード ETLジョブ 部分更新のケースを試してみる 課題① ジョブブックマーク有効化時の再実行 課題① の対策 課題 ② DynamicFrameはAppendしかできない 課題②への対策 課題②への対策1 直接パーティションだけを…
Hiveのメタデータ管理ができるApache Atlasですが、こちらのブログを参考にGlueのカタログ情報もインポートしてみました。 aws.amazon.com EMRのHiveメタストアとしてGlueを使うための設定を準備 EMRクラスタの起動 EMRクラスタへ接続 Glue接続確認 AtlasへH…
Glueの開発にSageMaker使っていたのですが、いくつか自分の使い方では問題があったので自分で立ててみたら簡単でした。 SageMakerはネットワークが特徴的 構成 JupyterとSparkMagicインストール ① Anacondaインストール ② (Anaconda Prompt) widgetsnbextens…
DynamicFrameを使った開発をしていたら、大した処理していないのに、想像以上に時間がかかるなと思って調べていたら、JSONの書き出しが時間かかっていました。 タイトルの通り、JSONやCSVでのS3出力と比較してParquetでの出力は凄い早いというお話です。処理…
掲題の件、JSON等にある日付フォーマットの文字列から、Timestamp形式に変換したかったのですが、どの書式だと変換できるのか良くわかってなかったので、実際に実行してみました。 初期化 日付文字列 Glueでマッピング 結果 UnixTimeの変換 Glue Spark 初期…
掲題のエラーに当たってサポートに対応教えてもらったのでメモ。 事象 原因 パーティションの例 テーブルのスキーマ パーティション毎のスキーマ 対応 参考 事象 CSVをGlueを使ってパーティション分割して、AthenaでプレビューしてみたらHIVE_PARTITION_SCHE…
先月のre:Invent 2018で発表になったLake Formation。現地で聞いていて即効プレビュー申し込んであるのですが まだ使えていません。 そんな時に一緒に仕事をしている方から、こんなモノがあることを聞きました。 aws.amazon.com こちらから引用したアーキテ…
AWS re:Invent 2018に参加するためラスベガスに来ています。 昨日はこちらのセッションを聞きました。 AWS re:Invent 2018: Building Serverless Analytics Pipelines with AWS Glue (ANT308) そこで、静かに(?)AWS Glueの新機能の発表がありました。 セ…
AWSのre:Invent 2018に参加するためラスベガスに来ています。 題名の通りGlueのCrawlerとETLジョブでDynamoDBがサポートされましたので早速動かしてみます。 セッション 発表されたセッションとスライドはこちらです。他にもあったのですが、今すぐ動くDynam…
最近Glueを使っていて、その過程でAWSサポートに問い合わせしたり、仕様を確認した内容をまとめておきます。 Tableのプロパティ(Parameters)の制限 SageMakerでGlueのライブラリ読み込むとエラーが出る S3からS3へのコピーでVPCエンドポイント使いたい 接…
Grokパターン作成 事前調査 ALBのアクセスログの項目 ビルドインのGrokのパターン logstashのELBのGrokパターン 作成 分類子(Classifier登録) Crawler カタログデータベース確認 テーブル確認 Athenaで検索 ETLジョブ Glueからパーティショニングして書き込…
AWS GlueのNotebook起動した際に Glue Examples ついている「Join and Relationalize Data in S3」のノートブックを動かすための、前準備のメモです。 Join and Relationalize Data in S3 This sample ETL script shows you how to use AWS Glue to load, tr…