

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# ステップ 2: Amazon Keyspaces テーブルをエクスポートする AWS Glue ジョブを設定する
<a name="S3-tutorial-step2"></a>

チュートリアルの 2 番目のステップでは、[Github](https://github.com/aws-samples/amazon-keyspaces-examples/blob/main/scala/datastax-v4/aws-glue/export-to-s3/setup-export.sh) で`setup-export.sh`利用可能なスクリプトを使用して、SigV4 プラグインを使用して Amazon Keyspaces に接続する AWS Glue ジョブを作成および設定し、前のステップで作成した Amazon S3 バケットに指定されたテーブルをエクスポートします。スクリプトを使用すると、Apache Spark クラスターを設定せずに Amazon Keyspaces からデータをエクスポートできます。

**Amazon Keyspaces テーブルを Amazon S3 バケットにエクスポートする AWS Glue ジョブを作成します。**
+ このステップでは、 `export-to-s3/` ディレクトリにある`setup-export.sh`シェルスクリプトを実行して、 AWS Glue エクスポートジョブの作成と設定 CloudFormation に使用します。スクリプトは次のパラメータを使用します。

  ```
  PARENT_STACK_NAME, EXPORT_STACK_NAME, KEYSPACE_NAME, TABLE_NAME, S3_URI, FORMAT
  ```
  + `PARENT_STACK_NAME` – 前のステップで作成した CloudFormation スタックの名前。
  + `EXPORT_STACK_NAME` – AWS Glue エクスポートジョブを作成する CloudFormation スタックの名前。
  + `KEYSPACE_NAME` および `TABLE_NAME` – エクスポートするキースペースとテーブルの完全修飾名。このチュートリアルでは を使用しますが`catalog.book_awards`、これを独自の完全修飾テーブル名に置き換えることができます。
  + `S3URI` – Amazon S3 バケットのオプション URI。デフォルトは、親スタックの Amazon S3 バケットです。
  + `FORMAT` – オプションのデータ形式。デフォルト値は `parquet` です。このチュートリアルでは、データのロードと変換を容易にするために、デフォルトを使用します。

  例えば、次の コマンドを使用できます。

  ```
  setup-export.sh {{cfn-setup}} {{cfn-glue}} {{catalog}} {{book_awards}}
  ```

  ジョブが作成されたことを確認するには、次のステートメントを使用できます。

  ```
  aws glue list-jobs
  ```

  ステートメントの出力は次のようになります。

  ```
  {
      "JobNames": [
          "AmazonKeyspacesExportToS3-cfn-setup-cfn-glue"
      ]
  }
  ```

  ジョブの詳細を表示するには、次のコマンドを使用します。

  ```
  aws glue get-job --job-name {{AmazonKeyspacesExportToS3-cfn-setup-cfn-glue}}
  ```

  コマンドの出力には、ジョブのすべての詳細が表示されます。これには、ジョブの実行時に上書きできるデフォルトの引数が含まれます。

  ```
  {
      "Job": {
          "Name": "AmazonKeyspacesExportToS3-cfn-setup-cfn-glue",
          "JobMode": "SCRIPT",
          "JobRunQueuingEnabled": false,
          "Description": "export to s3",
          "Role": "iam-export-role",
          "CreatedOn": "2025-01-30T15:53:30.765000+00:00",
          "LastModifiedOn": "2025-01-30T15:53:30.765000+00:00",
          "ExecutionProperty": {
              "MaxConcurrentRuns": 1
          },
          "Command": {
              "Name": "glueetl",
              "ScriptLocation": "s3://s3-keyspaces/scripts/cfn-setup-cfn-glue-export.scala",
              "PythonVersion": "3"
          },
          "DefaultArguments": {
              "--write-shuffle-spills-to-s3": "true",
              "--S3_URI": "s3://s3-keyspaces",
              "--TempDir": "s3://s3-keyspaces/shuffle-space/export-sample/",
              "--extra-jars": "s3://s3-keyspaces/jars/spark-cassandra-connector-assembly_2.12-3.1.0.jar,s3://s3-keyspaces/jars/aws-sigv4-auth-cassandra-java-driver-plugin-4.0.9-shaded.jar,s3://s3-keyspaces/jars/spark-extension_2.12-2.8.0-3.4.jar,s3://s3-keyspaces/jars/amazon-keyspaces-helpers-1.0-SNAPSHOT.jar",
              "--class": "GlueApp",
              "--user-jars-first": "true",
              "--enable-metrics": "true",
              "--enable-spark-ui": "true",
              "--KEYSPACE_NAME": "catalog",
              "--spark-event-logs-path": "s3://s3-keyspaces/spark-logs/",
              "--enable-continuous-cloudwatch-log": "true",
              "--write-shuffle-files-to-s3": "true",
              "--FORMAT": "parquet",
              "--TABLE_NAME": "book_awards",
              "--job-language": "scala",
              "--extra-files": "s3://s3-keyspaces/conf/keyspaces-application.conf",
              "--DRIVER_CONF": "keyspaces-application.conf"
          },
          "MaxRetries": 0,
          "AllocatedCapacity": 4,
          "Timeout": 2880,
          "MaxCapacity": 4.0,
          "WorkerType": "G.2X",
          "NumberOfWorkers": 2,
          "GlueVersion": "3.0"
      }
  }
  ```

 CloudFormation スタックプロセスが失敗した場合、失敗したスタックのエラーを CloudFormation コンソールで確認できます。左側のメニューで ETL ジョブを選択すると、 AWS Glue コンソールでエクスポートジョブの詳細を確認できます。 ****

 AWS Glue エクスポートジョブの詳細を確認したら、 [ステップ 3: AWS Glue ジョブを実行して、Amazon Keyspaces テーブルを から Amazon S3 バケットにエクスポートする AWS CLI](S3-tutorial-step3.md) に進み、ジョブを実行して Amazon Keyspaces テーブルからデータをエクスポートします。