石川覚(127)26この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。Glueの中で最も大きなアップデートです。ETLジョブのデバッグとプロファイリングを可能にするメトリックを提供するようになりました。DriverとExecutorのメモリー使用量とCPU負荷、Executor間のデータのシャッフルなどのランタイム・メトリクスを容易に追跡できるようになりましたので早速試してみました。Profilerを用いてETLジョブの生データを収集して、CloudWatchに保存されているほぼリアルタイムのメトリクスにすることができます。これらの統計情報はCloudWatchに保持され、集約されているため、履歴情報にアクセスしてアプリケーションのパフォーマンスをより正確に把握できます。GlueでETLジョブを実行すると、以下で説明するメトリクスがCloudWatchに送信されます。CLIで表示できます。以下の条件で検証用のETLジョブを作成しました。profilingはデフォルトDisableなのでEnableに変更することをお忘れないようご注意ください。parameters(optional)は以下のとおりです。ETLジョブのソースコードは以下のとおりです。Glueコンソールは、ジョブを実行すると5分ごとにメトリクスがグラフに反映されます。参照するには、ETLジョブの一覧から参照したいジョブ名(Name)を選択した後、下の「メトリクス」タブを選択します。Executorsの2つのグラフが参照できます。metrics]ボタンを押します。Executorsのグラフが参照できます。このグラフは、参照したい時間帯のグラフ部分を対角線上に矩形選択することで拡大することができます。サンプルのETLジョブでは、2つの入力ファイルに対して、17のExecutorが起動され、リソースが有効に利用されていないことを容易に把握することができます。Glueは30秒ごとにMetricをCloudWatchに保存します。Dashboardsでは、30秒ごとにMetricを参照できます。Dashboardsに遷移します。Movementというグラフが、glue.ALL.s3.filesystem.read_bytesとglue.ALL.s3.filesystem.write_bytesの2つの情報であることも確認できます。Dashboardsで参照したメトリクスに対して、条件やしきい値を設定することでメトリクスを監視できます。Dashboardが1分に1回報告します。Metricsを御覧ください。glue.driver.aggregate.bytesReadglue.driver.aggregate.elapsedTimeglue.driver.aggregate.numCompletedStagesglue.driver.aggregate.numCompletedTasksglue.driver.aggregate.numFailedTasksglue.driver.aggregate.numKilledTasksglue.driver.aggregate.recordsReadglue.driver.aggregate.shuffleBytesWrittenglue.driver.aggregate.shuffleLocalBytesReadglue.driver.BlockManager.disk.diskSpaceUsed_MBglue.driver.ExecutorAllocationManager.executors.numberAllExecutorsglue.driver.ExecutorAllocationManager.executors.numberMaxNeededExecutorsglue.driver.jvm.heap.usageglue.executorId.jvm.heap.usageglue.ALL.jvm.heap.usageglue.driver.jvm.heap.usedglue.executorId.jvm.heap.usedglue.ALL.jvm.heap.usedglue.driver.s3.filesystem.read_bytesglue.executorId.s3.filesystem.read_bytesglue.ALL.s3.filesystem.read_bytesglue.driver.s3.filesystem.write_bytesglue.executorId.s3.filesystem.write_bytesglue.ALL.s3.filesystem.write_bytesglue.driver.system.cpuSystemLoadglue.executorId.system.cpuSystemLoadglue.ALL.system.cpuSystemLoad最後にこれまで、ETLジョブのパフォーマンスの低下、メモリ不足が発生して処理が中断するといった問題の調査はCloudWatchLogsのログの参照のみでした。従来は、特定のExecutorがホットな状態なのか、そしてボトルネックの要因(CPU、メモリ、IO)が何かを把握するのはほぼ不可能でした。メトリクスは、読み​​書きされたバイト数、DriverとExecutorのメモリー使用量とCPU負荷、Executor間のデータのシャッフルなどのランタイム・メトリクスを容易に追跡できるようになりました。これらのメトリクスは、コードのデバッグ、データの問題の特定、CPUキャパシティの計画に役立ちます。CloudWatchでアラームを設定することもできます。今日からこのメトリクスを有効(Enable)にして、クラスタのアクティビティを計測・監視にお役立てください。1,270,859電気メーカ系SIerのSE、IP電話開発会社の製品企画・開発を経てJoin。Linux、Java、MySQLを中心にウェブ、スマホ、基幹サーバーと何でも屋。#cmdevio新型コロナウイルスの感染拡大を受け、本イベントを延期させていただくことになりました(開催時期未定)。お申し込みいただいた皆様には大変申し訳ございませんが、何卒ご理解いただけますようよろしくお願いいたします。AWSについてライトに色んな情報交換をしましょう。2020年03月11日3【3/11(水)リモート】クラスメソッドの会社説明会を開催しますクラスメソッドでは、AWS・AI・ビッグデータ・モバイルなどの技術職や営業のメンバーとして一緒にお仕事をする仲間を大募集しています。kaji896AWSを全く知らない状態で入社して5年が経過、中途採用のAWSエンジニアの育成リーダーを1年間担当しています。そんな中で教える機会が増えました。自分がAWSに関するスキルアップために実践したことについてまとめてみました。どなたかのお役に立てれれば光栄です。濱田孝治437re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。CAFEの他、NTTデータとセブンイレブンの取り組みや、サインポスト、Zippinなどの各社と流通・小売業との連携を業界マップに作成してみました。泰雨132皆さん、こんにちは。コンサル部のテウです。2020年もあっという間に2ヶ月が経ちました。今年こそ機械学習に入門しようぜ!!って決心された方もいらっしゃると思います。入門できる方法をご紹介させて頂きたいと思います。本記事の手順通り、ランチタイム等の時間を活かして、手軽に入門してみてください。kaji896AWSを全く知らない状態で入社して5年が経過、中途採用のAWSエンジニアの育成リーダーを1年間担当しています。そんな中で教える機会が増えました。自分がAWSに関するスキルアップために実践したことについてまとめてみました。どなたかのお役に立てれれば光栄です。濱田孝治437re:Invnetの動画検索でもめちゃくちゃ便利ですが、その他ブログやホワイトペーパーやGitHubも横断検索できるので、是非一度使ってみてください。夏目祐樹414こんにちは、CX事業本部の夏目です。MacのタッチバーのタッチIDが非常に便利なのですが、Terminalでsudoを叩かないと行けないときに使えたらなぁと思ったので、情報を共有します。臼田佳祐296ワークフロー自動化OSSのn8nをAWS環境で建てて検証してみました。非常に期待できるサービスです。Fargateの勉強をしています。使ってみたい方は参考にしてください。クラスメソッド株式会社が運営するAWS・iOS・HTML5に関する技術情報サイトです。