aws glueの特徴と監視機能、aws glue自体を監視する方法

awsにはさまざまな機能があります。その一つが、aws glueです。業務に欠かせないツールとなっているawsの各機能を理解すると、目的にマッチした使い方ができます。また、コストパフォーマンスを考えた運用方法もわかってくるはずです。

ここでは、aws glueについて簡単に触れ、aws glueの監視機能について記載します。さらに、aws glue自体を監視するツールや方法もご紹介します。

aws glueは、amazonの説明を借りると「サーバーレスデータ総合サービス」になります。なお、aws glueはさまざまなデータを抽出・収集・加工・変換・格納・配信・送出ができるetlツールという位置づけです。

aws glueには糊を表す「glue」という英単語が使われているように、awsのリソース同士をつなぐ役割があります。機械学習・アプリケーション開発・分析のためにデータを検出・準備・結合が容易に行なえるのがaws glueの優れている部分です。

aws glueはデータ統合に必要な機能をすべて有しているため、データ分析にかかる時間がものの数分と非常に短いのがメリットと言えるでしょう。

aws glueを活用するメリットはいろいろあります。ここではそのうち3つの点に絞ってご紹介します。メリットの一つは、大量のデータ処理に対応できることです。aws glueはサーバーレスのサービスで、awsサーバーを利用しています。

awsサーバーは大量のデータ処理が可能であるため、制限を感じることなく利用できるのがメリットです。2つめのメリットは、エンジニアの負担を軽減して導入・運用ができる点にあります。これもサーバーレスサービスであることが関係しています。

自社でサーバーを管理するオンプレミス型のサービスでは、インフラ整備をエンジニア自ら行う必要があり、運用ボリュームを絶えず監視し、業務に支障が出ないよう気を配らなければなりません。aws glueはインフラ周りの業務をawsサーバー側に任せることが可能で、アカウントを作成しさえすればすぐに運用を開始できます。

aws glueはコスト面でもオンプレミス型に勝っているといえます。使用した量に応じて課金される仕組みのaws glueであれば、ハードやソフト面で過剰に投資してコストパフォーマンスが悪くなる事態を防ぐことができます。

ただし、使用量によってはオンプレミス型と逆転現象が起きる可能性もありますし、設定ミスなどで大量のパケットが発生し、思った以上にコストがかかるケースもあるため注意が必要です。

日々発生するさまざまなデータを扱うaws glueは、監視機能も期待できます。aws glueでは監視設定やジョブの実行などをコードを設定するのではなく、guiベースで行うことが可能です。windowsの設定などでおなじみのボックスや矢印、プルダウンメニューやチェックボックスなどを使って視覚的に選択していくだけで監視の設定ができるということです。

なお、guiによりノーコードでetlジョブを作成する機能を「ビジュアルetl」と言います。aws glueはプログラミングスキルがなくても設定が可能であるため、監視を行いやすくなったと感じる方もいます。

なお、aws glueに似たサービスに「glue databrew」があります。aws glueと同様、ノーコードで使用できるサービスで、データ分析のためのクリーンアップや正規化などが行えます。glue databrewは完全ノーコードで開発・設定できるものが多いですが、aws glueはそこまでとはいきません。

プログラミングスキルがない方であっても活用でき、コードを使って設定したいエンジニアの要望にもかなうサービスがaws glueと言えるかもしれません。

メモリ監視の重要性:awsでwindowsリソースを最適化する方法

データを扱う面で重要な役割を果たすaws glueは、障害が起こると多方面に影響が及ぶサービスと言えます。aws glueは作業の自動化やスケジュール化、オンデマンドでの実行を設定できるツールですが、いったん作業を自動化してしまうとパフォーマンスを可視化することが難しくなります。

awsサービスは使用したサービスや量で料金が決まる仕組みです。そのため、aws glue自体を監視し、ハイパフォーマンスを維持できるようにする必要があります。

aws glueの監視はモニタリングツールを使用して行うのが一般的です。使用できるツールはいくつかありますが、その一つがAmazon CloudWatch Eventsです。

awsのリソース変更をリアルタイムに監視するだけでなく、特定のイベントを監視し、異常を検知した際に自動的にアクションを起こす設定もできます。別の有用な監視ツールが、Amazon CloudWatch Logsです。

同時に稼働しているさまざまなawsサービスから出されるログファイルのモニタリング・アクセス・保存ができます。そして、特定の閾値に達すると通知する機能があります。Amazon CloudWatch Logsはクラウドサービスながら、ログデータをストレージにアーカイブする仕組みが備わっています。

ログデータは、システムが正常稼働を続けているかどうかを監視するうえで有用な情報になりえます。自動的にアーカイブする機能によりデータを効率よく収集でき、問題究明などに役立つことでしょう。AWS CloudTrailも活用できます。

awsアカウントやawsの各プログラム同士のやり取りを助けるapiコール、関連するイベントの情報を取得し、あらかじめ指定した場所にログを発信する方法で監視情報をストックしています。awsを利用したユーザーやアカウント、呼び出しに使用された送信元ipアドレスや発生時刻を特定できます。

aws glueを監視した情報は出力して分析できるようになっています。主な出力情報は4つありますが、その一つがイベントです。イベント情報は「EventBridge」に出力され、失敗したジョブのステータス確認などに用いることができます。

cpu利用率やストレージの空き容量などの情報であるメトリクスは「CloudWatch Metrics」に情報が出力されます。このデータでは、ジョブの失敗数や実行時間などを確認できます。監視ログは「CloudWatch Logs」に記載されます。

ジョブが出すメッセージを分析することで問題把握に役立つはずです。Spark History Server Logsはネットワークにつながれた監視対象のログデータを表示できるwebアプリケーションですが、その情報は「S3」に出力されます。

監視対象の詳細なログを確認できるため、根本原因究明に役立ちます。

awsのcloudwatchによる監視の特徴

aws glueはサーバーレスのデータ統合サービスです。大量の情報を扱うことが得意なコストパフォーマンスに優れたサービスと言えるでしょう。aws glueには監視機能もあり、ノーコードでの設定も可能です。

aws glueはデータを活用する面でポイントとなるサービスであるため、aws glue自体の監視も必要です。

aws glueの監視には、awsが用意している監視ツールを使用するのが一般的です。

投稿日: