Amazon Athena AWS CMDB 連接器 - Amazon Athena

Amazon Athena AWS CMDB 連接器

Amazon Athena AWS CMDB 連接器讓 Athena 能夠與各種 AWS 服務通訊,以便您使用 SQL 來查詢這些服務。

此連接器可以作為聯合目錄向 Glue Data Catalog 註冊。它可在目錄、資料庫、資料表、資料欄、資料列和標籤層級支援 Lake Formation 中定義的資料存取控制。此連接器使用 Glue 連線來集中 Glue 中的組態屬性。

必要條件

參數

使用本節中的參數來設定 AWS CMDB 連接器。

我們建議您使用 Glue 連線物件來設定 AWS CMDB 連接器。為此,請將 AWS CMDB 連接器 Lambda 的 glue_connection 環境變數設定為要使用的 Glue 連線名稱。

Glue 連線屬性

使用下列命令來取得 Glue 連線物件的結構描述。此結構描述包含可用於控制連線的所有參數。

aws glue describe-connection-type --connection-type CMDB

Lambda 環境屬性

glue_connection – 指定與聯合連接器關聯的 Glue 連線名稱。

注意
  • 使用 Glue 連線的所有連接器都必須使用 AWS Secrets Manager 來存放憑證。

  • 使用 Glue 連線建立的 AWS CMDB 連接器不支援使用多工處理常式。

  • 使用 Glue 連線建立的 AWS CMDB 連接器僅支援 ConnectionSchemaVersion 2。

注意

2024 年 12 月 3 日及之後建立的 Athena 資料來源連接器使用 AWS Glue 連線。

下方列出的參數名稱和定義適用於未使用關聯 Glue 連線建立的 Athena 資料來源連接器。只有在您手動部署舊版 Athena 資料來源連接器或未指定 glue_connection 環境屬性時,才會使用下列參數。

Lambda 環境屬性

  • spill_bucket - 針對超過 Lambda 函數限制的資料,指定 Amazon S3 儲存貯體。

  • spill_prefix - (選用) 預設為指定的 spill_bucket 中名為 athena-federation-spill 的子資料夾。我們建議您在此位置設定 Amazon S3 儲存生命週期,以刪除超過預定天數或小時數的溢出。

  • spill_put_request_headers – (選用) 用於溢出的 Amazon S3 putObject 請求的請求標頭和值的 JSON 編碼映射 (例如,{"x-amz-server-side-encryption" : "AES256"})。如需其他可能的標頭,請參閱《Amazon Simple Storage Service API 參考》中的 PutObject

  • kms_key_id - (選用) 依預設,任何溢出到 Amazon S3 的資料都會使用 AES-GCM 驗證加密模式和隨機產生的金鑰進行加密。為了讓您的 Lambda 函數使用 KMS 產生的更強大的加密金鑰,例如 a7e63k4b-8loc-40db-a2a1-4d0en2cd8331,您可以指定 KMS 金鑰 ID。

  • disable_spill_encryption - (選用) 當設定為 True 時,停用溢出加密。預設為 False,因此溢出 S3 的資料會使用 AES-GCM 進行加密 — 使用隨機產生的金鑰或 KMS 來產生金鑰。停用溢出加密可以提高效能,尤其是如果溢出位置使用伺服器端加密

  • default_ec2_image_owner - (選用) 設定後,控制篩選 Amazon Machine Image (AMI) 的預設 Amazon EC2 映像擁有者。如果您未設定此值,且您針對 EC2 映像資料表的查詢不包含擁有者的篩選條件,則您的結果將包含所有公有映像。

資料庫和資料表

Athena AWS CMDB 連接器使下列資料庫和資料表可用於查詢 AWS 資源庫存。如需有關每個資料表中可用資料欄的詳細資訊,請使用 Athena 主控台或 API 執行 DESCRIBE database.table 陳述式。

  • ec2 - 此資料庫包含與 Amazon EC2 相關的資源,包括下列資源。

  • ebs_volumes - 包含您的 Amazon EBS 磁碟區的詳細資訊。

  • ec2_instances - 包含您的 EC2 執行個體的詳細資訊。

  • ec2_images - 包含您的 EC2 執行個體映像的詳細資訊。

  • routing_tables - 包含您的 VPC 路由表的詳細資訊。

  • security_groups - 包含安全性群組的詳細資訊。

  • subnets - 包含 VPC 子網的詳細資訊。

  • vpcs - 包含 VPC 的詳細資訊。

  • emr - 此資料庫包含與 Amazon EMR 相關的資源,包括下列資源。

  • emr_clusters - 包含 EMR 叢集的詳細資訊。

  • rds - 此資料庫包含與 Amazon RDS 相關的資源,包括下列資源。

  • rds_instances - 包含您的 RDS 執行個體的詳細資訊。

  • s3 - 此資料庫包含與 RDS 相關的資源,包括下列資源。

  • buckets - 包含您的 Amazon S3 儲存貯體的詳細資訊。

  • objects - 包含 Amazon S3 物件的詳細資訊,但不包含其內容。

所需的許可

如需詳細了解此連接器所需的 IAM 政策,請檢閱 athena-aws-cmdb.yaml 檔案的 Policies 部分。以下清單摘要說明所需的許可。

  • Amazon S3 寫入存取 - 連接器需要 Amazon S3 中某個位置的寫入存取權,以便從大型查詢中溢寫結果。

  • Athena GetQueryExecution - 當上游 Athena 查詢終止時,連接器會使用此許可快速失敗。

  • S3 List - 連接器使用此許可列出您的 Amazon S3 儲存貯體和物件。

  • EC2 Describe - 連接器使用此權限來描述資源,例如您的 Amazon EC2 執行個體、安全群組、VPC 和 Amazon EBS 磁碟區。

  • EMR Describe / List - 連接器使用此權限來描述您的 EMR 叢集。

  • RDS Describe - 連接器使用此許可來描述您的 RDS 執行個體。

效能

目前,Athena AWS CMDB 連接器不支援平行掃描。在 Lambda 函數內執行述詞下推。如果可能,部分述詞會被推送到正在查詢的服務。例如,查詢特定 Amazon EC2 執行個體的詳細資訊會使用特定執行個體 ID 呼叫 EC2 API,以執行目標描述操作。

授權資訊

Amazon Athena AWS CMDB 連接器專案是依據 Apache-2.0 License 來授權的。

其他資源

如需此連接器的其他資訊,請造訪 GitHub.com 上的相應網站