AWS Glue Studio とは? - AWS Glue Studio

AWS Glue Studio とは?

AWS Glue Studio は、AWS Glue での抽出、変換、ロード(ETL)ジョブの作成、実行、およびモニタリングを簡単にできるようにする新しいグラフィカルインターフェイスです。データ変換ワークフローを視覚的に作成し、AWS Glue の Apache Spark ベースのサーバーレス ETL エンジンです。ジョブの各ステップでスキーマとデータの結果を調べることができます。


            このスクリーンショットは、AWS Glue Studio のジョブ編集ページを示しています。3 つのソースノード、3 つの変換ノード、2 つの結合ノード、1 つのデータターゲットノードを含むジョブグラフが表示されます。グラフの右側には、ノードの詳細パネルに S3 データソースの [Data preview] (データプレビュー) タブが表示されます。

AWS Glue Studio は、表形式データだけでなく、半構造化データ向けにも設計されています。半構造化データは、スプレッドシート形式のデータ準備のインターフェイスではレンダリングが難しいです。半構造化データの例として、アプリケーションログ、モバイルイベント、モノのインターネット (IoT) イベントストリーム、ソーシャルフィードなどがあります。

AWS Glue Studio でジョブを作成する場合、AWS サービスに保存されているさまざまなデータソースから選択できます。データウェアハウスおよびデータレイクで、分析用にデータをすばやく準備できます。AWSGlue Studio には、ETL ワークフローをモニタリングし、意図したとおりに動作していることを検証するためのツールも用意されています。ノードごとにデータセットをプレビューできます。これにより、ジョブの各ステップでデータのサンプルを表示することで、ETL ジョブをデバッグできます。

AWS Glue Studio は、次のことを簡単にできる視覚的なインターフェイスを提供します。

  • Amazon S3、Amazon Kinesis、または JDBC ソースからデータをプルします。

  • データ結合、データサンプリング、またはデータ変換の設定を行います。

  • 変換されたデータのターゲット場所を指定します。

  • ジョブの各ポイントで、スキーマまたはデータセットのサンプルを表示します。

  • AWS Glue Studio で作成したジョブを実行、モニタリング、および管理します。

AWS Glue Studio の機能

AWS Glue Studio を使用すると、データを収集、変換、クリーンアップするジョブを作成および管理することができます。高度なユーザーは AWS Glue Studio を使用して、ジョブスクリプトをトラブルシューティングや編集ができます。

ビジュアルジョブエディタ

AWS Glue Studio でジョブを作成や編集する場合、次のアクションを実行できます。

  • 実装するノードをジョブに追加します。

    • 複数のデータソース。

    • 複数のデータターゲット

    • 以前はサポートされていなかった外部データストアのコネクタを使用するデータソースとターゲット

  • ジョブ図の各ノードのデータのサンプルを表示します。

  • 既存のノードの親ノードを変更します。

  • 次の変換を追加します。

    • データソースを結合する。

    • データから特定のフィールドを選択する。

    • フィールドをドロップする。

    • フィールド名を変更する。

    • フィールドのデータ型を変更する。

    • データから選択したフィールドを Amazon S3 バケット(spigot)の JSON ファイルに書き込みする。

    • データセットからデータをフィルタリングする。

    • データセットを 2 つのデータセットに分割する。

    • データセット内の欠損値を検索し、別の列に欠損値を指定する。

    • SQL を使用して、データのクエリと変換を行う。

    • カスタムコードを使用する。

ジョブスクリプトコードエディタ

AWS Glue Studio には、ジョブの抽出/変換/読み込み (ETL) コードを記述またはカスタマイズするためのスクリプトエディタも備えてます。AWS Glue Studio のビジュアルエディターを使用して、ETL ジョブをすばやく設計し、生成されたスクリプトを編集して、ジョブの固有のコンポーネントのコードを記述できます。

新しいジョブを作成するときに、Spark ジョブまたは Python シェルジョブ用のスクリプトを記述することを選択できます。Python または Scala を使用して、Spark ジョブのジョブ ETL スクリプトをコーディングできます。Python シェルジョブを作成する場合、ジョブ ETL スクリプトでは Python 3.6 が使用されます。

AWS Glue Studio のスクリプトエディターインターフェイスは、次の機能を提供します。

  • スクリプト内のソース、ターゲット、および変換を挿入、変更、および削除する。

  • データソース、ターゲット、および変換の引数を追加または変更する。

  • 構文とキーワードの強調表示

  • オートコンプリート機能によるローカル単語、Pythonキーワード、コードスニペットの提案。

