View a markdown version of this page

步驟 1:引導基礎設施和 AWS Glue 任務 - Amazon Keyspaces (適用於 Apache Cassandra)

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

步驟 1:引導基礎設施和 AWS Glue 任務

在此步驟中,您可以使用 keyspaces-bulk-cli CLI 來建立和設定使用 AWS 將 Amazon Keyspaces 資料表自動資料匯出至 Amazon S3 儲存貯體所需的所有資源 AWS Glue。bootstrap 命令會在單一步驟中執行所有設定任務。

bootstrap 命令會自動執行下列任務。

  1. 使用 建立 Amazon S3 儲存貯體和 IAM 服務角色 CloudFormation。

  2. 下載 Apache Spark Cassandra 連接器、SigV4 身分驗證外掛程式和 Apache Spark 延伸模組。

  3. 使用 Maven 下載並建置 Keyspaces 重試政策協助程式。

  4. 將所有 JAR 檔案和keyspaces-application.conf組態檔案上傳至 Amazon S3 儲存貯體。

  5. 部署三個 AWS Glue 任務:匯出 (將資料表匯出至 Amazon S3)、匯入 (將資料從 Amazon S3 匯入資料表) 和計數 (資料表中的計數列)。

  6. 將堆疊組態儲存至本機.keyspaces-bulk-cli.json檔案,以供後續命令使用。

引導基礎設施和 AWS Glue 任務
  1. 將檔案從 GitHub 上的 aws-glue 儲存庫複製到本機電腦。

    $ git clone https://github.com/aws-samples/amazon-keyspaces-examples.git $ cd amazon-keyspaces-examples/scala/datastax-v4/aws-glue
  2. 執行 bootstrap 命令。下列範例使用預設堆疊名稱,aksglue並將 金鑰空間和資料表指定為已部署任務的預設值。您可以在執行 export、 import或 等個別命令時覆寫這些值count。

    $ ./keyspaces-bulk-cli bootstrap --stack aksglue --keyspace catalog --table book_awards

    下表說明您可以傳遞以自訂引導的選用參數。

    選項 預設 說明
    --stack aksglue CloudFormation 堆疊名稱字首
    --bucket 從堆疊和帳戶自動產生 用於成品的 Amazon S3 儲存貯體
    --role-name 從堆疊自動產生 IAM 服務角色名稱
    --keyspace mykeyspace 部署任務的預設金鑰空間
    --table mytable 部署任務的預設資料表
    --s3-uri s3://{bucket}/export 匯出資料的預設 Amazon S3 路徑
    --format parquet 預設資料格式
    --region 從 AWS 組態 AWS 區域
    --profile 從 AWS 組態 AWS 具名設定檔

    若要確認引導建立的 Amazon S3 儲存貯體是否存在,您可以使用下列 AWS CLI 命令。以 AWS 您的帳戶 ID 取代 YOURACCOUNTID。

    $ aws s3 ls s3://amazon-keyspaces-bulk-cli-aksglue-YOURACCOUNTID

    命令的輸出看起來類似以下內容:

    PRE conf/ PRE jars/ PRE scripts/

    若要確認 AWS Glue 匯出任務已部署,您可以使用下列命令。

    $ aws glue list-jobs

    輸出會列出已部署的任務:

    { "JobNames": [ "AmazonKeyspacesExportToS3-aksglue", "AmazonKeyspacesImportFromS3-aksglue", "AmazonKeyspacesCount-aksglue" ] }

如果 CloudFormation 堆疊程序失敗,您可以在 CloudFormation 主控台中檢閱有關失敗堆疊的詳細錯誤資訊。若要重試,請使用 刪除失敗的堆疊aws cloudformation delete-stack --stack-name aksglue、修正基礎問題,然後再次執行引導命令。bootstrap 命令是等冪的,並略過已存在的資源。

引導完成並建立所有資源後,請繼續 步驟 2:執行匯出任務。