As tabelas de sistema do Amazon Redshift capturam um fluxo contínuo de sinais operacionais: cada consulta executada, cada conexão estabelecida. Esses dados permitem a observabilidade, a análise de desempenho e a auditoria de conformidade em seus data warehouses. Até então, as tabelas de sistema retinham esses dados críticos por apenas 7 dias, dificultando a conformidade e a auditoria a longo prazo sem soluções alternativas personalizadas.
A integração das tabelas de sistema do Amazon Redshift com o Amazon S3 Tables , um recurso do Amazon Simple Storage Service ( Amazon S3 ), entrega automaticamente os dados de log das suas tabelas de sistema para o Amazon S3 Tables e os armazena no formato Apache Iceberg . Você pode configurar períodos de retenção para as tabelas de sistema do Amazon Redshift além do limite atual de 7 dias, proporcionando maior conformidade, auditoria e observabilidade entre data warehouses sem a necessidade de pipelines ETL personalizados ou consumo de recursos do cluster. Seus dados são abertos, duráveis e podem ser consultados no Amazon Redshift, Amazon Athena , AWS Glue , Amazon EMR ou outros mecanismos compatíveis com Apache Iceberg.
Neste post, explicamos como a integração da tabela de sistema do Amazon Redshift envia dados de log para o Amazon S3 Tables. Esse recurso é compatível com clusters provisionados pelo RA3 e RG, bem como com grupos de trabalho do Amazon Redshift Serverless.
O desafio
Se você utiliza o Amazon Redshift, frequentemente enfrenta desafios operacionais decorrentes do limite de retenção de tabelas do sistema de 7 dias:
- Visibilidade limitada da tendência de consultas: você deseja comparar o desempenho da mesma consulta há 30 dias com o desempenho atual. Quando o desempenho muda gradualmente, linhas de base estendidas permitem uma análise da causa raiz orientada por dados, em vez de uma solução de problemas reativa.
- Habilite comparações de antes e depois: ao adicionar uma nova carga de trabalho, alterar o tipo de instância ou ajustar as filas do Workload Management (WLM) , você deseja medir o impacto com precisão. A retenção estendida preserva os dados de referência necessários.
- Desbloqueie o planejamento de capacidade sazonal: picos de fim de mês, aumentos no fechamento de trimestre e picos anuais exigem meses de dados históricos para serem identificados e planejados. A retenção prolongada revela padrões sazonais ao longo de meses e anos.
- Sobrecarga de pipelines ETL personalizados: Para contornar o limite de retenção, as equipes criam pipelines personalizados que copiam dados de tabelas do sistema diariamente ou a cada hora para tabelas persistentes no Amazon Redshift Managed Storage. Esses pipelines consomem recursos do cluster, competem com cargas de trabalho de produção e exigem manutenção contínua de engenharia. Quando o Amazon Redshift atualiza os esquemas das tabelas do sistema e as configurações de compartilhamento de dados, esses pipelines exigem intervenção manual e criam lacunas nos registros.
- Requisitos de conformidade: Setores regulamentados são obrigados a manter registros de auditoria que abrangem meses ou anos. O limite de 7 dias exige infraestrutura personalizada para atender a esses requisitos. A integração do Amazon S3 Tables com as tabelas do sistema Amazon Redshift agora resolve esse problema.
Como funciona
A integração das tabelas de sistema do Amazon Redshift com o Amazon S3 Tables é um recurso totalmente gerenciado que grava automaticamente os dados das tabelas de sistema do Amazon Redshift em tabelas do Amazon S3 no formato Apache Iceberg. A AWS cuida do particionamento, da compressão e do gerenciamento de retenção automaticamente. O processo de gravação de logs é executado em um processo isolado em segundo plano, o que reduz a disputa por recursos com cargas de trabalho de produção. A AWS gerencia os pipelines para você.
O recurso suporta mais de 25 visualizações do sistema no lançamento – consulte a documentação sobre visualizações do sistema suportadas .
Configurando
Siga estes passos para ativar a integração da tabela do sistema com o Amazon S3 Tables a partir do console do Amazon Redshift:
- Abra o console do Amazon Redshift e navegue até a página de integrações da tabela Sistema. Você também pode acessar essa página na página de detalhes do seu cluster provisionado ou grupo de trabalho Serverless.
- Selecione Criar integração de tabela do sistema . Isso iniciará o assistente de configuração.
- Selecione o cluster provisionado do Amazon Redshift ou o grupo de trabalho sem servidor do Amazon Redshift no qual você deseja habilitar o recurso.
Figura 1: Selecionando o data warehouse Amazon Redshift no assistente de integração da tabela Sistema
- Escolha as visualizações do sistema a serem publicadas na lista Tabelas do sistema disponíveis . Selecione visualizações SYS_* individuais ou escolha Selecionar todas as tabelas do sistema compatíveis para publicar todas as visualizações compatíveis atuais e futuras. Se selecionar todas, as novas visualizações adicionadas no futuro serão incluídas automaticamente, sem necessidade de alteração de configuração.
- Selecione o modelo de implantação. Escolha como os dados serão organizados nas tabelas do Amazon S3:
- Tabela S3 individual por tabela de sistema por data warehouse para manter os dados deste warehouse em seu próprio conjunto de tabelas.
- Tabela S3 compartilhada por tabela de sistema em diferentes data warehouses para consolidar dados de vários data warehouses da conta em um conjunto compartilhado de tabelas.
- Opcionalmente, configure a criptografia com uma chave gerenciada pelo cliente do AWS Key Management Service (AWS KMS). Por padrão, os dados são criptografados com criptografia SSE-S3 (chave gerenciada pelo Amazon S3).
- Salve suas alterações. O Amazon Redshift começará a publicar as visualizações selecionadas no Amazon S3 Tables e continuará adicionando novos registros em uma frequência fixa.
Para verificar se a integração está ativa:
- Acesse a página de detalhes do seu cluster ou grupo de trabalho.
- Verifique o status da integração e o horário da última ingestão para cada visualização.
- Você também pode visualizar os dados publicados no console do Amazon S3 Tables.
Após ser habilitado, o Amazon Redshift grava dados de log em tabelas do Amazon S3 periodicamente por meio de um processo em segundo plano isolado, separado das cargas de trabalho de produção. Para começar a consultar os logs retidos, você precisará realizar uma configuração única que conecta seu ambiente Amazon Redshift aos dados das tabelas do Amazon S3 por meio do AWS Glue Catalog. Conclua as seguintes etapas:
- Configure uma função do AWS Identity and Access Management (IAM) com as permissões necessárias para acesso ao AWS Glue Data Catalog e ao Amazon S3 Tables e, em seguida, associe-a ao seu cluster do Amazon Redshift ou ao namespace serverless do Amazon Redshift.
- No AWS Glue Data Catalog, crie um link de recurso que aponte para o banco de dados Amazon S3 Tables onde seus logs estão armazenados.
- No Amazon Redshift, crie um esquema externo que faça referência ao link do recurso:
- Com isso configurado, você pode consultar os dados históricos da tabela do sistema usando a notação familiar de duas partes:
Como o acesso às tabelas do Amazon S3 é somente leitura, a integridade dos seus registros de auditoria é inerentemente preservada.
Para obter instruções detalhadas de configuração, incluindo exemplos de políticas do IAM, consulte Registrando o bucket do S3 Tables com o AWS Glue Data Catalog .
Seus dados agora estão no Apache Iceberg.
Os dados da sua tabela de sistema são armazenados no Apache Iceberg, um formato de tabela aberto, o que lhe dá a liberdade de escolher um mecanismo de consulta compatível. Seus dados de observabilidade e auditoria funcionam com a ferramenta que você já utiliza.
Você pode analisar seus dados operacionais usando:
- Amazon Redshift: Depois que o bucket da tabela S3 for integrado ao AWS Glue Data Catalog, crie um esquema externo no Amazon Redshift apontando para o link do recurso para consultar as tabelas retidas.
- Amazon Athena: Execute consultas SQL sem servidor em logs históricos sem precisar provisionar infraestrutura.
- AWS Glue: Crie tarefas automatizadas de processamento e transformação de dados com base em seus dados operacionais.
- Amazon EMR: Execute análises baseadas em Spark em escala para análises complexas entre data warehouses.
Como os dados são armazenados no formato aberto Apache Iceberg no Amazon S3 Tables, você pode consultá-los com o Amazon Redshift, Amazon Athena, recursos de agentes de IA para consultas em linguagem natural, Amazon SageMaker Unified Studio , um mecanismo compatível com Iceberg, ferramentas de Business Intelligence (BI) e sistemas de observabilidade.
Relação custo-benefício
A entrega de logs do Amazon Redshift para o Amazon S3 Tables não acarreta custos adicionais. Você paga apenas pelo armazenamento, manutenção e consulta dos dados no Amazon S3 Tables, utilizando o mecanismo de sua escolha.
Visão geral da solução
Os cenários a seguir ilustram como a integração das tabelas de sistema do Amazon Redshift com o Amazon S3 Tables resolve desafios comuns de operação, conformidade e observabilidade em seu ambiente Amazon Redshift. Também criamos uma skill dedicada, querying-aws-redshift , para esse recurso e a incorporamos ao AWS MCP Server para que você possa consultar as tabelas de sistema do Amazon Redshift a partir do Amazon S3 Tables.
Cenário 1: Rastrear tendências de consultas ao longo do tempo
Com dados armazenados por meses ou anos SYS_QUERY_HISTORY, você pode acompanhar o desempenho de consultas individuais ao longo de períodos prolongados. É possível comparar o tempo de execução, o tempo de espera na fila e o consumo de recursos de uma consulta ao longo de dias, semanas ou meses.
Você pode identificar exatamente quando o desempenho começou a se degradar e correlacioná-lo com o que mudou: um novo esquema, um pico no volume de dados ou uma carga de trabalho simultânea adicional. A retenção estendida transforma a solução de problemas em uma análise proativa da causa raiz, baseada em dados.
Cenário 2: Avaliar o impacto na carga de trabalho antes e depois das alterações.
Toda alteração na carga de trabalho afeta o sistema: um novo pipeline ETL, uma mudança no tipo de instância, um ajuste na fila do Workload Management (WLM) ou uma nova equipe de analistas executando consultas ad hoc. A questão é sempre: como essa alteração afetou o desempenho?
Com a integração do Amazon S3 Tables para a tabela de sistema do Amazon Redshift, você pode tomar decisões baseadas em dados com confiança. Consulte SYS_QUERY_HISTORYpara comparar tempos de execução, durações de espera na fila e eventos de escalonamento de simultaneidade das semanas anteriores a uma alteração com as semanas posteriores. Se você implementou uma nova carga de trabalho de relatórios há duas semanas e deseja entender seu efeito nas consultas existentes, os dados para confirmar isso já estão disponíveis, sem a necessidade de nenhum pipeline personalizado.
Cenário 3: Criar painéis de observabilidade
Os dados da sua tabela de sistema são armazenados no Apache Iceberg e catalogados no AWS Glue, o que significa que uma ferramenta de observabilidade ou de Business Intelligence (BI) que lê o Apache Iceberg pode se conectar diretamente a ele. Visualize as tendências de distribuição de carga de trabalho no Amazon Quick Sight para gerar relatórios executivos. Use o Amazon SageMaker Unified Studio para uma exploração analítica mais aprofundada ou para gerar insights orientados por IA a partir dos seus dados operacionais. Além dos serviços da AWS, conecte seus sistemas de observabilidade e ferramentas de BI de terceiros preferidos para rastrear volumes de consultas, monitorar padrões de conexão, configurar alertas para anomalias ou correlacionar dados operacionais do Amazon Redshift com logs de aplicativos.
Seus dados de observabilidade e auditoria funcionam com as ferramentas que você já utiliza. Acesso direto a dados operacionais estruturados e duráveis, com a ferramenta de sua preferência.
Cenário 4: Planejar a capacidade considerando o contexto sazonal
A demanda de trabalho varia ao longo do ano. O fechamento mensal, os relatórios de fim de trimestre, os ciclos de planejamento anual e os eventos promocionais criam picos de uso previsíveis, mas somente se você tiver dados históricos suficientes para identificar o padrão.
Com a retenção estendida, você pode analisar as tendências de utilização em vários ciclos de negócios. Identifique quando você se aproxima consistentemente dos limites de capacidade, meça como a demanda muda trimestre a trimestre e valide se seus recursos provisionados estão alinhados com o uso real.
Cenário 5: Manter trilhas de auditoria de conformidade
Para setores regulamentados, a retenção estendida oferece uma trilha de auditoria totalmente gerenciada com integridade integrada.
SYS_CONNECTION_LOGRegistra cada tentativa de autenticação. SYS_USERLOGCaptura as alterações na conta do usuário. SYS_QUERY_HISTORYDocumenta cada consulta executada em seu banco de dados.
Configure o período de retenção de acordo com as políticas de retenção de dados da sua organização: seja 90 dias, um ano ou vários anos. A política de acesso somente leitura ajuda a impedir que os registros sejam alterados após serem gravados, inclusive por administradores.
Cenário 6: Centralize a visibilidade da frota em todo o seu armazém.
Se você gerencia vários data warehouses do Amazon Redshift, se beneficia de uma visão unificada dos dados operacionais. O recurso oferece suporte a dois padrões de implantação para se adequar à sua estrutura organizacional:
- Tabelas individuais por data warehouse: Cada data warehouse grava em suas próprias tabelas dedicadas do Amazon S3, proporcionando isolamento completo de dados para ambientes que exigem conformidade. Para consultar vários data warehouses,
UNIONé necessária uma operação específica. - Tabelas compartilhadas: os warehouses da mesma conta e região da AWS gravam em um único conjunto compartilhado de tabelas do Amazon S3, com os dados diferenciados pela
warehouse_namecoluna. Filtre por warehouse para análise instantânea entre clusters.
Melhores práticas
- Identifique os data warehouses com logs que precisam ser isolados por motivos de privacidade e selecione a opção de tabela individual por data warehouse para esses casos. Para os data warehouses restantes, use a opção Tabelas compartilhadas (consolidadas) para facilitar o gerenciamento.
- Ajuste o período de retenção aos seus requisitos de conformidade. Configure o período mínimo de retenção que atenda aos seus requisitos de conformidade para reduzir os custos de armazenamento.
- Ao consultar tabelas de sistema retidas, filtre por colunas de metadados como `<nome_da_coluna>`
warehouse_account_id,warehouse_region_name`warehouse_namespace_arn<nome_da_coluna>` , `<nome_da_coluna>warehouse_name` e `s3_tables_ingestion_time<nome_da_coluna>` para reduzir o escopo da varredura e melhorar o desempenho. Isso é particularmente importante ao consultar grandes volumes de dados históricos em vários data warehouses. - Utilize o acesso somente leitura integrado para garantir a integridade do registro de auditoria. Use as APIs de configuração do Amazon S3 Tables para gerenciar as configurações de retenção e criptografia.
- Planeje sua estratégia de criptografia com antecedência. Escolha sua chave de criptografia com cuidado durante a configuração, pois alterações exigem a recriação da integração. Se você prevê consolidar data warehouses no futuro, escolha uma chave AWS KMS compartilhada desde o início.
Conclusão
A integração das tabelas do sistema Amazon Redshift com o Amazon S3 Tables substitui os pipelines ETL personalizados por uma solução totalmente gerenciada para preservar seus dados operacionais do Amazon Redshift. Com armazenamento automático baseado no Apache Iceberg, consultas em formato aberto e integridade de auditoria integrada, você obtém meses ou anos de dados de observabilidade, totalmente gerenciados. Você pode habilitá-la por meio do Console de Gerenciamento da AWS , da AWS Command Line Interface (AWS CLI) ou dos SDKs da AWS .
Para saber mais, visite a documentação das tabelas do sistema Amazon Redshift .
POSTAGENS RECENTES
Carregando postagens recentes...

