Criar uma tabela para uma trilha em toda a organização usando particionamento manual - Amazon Athena

Criar uma tabela para uma trilha em toda a organização usando particionamento manual

Para criar uma tabela para arquivos de log do CloudTrail em toda a organização no Athena, siga as etapas listadas em Criar uma tabela de logs do CloudTrail no Athena usando particionamento manual, mas faça as modificações observadas no procedimento a seguir.

Criar uma tabela do Athena para logs do CloudTrail em toda a organização
  1. Na instrução CREATE TABLE, modifique a cláusula LOCATION para incluir o ID da organização, como no exemplo a seguir:

    LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/organization_id/'
  2. Na cláusula PARTITIONED BY, adicione uma entrada para o ID da conta como cadeia de caracteres, como no exemplo a seguir:

    PARTITIONED BY (account string, region string, year string, month string, day string)

    O exemplo a seguir mostra o resultado combinado:

    ... PARTITIONED BY (account string, region string, year string, month string, day string) ROW FORMAT SERDE 'org.apache.hive.hcatalog.data.JsonSerDe' STORED AS INPUTFORMAT 'com.amazon.emr.cloudtrail.CloudTrailInputFormat' OUTPUTFORMAT 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat' LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/organization_id/Account_ID/CloudTrail/'
  3. Na instrução ALTER TABLE, na cláusula ADD PARTITION, inclua o ID da organização, como no exemplo a seguir:

    ALTER TABLE table_name ADD PARTITION (account='111122223333', region='us-east-1', year='2022', month='08', day='08')
  4. Na instrução ALTER TABLE, na cláusula LOCATION, inclua o ID da organização, o ID da conta e a partição que você deseja adicionar, como no exemplo a seguir:

    LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/organization_id/Account_ID/CloudTrail/us-east-1/2022/08/08/'

    No exemplo a seguir, a instrução ALTER TABLE mostra o resultado combinado:

    ALTER TABLE table_name ADD PARTITION (account='111122223333', region='us-east-1', year='2022', month='08', day='08') LOCATION 's3://amzn-s3-demo-bucket/AWSLogs/organization_id/111122223333/CloudTrail/us-east-1/2022/08/08/'

Observe que, em uma grande organização, usar esse método para adicionar e manter manualmente uma partição para cada ID de conta da organização pode ser complicado. Nesse cenário, considere usar o CloudTrail Lake em vez do Athena. O CloudTrail Lake oferece as seguintes vantagens:

  • Agrega automaticamente os logs em toda a organização

  • Não requer configuração ou manutenção de partições ou de uma tabela do Athena

  • As consultas são executadas diretamente no console do CloudTrail

  • Usa uma linguagem de consultas compatível com SQL

Para obter mais informações, consulte Trabalhar com o AWS Lake, no Guia do usuário do AWS CloudTrail.