Estratégias Econômicas para Análise de Dados na Nuvem
Aprenda a reduzir custos na análise de dados na nuvem sem comprometer a performance.
― 7 min ler
Índice
- Por que o Custo Importa
- O Básico das Cargas de Trabalho na Nuvem
- Limitações de Tempo
- Estratégias para Economizar
- Implementação das Estratégias
- Analisando Custos
- Desafios na Redução de Custos
- Declaração do Problema e Abordagem
- Avaliando Estratégias
- O Futuro das Cargas de Trabalho na Nuvem
- Conclusão
- Fonte original
- Ligações de referência
À medida que as organizações transferem suas tarefas de análise de dados para bancos de dados na nuvem, tá ficando cada vez mais importante achar maneiras de cortar custos enquanto ainda se mantém uma boa performance. Quando rola uma consulta na nuvem, os custos podem vir do tempo que a consulta leva ou da quantidade de dados que ela processa. Curiosamente, consultas analíticas podem ser limitadas tanto pelo poder de computação quanto pela quantidade de dados lidos, e cada tipo de consulta tende a ser mais barato sob diferentes planos de preços. Isso cria uma oportunidade de criar planos de execução mais acessíveis que se encaixem dentro de certos limites de tempo.
Usando várias estratégias, é possível reduzir os custos para cargas de trabalho na nuvem em até 56%. Para consultas individuais, a economia pode chegar a até 90%. Diferentes esquemas de preços usados pelos provedores de serviços em nuvem também podem influenciar as economias gerais. Simulações mostram que mesmo se os preços mudarem, usar múltiplos serviços em nuvem ainda pode levar a economias significativas.
Por que o Custo Importa
Quando as empresas mudam sua análise de dados para serviços em nuvem, economias financeiras se tornam tão importantes quanto garantir que as consultas rodem rapidamente. Mesmo pequenas economias em um trabalho podem se acumular ao longo do tempo, especialmente se as tarefas rodam com frequência. Por exemplo, economizar $140 em uma tarefa de análise diária que rola duas vezes por dia pode levar a uma economia anual de $100.000. Muitas empresas têm vários desses processos que podem incluir tarefas como atualizar painéis ou gerenciar fluxos de dados.
Enquanto os provedores de nuvem oferecem ferramentas para melhorar a eficiência do banco de dados, tem pouco disponível para reduzir custos diretamente. Como resultado, muitas organizações recorrem a consultores especializados para ajudar a otimizar seus setups de banco de dados e economizar grana.
O Básico das Cargas de Trabalho na Nuvem
Na nuvem, bancos de dados oferecem diferentes opções de preços. Os dois principais modelos são pay-per-compute, onde os usuários pagam pelo tempo de computação, e pay-per-byte, onde os custos são baseados na quantidade de dados processados. Dependendo se uma consulta depende mais do poder de CPU ou da leitura de dados, ela pode ser mais barata sob uma dessas duas estruturas de preços.
As consultas são plotadas em um gráfico mostrando a relação entre tempo de execução e volume de dados, ajudando a identificar o melhor modelo de preços para consultas específicas. Por exemplo, uma consulta que roda rápido e processa uma grande quantidade de dados pode ser mais econômica em um modelo pay-per-compute, enquanto uma consulta mais lenta que trabalha com menos dados pode ser mais adequada para um setup pay-per-byte.
Limitações de Tempo
Todas as tarefas têm um nível de expectativa de tempo. Por exemplo, um usuário rodando um relatório noturno que normalmente termina até as 2 AM pode ficar tranquilo se ele rodar até as 8 AM pra economizar custos. Isso leva ao desenvolvimento de estratégias para economizar grana enquanto garante que o trabalho seja finalizado dentro de limites de tempo aceitáveis.
Estratégias para Economizar
Pra explorar o potencial de economia em bancos de dados na nuvem sem precisar fazer mudanças grandes nos setups dos usuários, os pesquisadores desenvolveram duas estratégias principais:
Estratégia Inter-Consulta: Esse método examina um conjunto de consultas e determina quais bancos de dados devem processar cada consulta com base em seus custos associados e limites de tempo.
Estratégia Intra-Consulta: Esse método foca em uma única consulta. Ele divide a consulta em subconsultas e identifica como distribuí-las em diferentes bancos de dados na nuvem pra economizar grana enquanto atende as metas de tempo.
A escolha de qual estratégia usar vai depender da carga de trabalho específica. Por exemplo, um conjunto de consultas que é particularmente caro pode se beneficiar mais da estratégia Intra-Consulta. No entanto, ambas as estratégias requerem transferência de dados e compatibilidade da sintaxe SQL entre plataformas de nuvem.
Implementação das Estratégias
Pra tornar essas estratégias práticas, pode-se desenvolver um middleware que funcione como uma ponte entre os usuários e a nuvem. Esse sistema pegaria uma carga de trabalho e seus requisitos de tempo, aplicaria as estratégias inter-consulta e intra-consulta, moveria os dados conforme necessário e então forneceria planos de execução econômicos.
Testes com diferentes setups de preços em nuvem revelam oportunidades substanciais de economia. Por exemplo, em um caso, um plano inter-consulta foi executado que resultou em economias de mais de 57% em comparação com os custos originais, ainda atendendo à limitação de tempo.
Analisando Custos
Quando se rodam consultas, vários custos entram em jogo:
Custos de Armazenamento: Manter dados em armazenamento na nuvem (como AWS S3) gera taxas mensais.
Custos de Transferência de Dados: Mover dados pode gerar cobranças adicionais, com taxas significativas associadas à transferência de grandes volumes de dados entre nuvens.
Custos de Execução: Consultar os dados também pode ser cobrado com base no método de consulta-seja por byte processado ou por unidade de computação usada.
Pra entender melhor esses custos, é crucial analisar como diferentes consultas vão interagir com os bancos de dados e como serão as despesas gerais.
Desafios na Redução de Custos
Encontrar maneiras de mover consultas limitadas por CPU ou IO para bancos de dados que oferecem modelos de preços mais favoráveis pode levar a economias significativas. No entanto, estimar o custo das consultas com precisão ainda é um desafio. Isso pode depender de uma variedade de fatores únicos dos dados e das cargas de trabalho sendo processadas.
Declaração do Problema e Abordagem
O objetivo principal dessa pesquisa é achar maneiras de rodar conjuntos de consultas de forma mais econômica enquanto considera limites de tempo. Isso inclui desenvolver os planos inter-consulta e intra-consulta mencionados anteriormente para otimizar economias.
Avaliando Estratégias
Essas estratégias propostas são avaliadas usando serviços em nuvem comuns. Para diferentes cargas de trabalho, o sistema pode mostrar quanto dinheiro pode ser economizado enquanto ainda se atinge o tempo necessário. Os resultados dessas avaliações mostram que economias significativas podem frequentemente ser alcançadas em várias situações.
O Futuro das Cargas de Trabalho na Nuvem
O cenário da computação em nuvem continua a evoluir, e entender as nuances da gestão de custos é vital. As empresas não devem apenas focar em otimizações de tempo, mas também incorporar medidas de economia de custos em seus processos de decisão.
Aproveitando diferentes modelos de preços e entendendo o comportamento das cargas de trabalho analíticas, as organizações podem melhorar suas análises em nuvem enquanto simultaneamente reduzem seus custos gerais.
Conclusão
À medida que as empresas se movem cada vez mais para soluções em nuvem para análise de dados, entender os modelos de preços e como melhor aproveitá-los é crucial. Desenvolvendo estratégias que abordam tanto custos quanto tempos de execução, economias significativas podem ser alcançadas. Essa abordagem encoraja mais concorrência entre os provedores de nuvem, potencialmente reduzindo preços e beneficiando os usuários a longo prazo.
Investimentos em análise de dados na nuvem devem considerar tanto os custos imediatos quanto as oportunidades de economia a longo prazo, levando a uma melhor gestão de recursos e maior eficiência no manuseio das cargas de trabalho de dados.
Título: Saving Money for Analytical Workloads in the Cloud
Resumo: As users migrate their analytical workloads to cloud databases, it is becoming just as important to reduce monetary costs as it is to optimize query runtime. In the cloud, a query is billed based on either its compute time or the amount of data it processes. We observe that analytical queries are either compute- or IO-bound and each query type executes cheaper in a different pricing model. We exploit this opportunity and propose methods to build cheaper execution plans across pricing models that complete within user-defined runtime constraints. We implement these methods and produce execution plans spanning multiple pricing models that reduce the monetary cost for workloads by as much as 56%. We reduce individual query costs by as much as 90%. The prices chosen by cloud vendors for cloud services also impact savings opportunities. To study this effect, we simulate our proposed methods with different cloud prices and observe that multi-cloud savings are robust to changes in cloud vendor prices. These results indicate the massive opportunity to save money by executing workloads across multiple pricing models.
Autores: Tapan Srivastava, Raul Castro Fernandez
Última atualização: 2024-07-31 00:00:00
Idioma: English
Fonte URL: https://arxiv.org/abs/2408.00253
Fonte PDF: https://arxiv.org/pdf/2408.00253
Licença: https://creativecommons.org/licenses/by/4.0/
Alterações: Este resumo foi elaborado com a assistência da AI e pode conter imprecisões. Para obter informações exactas, consulte os documentos originais ligados aqui.
Obrigado ao arxiv pela utilização da sua interoperabilidade de acesso aberto.