AWS announces preview of AWS Interconnect - multicloud
AWS announces AWS Interconnect – multicloud (preview), providing simple, resilient, high-speed private connections to other cloud service providers. AWS Interconnect - multicloud is easy to configure and provides high-speed, resilient connectivity with dedicated bandwidth, enabling customers to interconnect AWS networking services such as AWS Transit Gateway, AWS Cloud WAN, and Amazon VPC to other cloud service providers with ease.
Como faço para calcular as cobranças de consultas do Amazon Redshift Spectrum?
Quero calcular e otimizar os custos ao usar o Amazon Redshift Spectrum para consultar dados do Amazon Simple Storage Service (Amazon S3).
Breve descrição
Pré-requisitos:
- Um cluster do Amazon Redshift e um bucket do S3 que estão na mesma região da AWS.
- Um cliente SQL conectado ao seu cluster para executar comandos SQL.
Você é cobrado pelo número de bytes que o Redshift Spectrum verifica a partir do Amazon S3. Podem ser cobradas taxas adicionais dependendo da região. O Redshift Spectrum arredonda os números de bytes para o próximo megabyte, com um mínimo de 10 MB por consulta. Para mais informações, consulte Métricas do Amazon Redshift.
Observação: o Redshift Spectrum não cobra pelas instruções DDL (Data Definition Language), CREATE, ALTER e DROP TABLE, que gerenciam partições e consultas com falha. Suas cobranças de capacidade computacional sem servidor do Amazon Redshift incluem todas as consultas de dados externas do Amazon S3.
Resolução
Para calcular o custo estimado da consulta e obter um resumo de todas as consultas do S3 que você executa no Redshift Spectrum, use a tabela SVL_S3QUERY_SUMMARY. A coluna s3_scanned_bytes retorna o número de bytes que o Redshift Spectrum escaneia do S3 e envia para a camada do Redshift Spectrum.
Uso
Execute a seguinte consulta em SVL_S3QUERY_SUMMARY para determinar o número de bytes que o Amazon S3 transfere por queryID:
SELECT s3_scanned_bytes FROM SVL_S3QUERY_SUMMARY WHERE query=queryID;
Observação: substitua query_id pelo ID da sua consulta.
Para determinar a soma de todos os bytes escaneados do S3, execute a seguinte consulta:
SELECT sum(s3_scanned_bytes) FROM SVL_S3QUERY_SUMMARY;
Também é possível determinar a soma de bytes para todas as consultas do Redshift Spectrum executadas em um intervalo de tempo específico. O exemplo a seguir mostra como calcular o total de bytes das consultas que você começou a executar no dia anterior:
SELECT sum(s3_scanned_bytes) FROM SVL_S3QUERY_SUMMARY WHERE starttime >= current_date-1;
Se você executar a consulta a seguir em um bucket do S3 na região Leste dos EUA (Norte da Virgínia), o Redshift Spectrum cobrará por terabyte. Se a soma de s3_scanned_bytes retornar 621.900.000.000 bytes ao consultar SVL_S3QUERY_SUMMARY, você terá 0,565614755032584 terabytes ao converter bytes em terabytes.
Consulta de exemplo:
621900000000 bytes = 621900000000/1024 = 607324218.75 kilobytes 607324218.75 kilobytes = 607324218.75/1024 = 593090.057373046875 megabytes 593090.057373046875 megabytes = 593090.057373046875 /1024 = 579.189509153366089 gigabytes 579.189509153366089 gigabytes = 579.189509153366089/1024 = 0.565614755032584 terabytes
No exemplo a seguir, seu uso é de aproximadamente 0,5657 terabytes. Para calcular o custo de uso do Redshift Spectrum, multiplique o custo por terabyte:
$5 * 0.5657= $2.83
Execute a seguinte consulta SQL para calcular as cobranças de uso do Redshift Spectrum:
SELECT round(1.0*sum(s3_scanned_bytes/1024/1024/1024/1024),4) s3_scanned_tb, round(1.0*5*sum(s3_scanned_bytes/1024/1024/1024/1024),2) cost_in_usd FROM SVL_S3QUERY_SUMMARY;
O exemplo anterior consulta as cobranças no Redshift Spectrum em seu bucket do S3 para dados que a consulta verificou no dia anterior.
Observação: todas as consultas que digitalizam até 9,9 MB são arredondadas e cobradas por 10 MB. Não há cobranças por consultas com falha ou interrompidas.
Além disso, as tabelas de log do sistema (STL) mantêm apenas 2 a 5 dias de histórico de log, dependendo do uso do log e do espaço disponível em disco. Para manter um registro dos bytes transferidos, é uma prática recomendada calcular as cobranças diárias da consulta e armazenar os dados em outra tabela.
Consulta de exemplo:
CREATE VIEW spectrum_cost AS SELECT starttime::date as date, xid, query, trim(usename) as user, CASE WHEN s3_scanned_bytes < 10000000 then 10 ELSE s3_scanned_bytes/1024/1024 end as scanned_mb, round(CASE WHEN s3_scanned_bytes < 10000000 then 10*(5.0/1024/1024) ELSE (s3_scanned_bytes/1024/1024)*(5.0/1024/1024) end,5) as cost_$ FROM svl_s3query_summary s LEFT JOIN pg_user u ON userid=u.usesysid JOIN (select xid as x_xid,max(aborted) as x_aborted from svl_qlog group by xid) q ON s.xid=q.x_xid WHERE userid>1 AND x_aborted=0 AND s.starttime >= current_date-1;
Observação: também é possível usar a consulta CREATE TABLE para calcular e armazenar os dados em outra tabela. Se você não quiser especificar um período de tempo, remova current_date-1.
Calcule a soma total dos dados que uma consulta verifica do S3 para o Redshift Spectrum no dia anterior. Para calcular a estimativa total das cobranças, execute a seguinte consulta:
SELECT current_date-1 as query_since, SUM(scanned_mb) as total_scanned_mb, SUM(cost_$) as total_cost_$ FROM spectrum_cost; Result: query_since | total_scanned_mb | total_cost_$ --------------+------------------+--------------- 2020-05-15 | 5029 | 0.02515
Melhores práticas do Redshift Spectrum
Para reduzir as cobranças de consultas e melhorar o desempenho do Redshift Spectrum, use as seguintes práticas recomendadas:
- Use controles de custo para o Redshift Spectrum e recursos de escalabilidade simultânea para monitorar e controlar seu uso.
- Use formatos de dados otimizados para melhorar o desempenho e reduzir os custos. Use formatos de dados colunares, como PARQUET e ORC, para selecionar somente as colunas que você deseja digitalizar do Amazon S3.
- Se você acessa os dados com pouca frequência, carregue os dados no Amazon S3 e use o Redshift Spectrum.
- Ao usar vários clusters do Amazon Redshift para escalar a simultaneidade, interrompa os clusters assim que os trabalhos forem concluídos.
Controles de custos e escalabilidade de simultaneidade para o Redshift Spectrum
Se você usar os controles de custo e o atributo de escalabilidade simultânea do Redshift Spectrum, poderá criar cotas de uso diárias, semanais e mensais. Quando você atinge as cotas de uso, o Amazon Redshift age automaticamente.
Para configurar o controle de custos, conclua as seguintes etapas:
- Abra o console do Amazon Redshift.
- Escolha Configurar limite de uso.
- Atualize as seguintes configurações:
Período de tempo
Limite de uso
Ação
Observação: As configurações de ação podem ajudar você a gerenciar suas cotas de uso.
Para configurar a cota de uso da escalabilidade de simultaneidade, conclua as seguintes etapas:
- Abra o console do Amazon Redshift.
- Escolha limite de uso da escalabilidade de simultaneidade como sua cota de uso.
- Atualize as seguintes configurações:
Período de tempo
Limite de uso
Ação
Observação: O período de tempo está no fuso horário UTC. Para a configuração de Ação, também é possível anexar uma assinatura do Amazon Simple Notification Service (Amazon SNS) aos recursos de alerta e desativação. Se você usar o console do Amazon Redshift para ativar um alerta, um alarme do Amazon CloudWatch será criado automaticamente para as métricas.
Requisitos e limitações adicionais de controle de custos
Para gerenciar o uso e o custo do Redshift Spectrum, analise os seguintes requisitos e limitações:
- As cotas de uso estão disponíveis nas versões suportadas 1.0.14677 ou posteriores.
- É possível adicionar até quatro cotas e ações para cada categoria com uma cota total de oito.
- Somente regiões em que o Redshift Spectrum e a escalabilidade simultânea estão disponíveis oferecem suporte ao Redshift Spectrum.
- Somente uma cota para cada atributo pode usar o atributo Desativar.
- As cotas de uso persistem até que você exclua a definição da cota de uso ou o cluster.
- Se você criar uma cota no meio de um período, a cota será medida do ponto médio até o final do período.
- Se você escolher as opções de registro, revise os detalhes nos logs STL_USAGE_CONTROL.
Informações relacionadas
Definir limites de uso, incluindo definir limites de RPU
- Tópicos
- Analytics
- Tags
- Amazon Redshift
- Idioma
- Português

Conteúdo relevante
- feita há 5 meses
- feita há 4 meses
- feita há 8 meses
- feita há um ano