翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
設定 AWS Glue Jupyter と のインタラクティブセッション AWS Glue Studio ノートブック
Jupyter Magics の概要
Jupyter Magics は、セル先頭またはセル本文全体として実行できるコマンドです。マジックの先頭は、Line Magics の場合は %
、Cell Magics の場合は %%
です。%region
や %connections
などの Line Magics は、セル内の複数のマジック、または次の例のようにセル本文に含まれるコードを使用して実行できます。
%region us-east-2 %connections my_rds_connection dy_f = glue_context.create_dynamic_frame.from_catalog(database='rds_tables', table_name='sales_table')
Cell Magics はセル全体を使用する必要があり、コマンドを複数行に渡すことができます。%%sql
の例を以下に示します。
%%sql select * from rds_tables.sales_table
でサポートされているマジック AWS Glue Jupyter のインタラクティブセッション
以下は、 で使用できるマジックです。AWS Glue Jupyter ノートブックのインタラクティブセッション。
Sessions Magics
名前 | 型 | 説明 |
---|---|---|
%help
|
該当なし | すべてのマジックコマンドのために説明と入力タイプのリストを返します。 |
%profile |
文字列 | 認証情報プロバイダー AWS として使用する設定でプロファイルを指定します。 |
%region |
文字列 |
セッションを初期化 AWS リージョンする を指定します。 例: |
%idle_timeout |
Int |
セルが実行されてからセッションがタイムアウトするまでの非アクティブ時間 (分)。Spark ETLセッションのデフォルトのアイドルタイムアウト値は、デフォルトのタイムアウトである 2880 分 (48 時間) です。他のセッションタイプについては、該当するセッションタイプのマニュアルを参照してください。 例: |
%session_id |
該当なし | 実行中のセッションのセッション ID をリターンします。 |
%session_id_prefix |
文字列 |
[session_id_prefix]-[session_id] IDs の形式で、すべてのセッションに先行する文字列を定義します。 セッション ID が指定されていない場合、ランダムが生成されUUIDます。 AWS Glue Studioで Jupyter Notebook を実行する場合に、このマジックはサポートされていません。 例: |
%status |
現在の のステータスを返します。AWS Glue セッションの期間、設定、ユーザー/ロールの実行など。 | |
%stop_session
| 現在のセッションを停止します。 | |
%list_sessions |
名前と ID で、現在実行中のすべてのセッションをリストします。 | |
%session_type |
文字列 |
セッションタイプをストリーミング、、ETLまたは Ray のいずれかに設定します。 例: |
%glue_version |
文字列 |
のバージョン AWS Glue このセッションで使用される。 例: |
ジョブタイプを選択するためのマジック
名前 | 型 | 説明 |
---|---|---|
%streaming |
文字列 | セッションタイプを に変更します AWS Glue ストリーミング。 |
%etl |
文字列 | セッションタイプを に変更します AWS Glue ETL. |
%glue_ray | 文字列 | セッションタイプを AWS Glue for Ray に変更します。AWS Glue Ray インタラクティブセッション でサポートされている Magics を参照してください。 |
AWS Glue for Spark 設定マジック
%%configure
マジックは、セッションのすべての構成パラメータで構成される JSON 形式のディクショナリです。各パラメータは、ここで指定することも、個々のマジックを使って指定することもできます。
名前 | 型 | 説明 |
---|---|---|
%%configure
|
辞書 |
セッションのすべての設定パラメータで構成される JSON形式のディクショナリを指定します。各パラメータは、ここで指定することも、個々のマジックを使って指定することもできます。 の使用方法に関するパラメータと例のリストについては |
%iam_role |
文字列 |
セッションARNを実行するIAMロールを指定します。~/.aws/configure からのデフォルト設定。 例: |
%number_of_workers |
Int |
ジョブの実行時に割り当てられる、定義された worker_type のワーカーの数。 例: |
%additional_python_modules |
リスト |
クラスターに含める追加の Python モジュールのカンマ区切りリスト (PyPI または S3 からでも可)。 例えば、 |
%%tags |
文字列 |
セッションにタグを追加します。タグを中かっこ { } で囲んで指定します。各タグ名のペアは二重引用符 (" ") で囲まれ、カンマ (,) で区切られます。
|
%%assume_role |
辞書 |
json 形式のディクショナリまたはIAMロールARN文字列を指定して、クロスアカウントアクセス用のセッションを作成します。 を使用した例ARN:
認証情報の例:
|
%%configure セルマジック引数
%%configure
マジックは、セッションのすべての構成パラメータで構成される JSON 形式のディクショナリです。各パラメータは、ここで指定することも、個々のマジックを使って指定することもできます。%%configure
セルマジックがサポートする引数の例については、以下を参照してください。ジョブに指定された実行引数に --
プレフィックスを使用します。例:
%%configure { "--user-jars-first": "true", "--enable-glue-datacatalog": "false" }
ジョブパラメータの詳細については、「ジョブのパラメータ」を参照してください。
セッション設定
パラメータ | Type | 説明 |
---|---|---|
max_retries |
Int | 失敗した場合にこのジョブを再試行する最大回数。
|
max_concurrent_runs |
Int | ジョブで許可される同時実行の最大数。 例:
|
セッションパラメータ
パラメータ | Type | 説明 |
---|---|---|
--enable-spark-ui |
ブール値 | Spark UI によるモニタリングとデバッグを有効にする AWS Glue ETL ジョブ。
|
--spark-event-logs-path |
文字列 | Amazon S3 パスを指定します。Spark UI のモニタリング機能を使用する場合。 例:
|
--script_location |
文字列 | ジョブを実行するスクリプトへの S3 パスを指定します。 例:
|
--SECURITY_CONFIGURATION |
文字列 | AWS Glue セキュリティ設定の名前 例:
|
--job-language |
文字列 | スクリプトプログラミング言語。'scala' または 'python' の値を使用できます。デフォルトは 'python' です。 例:
|
--class |
文字列 | Scala スクリプトのエントリポイントとなる Scala クラス。デフォルトは null です。 例:
|
--user-jars-first |
ブール値 | クラスパス内のお客様の追加のJARファイルを優先します。デフォルトは null です。 例:
|
--use-postgres-driver |
ブール値 | JDBC ドライバーとの競合を避けるため、クラスパスで Postgres ドライバーを優先します Amazon Redshift JDBC。デフォルトは null です。 例:
|
--extra-files |
List(string) | Amazon S3 は、AWS Glue は、スクリプトを実行する前にスクリプトの作業ディレクトリにコピーします。 例:
|
--job-bookmark-option |
文字列 | ジョブブックマークの動作を制御します。'job-bookmark-enable'、'job-bookmark-disable'、または 'job-bookmark-pause' の値を受け入れます。デフォルトは 'job-bookmark-disable' です。 例:
|
--TempDir |
文字列 | ジョブの一時ディレクトリとして使用できるバケットへの Amazon S3 のパスを指定します。デフォルトは null です。 例:
|
--enable-s3-parquet-optimized-committer |
ブール値 | Parquet データを EMRFS Amazon S3-optimizedコミッターを有効にします。 Amazon S3 デフォルトは 'true' です。 例:
|
--enable-rename-algorithm-v2 |
ブール値 | 名前EMRFS変更アルゴリズムのバージョンをバージョン 2 に設定します。デフォルトは 'true' です。 例:
|
--enable-glue-datacatalog |
ブール値 | を使用できます。AWS Glue Apache Spark Hive メタストアとしての Data Catalog。 例:
|
--enable-metrics |
ブール値 | ジョブの実行のジョブプロファイリングに関するメトリクスの収集を有効にします。デフォルトは 'false' です。 例:
|
--enable-continuous-cloudwatch-log |
ブール値 | のリアルタイム連続ログ記録を有効にする AWS Glue ジョブ。デフォルトは 'false' です。 例:
|
--enable-continuous-log-filter |
ブール値 | 連続ログ記録が有効であるジョブを作成または編集するときに、標準フィルタまたはフィルタなしを指定します。デフォルトは 'true' です。 例:
|
--continuous-log-stream-prefix |
文字列 | 連続 Amazon CloudWatch ログ記録が有効になっているジョブのカスタムログストリームプレフィックスを指定します。デフォルトは null です。 例:
|
--continuous-log-conversionPattern |
文字列 | 連続ログ記録を有効にしたジョブのカスタム変換ログパターンを指定します。デフォルトは null です。 例:
|
--conf |
文字列 | Spark の設定パラメータを制御します。高度なユースケース向けです。各パラメータの前に --conf を使用してください。例:
|
timeout | Int | Spark セッションが終了する前にステートメントの完了を待機する最大時間を決定します。
|
自動スケーリング | ブール値 | 自動スケーリングを使用するかどうかを決定します。
|
Spark ジョブ (ETL & ストリーミング) マジック
名前 | 型 | 説明 |
---|---|---|
%worker_type |
文字列 | Standard、G.1X、または G.2X を指定します。number_of_workers も設定する必要があります。デフォルトの worker_type は G.1X です。 |
%connections |
リスト |
セッションで使用する接続のカンマ区切りリストを指定します。 例:
|
%extra_py_files |
リスト | Amazon S3 からの追加の Python ファイルのカンマ区切りリスト。 |
%extra_jars |
リスト | クラスターに含める追加の jar のカンマ区切りリスト |
%spark_conf |
文字列 | セッション用のカスタム Spark 設定を指定します。例えば、%spark_conf spark.serializer=org.apache.spark.serializer.KryoSerializer と指定します。 |
Ray ジョブのマジック
名前 | 型 | 説明 |
---|---|---|
%min_workers |
Int | Ray ジョブに割り当てられるワーカーの最小数。デフォルト: 1。 例: |
%object_memory_head |
Int | ウォームスタート後のインスタンスヘッドノードの空きメモリの割合。最小値: 0。最大値: 100。 例: |
%object_memory_worker | Int | ウォームスタート後のインスタンスワーカーノードの空きメモリの割合。最小値: 0。最大値: 100。 例: |
Action Magics
名前 | 型 | 説明 |
---|---|---|
%%sql |
文字列 |
SQL コードを実行します。最初の 例: |
%matplot |
Matplotlib Figure |
Matplotlib ライブラリを使用してデータを可視化します。 例:
|
%plotly |
Plotly Figure |
Plotly ライブラリを使用してデータを可視化します。 例:
|
ネーミングセッション
AWS Glue インタラクティブセッションは AWS リソースであり、名前が必要です。名前はセッションごとに一意でなければならず、IAM管理者によって制限される場合があります。詳細については、「を使用したインタラクティブセッション IAM」を参照してください。Jupyter カーネルは固有のセッション名を自動的に生成します。ただし、セッション名は、次の 2 つの方法で手動で名前を付けることができます。
-
にある AWS Command Line Interface 設定ファイルを使用します
~.aws/config
。で AWS Config を設定する AWS Command Line Interfaceを参照してください。 -
%session_id_prefix
マジックを使用する。「 でサポートされているマジック AWS Glue Jupyter のインタラクティブセッション 」を参照してください。
セッション名は、次のように生成されます。
プレフィックスと session_id を指定すると、セッション名は {prefix}-{UUID} になります。
何も指定しない場合: セッション名は {UUID} になります。
セッション名のプレフィックスを付けると、セッションを AWS CLI または コンソールに一覧表示するときにセッションを認識できます。
インタラクティブセッションのIAMロールの指定
で使用する AWS Identity and Access Management (IAM) ロールを指定する必要があります AWS Glue ETL インタラクティブセッションで実行するコード。
ロールには、実行に必要なアクセスIAM許可と同じアクセス許可が必要です AWS Glue ジョブ。「 のIAMロールを作成する」を参照してください。AWS Glue のロールの作成の詳細については、「」を参照してください。AWS Glue ジョブとインタラクティブセッション。
IAM ロールは、次の 2 つの方法で指定できます。
-
(
~.aws/config
推奨) にある AWS Command Line Interface 設定ファイルを使用します。詳細については、「~/.aws/config でのセッションの設定」を参照してください。注記
%profile
マジックを使用すると、そのプロファイルのglue_iam_role
の設定が優先されます。 -
%iam_role マジックを使用する。(詳しくは、「 でサポートされているマジック AWS Glue Jupyter のインタラクティブセッション 」を参照してください。)
名前付きプロファイルを使用したセッションの設定
AWS Glue インタラクティブセッションは、 AWS Command Line Interface または boto3 と同じ認証情報を使用し、インタラクティブセッションは、 ~/.aws/config
(Linux および MacOS ) または %USERPROFILE%\.aws\config
(Windows) にある のような AWS CLI 名前付きプロファイルを尊重して使用します。詳細については、「名前を指定されたプロファイルを使用する」を参照してください。
インタラクティブセッションは、 を許可することで、名前付きプロファイルを活用します。AWS Glue プロファイルで指定するサービスロールとセッション ID プレフィックス。プロファイルロールを設定するには、以下に示すように、名前付きプロファイルに iam_role
キーまたは session_id_prefix
、あるいはその両方の行を追加します。session_id_prefix
は引用符を必要としません。例えば、
session_id_prefix
を追加する場合は、session_id_prefix=myprefix
の値を入力します。
[default] region=us-east-1 aws_access_key_id=AKIAIOSFODNN7EXAMPLE aws_secret_access_key=wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRole> session_id_prefix=<prefix_for_session_names> [user1] region=eu-west-1 aws_access_key_id=AKIAI44QH8DHBEXAMPLE aws_secret_access_key=je7MtGbClwBF/2Zp9Utk/h3yCo8nvbEXAMPLEKEY glue_iam_role=arn:aws:iam::<AccountID>:role/<GlueServiceRoleUser1> session_id_prefix=<prefix_for_session_names_for_user1>
認証情報を生成するカスタムメソッドがある場合は、~/.aws/config
ファイルの credential_process
パラメーターを使用するようにプロファイルを設定することもできます。例:
[profile developer] region=us-east-1 credential_process = "/Users/Dave/generate_my_credentials.sh" --username helen
credential_process
パラメータを使用した認証情報の調達の詳細については、「外部プロセスを使用した認証情報の調達」を参照してください。
使用しているプロファイルにリージョンまたは iam_role
が設定されていない場合は、最初に実行するセルの %region
と %iam_role
マジックを使用して設定する必要があります。