ジョブパフォーマンスダッシュボード

AWS Glue Studio は、ETL ジョブ用の包括的な実行ダッシュボードを提供します。ダッシュボードには、特定の時間枠からのジョブ実行に関する情報が表示されます。ダッシュボードに表示される情報は、次の通りです。

  • ジョブの概要サマリー — ジョブの合計、現在の実行、完了した実行、失敗したジョブを示す高いレベルの概要です。

  • ステータスの概要 — 作業者のタイプやジョブタイプなどのジョブプロパティに基づいて、高いレベルのジョブメトリックを提供します。

  • ジョブ実行のタイムライン — 現在選択されている期間における成功、失敗、合計実行の棒グラフのサマリーです。

  • ジョブ実行の内訳 — 選択した期間のジョブ実行の詳細リスト。

データセットパーティショニングのサポート

AWS Glue Studio を使用して、パーティション化されたデータセットを効率的に処理できます。SQL 式またはユーザー定義関数を使用して、パーティション化されたデータをロード、フィルタリング、変換、保存できます。これにより、Amazon S3 の不要なデータを一覧表示したり、読み取ったりする必要がなくなります。

AWS Glue Studio はいつ使用する必要がありますか?

AWS Glue Studioを使用して、データのクリーニングと変換のための ETL ワークフローを作成し、AWS Glue で実行するためのシンプルなビジュアルインターフェイスを提供します。

AWS Glue Studio を使用すると、ETL 開発者は、大規模な半構造化データセットを移動および変換し、データレイクやデータウェアハウスにロードする繰り返し可能なプロセスを簡単に作成できます。これは、オプションでコードを使用してカスタマイズできる AWS Glue ETLワークフローを開発および管理するためのボックス&アロースタイルのビジュアルインターフェイスを提供します。AWS  Glue Studio は、従来の ETL ツールの使いやすさと、AWS Glue のビッグデータ処理エンジンのパワーと柔軟性を兼ね備えています。

AWS Glue Studio では、ビジュアルエディターでコードスニペットを表すノードを追加するなど、ETL スクリプトをカスタマイズする複数の方法が用意されています。

AWS Glue Studio を使用すると、ジョブ管理が簡単になります。AWSGlue Studio には、ジョブとジョブ実行の管理インターフェイスが用意されているので、ジョブの相互関係を明確にし、ジョブ実行の全体像を把握できます。ジョブ管理ページを使用すると、ジョブに対して一括操作を簡単に実行できます (以前は AWS Glue コンソールで行うのが困難でした)。すべてのジョブが、検索とフィルタリングが可能な単一のインターフェースで実行できます。これにより、ETL 操作と使用するリソースのビューが常に更新されます。AWS Glue Studio のリアルタイムダッシュボードを使用して、ジョブの実行をモニタリングし、意図したとおりに動作していることを検証できます。

AWS Glue Studioへのアクセス

AWS Glue Studio にアクセスするには、AWS Glue Studio の IAM アクセス許可を設定する で説明しているように、必要なアクセス許可を持つユーザーとして AWS にサインインします。次に、AWS Management Console にサインインして、https://console.aws.amazon.com/glue/ で AWS Glue コンソールを開くことができます。ナビゲーションペインの [AWS Glue Studio] リンクをクリックします。

AWS Glue Studio の料金

AWS Glue Studio を使用する場合、データのプレビューに対して課金されます。ジョブに IAM ロールを指定すると、ビジュアルエディターが Apache Spark セッションを開始し、ソースデータをサンプリングして変換を実行します。このセッションは 30 分間実行され、その後自動的に終了します。AWSは、開発エンドポイントレート(Deved-DPU 時間)で 2 つの DPU を請求します。通常、30 分セッションごとに 0.44 USD の料金が発生します。料金は、リージョンごとに異なる場合があります。30 分のセッションの終わりに、[Retry] (再試行) で [Data preview] (データのプレビュー) タブを使用するか、ビジュアルエディターのページをリロードして、同じレートで新しい 30 分セッションを開始します。

また、ジョブが使用する、または AWS Glue、データソース、データターゲットなどと相互作用する、基盤となる AWS サービスの料金も支払います。料金については、「AWS Glue の料金」を参照してください。