Técnicas de otimização de custos para o Amazon OpenSearch Service - OpenSearch Serviço Amazon

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Técnicas de otimização de custos para o Amazon OpenSearch Service

A seguir estão algumas das técnicas mais usadas para otimizar custos ao usar o Amazon OpenSearch Service — tanto clusters gerenciados quanto sem servidor. Como cada carga de trabalho é única, avalie essas estratégias em relação aos seus padrões de uso específicos e valide-as em um ambiente de teste antes de aplicá-las à produção.

Otimização de custos para clusters gerenciados do Amazon OpenSearch Service

Fonte derivada — Ignore o armazenamento do campo _source

A fonte derivada é um recurso de otimização de armazenamento que elimina a sobrecarga de armazenar o _source campo:

  • OpenSearch armazena cada documento ingerido duas vezes: uma vez no _source campo (documento bruto) e uma vez como campos indexados para pesquisa.

  • O _source campo sozinho pode consumir um espaço de armazenamento significativo — geralmente de 30 a 50% do armazenamento total do índice.

  • Com o Derived Source, você pula o armazenamento _source e, em vez disso, o reconstrói dinamicamente a partir de campos indexados quando necessário (durante operações de pesquisa, obtenção, mget, reindexação ou atualização).

  • Isso é opcional, ativado na criação do índice usando configurações de índice composto.

  • Disponível em todas as regiões em que a OpenSearch versão 3.1 ou posterior é suportada.

Ideal para: cargas de trabalho analíticas e de registro nas quais você não precisa recuperar o documento original bruto com frequência, mas ainda precisa pesquisar e agregar campos.

Para obter mais informações, consulte a documentação de código aberto e o anúncio do What's New.

OR1 / OR2 / OM2 instances — OpenSearch -famílias de instâncias otimizadas

OR1 e as OM2 instâncias mais recentes OR2 usam o Amazon S3 para armazenamento de réplicas por meio da replicação de segmentos:

  • OR2: Taxa de transferência de indexação até 26% maior do que as OR1 instâncias R7g.

  • OM2: taxa de transferência de indexação até 15% maior do que as OR1 instâncias M7g.

  • Ambos usam a mesma arquitetura: EBS local para armazenamento primário e S3 para durabilidade.

  • Elimina o custo de armazenamento de réplicas — réplicas armazenadas no S3 (durabilidade de 11 a nove) em vez de volumes caros do EBS.

  • Melhoria de até 30% no preço-desempenho em relação às instâncias da geração anterior.

  • Suporta instantâneos superficiais v2 — instantâneos quase instantâneos sem sobrecarga. I/O

Ideal para: análises operacionais pesadas e cargas de trabalho de análise de registros.

Para obter mais informações, consulte o anúncio OR2 e OM2 o tópico O que há de novo e o guia do OpenSearch Instâncias otimizadas para domínios OpenSearch do Amazon Service desenvolvedor.

Rollups de índices — dados agregados de séries temporais históricas

Os pacotes cumulativos de índices resumem e compactam dados de séries temporais mais antigos em intervalos de tempo mais aproximados, reduzindo drasticamente o volume de armazenamento:

  • Dados de IoT/sensores: mantenha os dados por segundo em um armazenamento dinâmico dos últimos períodos; faça resumos horários ou diários dos dados mais antigos.

  • Métricas do sistema: mantenha métricas detalhadas dos últimos 30 dias; agregue dados antigos em resumos horários ou diários.

  • Dados de registro: preserve todos os detalhes da janela ativa de solução de problemas (por exemplo, 1 semana); mantenha padrões de erro resumidos para períodos anteriores.

  • Combine com as políticas do ISM para automatizar a migração cumulativa e hierárquica em uma única política de ciclo de vida.

  • Maior economia ao agregar de segundos a horas versus segundos a minutos.

Para obter mais informações, consulte a postagem do blog Index Rollups.

Gerenciamento do estado do índice — automatize o ciclo de vida completo dos dados

As políticas do ISM automatizam a movimentação de índices por meio de níveis de armazenamento e ações de ciclo de vida:

  • Migre índices automaticamente: de quente para frio UltraWarm para excluir, com base na idade, tamanho ou contagem de documentos.

  • Acione os rollups antes das transições de nível para reduzir o volume de dados.

  • Defina políticas de rollover (por exemplo, quando um índice atinge 50 GB ou tem 30 dias) para controlar o crescimento do índice.

  • Automatize a mesclagem forçada em índices somente para leitura para recuperar o armazenamento de documentos excluídos.

  • Combine com pacotes cumulativos para obter o máximo de economia em grandes conjuntos de dados de séries temporais.

Instâncias reservadas — comprometa-se com descontos previsíveis

Para cargas de trabalho analíticas estáveis e previsíveis, as instâncias reservadas oferecem descontos significativos em relação aos preços sob demanda:

  • Termos de compromisso de 1 ou 3 anos sem opções de pagamento adiantado, adiantado parcial ou totalmente adiantado.

  • Ideal para nós de dados de camada ativa e nós mestres dedicados que funcionam continuamente.

  • Use a Calculadora AWS de Preços para estimar a economia antes de se comprometer.

  • As instâncias reservadas são um desconto de cobrança aplicado às instâncias sob demanda, sem necessidade de alterações na infraestrutura.

Tipos e contagem de instâncias do tamanho certo

Principais orientações do OpenSearch Well-Architected Lens e as melhores práticas de dimensionamento correto:

  • Sempre use a última geração de instâncias (por exemplo, as instâncias Graviton3 oferecem desempenho até 25% melhor do que as instâncias baseadas em Graviton2).

  • Use volumes EBS gp3 em vez de gp2 — melhor desempenho a um custo menor sem custo adicional.

  • Combine o tipo de instância com a carga de trabalho: otimizado para memória para pesquisas pesadas, otimizado para computação para indexação pesada.

  • Avalie os nós dedicados do gerenciador de cluster: necessários apenas para 3 ou mais nós de dados; evite provisionar em excesso o tamanho do nó principal.

  • Monitore CloudWatch métricas para detectar o excesso de provisionamento: CPU sustentada abaixo de 40%, JVM abaixo de 50% e armazenamento abaixo de 50% são sinais de desperdício.

  • Intervalos ideais: CPU de 60 a 80%, JVM de 65 a 85%, armazenamento de 70 a 85% para cargas de trabalho sustentadas.

Para obter mais informações, consulte a postagem do blog sobre as melhores práticas de dimensionamento correto.

Otimização de fragmentos — Evite fragmentação excessiva

A fragmentação excessiva é um fator de custo oculto — muitos fragmentos pequenos desperdiçam CPU, memória e pilha de JVM:

  • Tamanhos de fragmento recomendados: 10—50 GiB por fragmento, dependendo da carga de trabalho.

  • Não mais do que 25 fragmentos por GiB de heap Java, não mais do que 1.000 fragmentos por nó de dados.

  • Use as políticas de rollover do ISM para controlar o crescimento do índice e evitar a proliferação ilimitada de fragmentos.

  • Reduza o número de réplicas onde a durabilidade permitir (OR1/OR2 as instâncias eliminam totalmente a necessidade de réplicas).

  • Use a mesclagem forçada em índices somente de leitura para reduzir a contagem de segmentos e recuperar o armazenamento.

Para obter mais informações, consulte Quantos fragmentos eu preciso?

Zero-ETL//Consulta direta com o Amazon S3

Para dados que raramente são consultados, mas que precisam permanecer acessíveis, o Direct Query (sem ETL com S3) permite consultar dados do S3 diretamente sem ingeri-los: OpenSearch

  • Sem custo de ingestão — os dados permanecem no S3.

  • Sem custo de armazenamento de alto nível para dados de arquivamento.

  • Pay-per-query modelo computacional.

  • Suporta OpenSearch painéis para visualização.

  • A latência de segundos ou minutos é aceitável — não para casos de uso em tempo real.

Amostragem e compressão na ingestão

Reduza os custos antes mesmo que os dados cheguem a OpenSearch:

  • Amostragem: consuma somente um subconjunto representativo de fluxos de registros de alto volume (por exemplo, 10% dos registros de depuração).

  • Compressão de índice: ative o melhor codec de compressão para reduzir o espaço de armazenamento.

  • Filtragem de campos: elimine campos de alta cardinalidade e baixo valor antes da indexação (por exemplo, rastreamentos de pilha brutos para registros antigos).

  • Políticas de retenção: defina janelas máximas de retenção alinhadas aos requisitos de conformidade — nunca armazene dados indefinidamente.

Evite custos de suporte estendidos — mantenha-se atualizado sobre as versões do motor

O Amazon OpenSearch Service cobra uma taxa fixa por hora de instância normalizada para as versões do mecanismo no Extended Support:

  • Permanecer em versões mais antigas e sem suporte gera cobranças adicionais além dos custos da instância.

  • Atualize para as versões atuais suportadas para evitar taxas de Extended Support.

Etiquetas e monitoramento de alocação de custos CloudWatch

A governança proativa de custos evita o desperdício:

  • Aplique etiquetas de alocação de custos aos OpenSearch domínios para monitorar detalhadamente os custos por equipe ou carga de trabalho.

  • Defina CloudWatch alarmes para utilização do armazenamento, pressão da JVM e CPU para detectar o excesso de provisionamento mais cedo.

  • Use o AWS Cost Explorer para identificar domínios com baixa utilização consistente.

  • Avalie o ajuste automático — ajusta automaticamente o tamanho da pilha da JVM e outras configurações para melhorar o desempenho e reduzir o desperdício de recursos.

Otimização de custos para Amazon OpenSearch Service Serverless

Pesquisa vetorial otimizada em disco (coleções de vetores)

A pesquisa vetorial otimizada em disco é uma das técnicas mais poderosas de redução de custos para cargas de trabalho vetoriais. Ele executa a pesquisa vetorial por uma fração do custo do modo na memória, mantendo somente vetores compactados na RAM e armazenando vetores de precisão total no disco.

Como funciona:

  • No modo standard (in_memory), o gráfico HNSW completo é carregado na RAM, o que se torna proibitivamente caro em grande escala.

  • No on_disk modo, somente vetores compactados (quantizados) são mantidos na memória para geração de candidatos; vetores de precisão total são recuperados do disco somente para a fase final de repontuação (pesquisa em duas fases).

  • Isso reduz drasticamente os requisitos de RAM e, ao mesmo tempo, mantém a alta qualidade da pesquisa.

  • O on_disk modo padrão usa quantização binária de 32x — reduzindo os requisitos de memória em 97% em relação ao modo na memória.

  • Suporta níveis de compressão: 2x (FP16), 4x (byte), 8x, 16x, 32x (binário).

  • Latência P90 na faixa de 100 a 200 ms — adequada para cargas de trabalho que não exigem tempos de resposta de um dígito em milissegundos.

Benchmarks de economia de custos:

Conjunto de dados Relembre @100 Latência P90 Redução de custos
Coerência TREC-RAG 0,94 104 ms 83%
Tabelas B-1M 0,96 7 ms 67%
Marco-1M 0,99 7 ms 67%

Ideal para: pipelines de RAG, pesquisa semântica, recuperação de documentos e qualquer carga de trabalho vetorial em que a latência P90 de 100 a 200 ms seja aceitável e a redução de custos seja uma prioridade.

nota

Para aplicar essa alteração aos dados indexados existentes, você precisa reindexar. Você pode usar uma ferramenta de pipeline externa, como reindexar dados em um novo índice.

Para obter mais informações, consulte a postagem do blog Disk-Optimized Vector Search, a postagem no blog Quantization Techniques e. Trabalho com coleções de pesquisa vetorial

Otimização automática de vetores (coleções de vetores)

A otimização automática avalia automaticamente as configurações do índice vetorial e recomenda a melhor compensação entre qualidade de pesquisa, latência e custo de memória, sem exigir experiência em vetores:

  • Oferece recomendações de otimização em menos de uma hora.

  • Integrado com tubulações de ingestão de vetores.

  • Pode ser combinado com a indexação acelerada por GPU para bancos de dados vetoriais em escala de bilhões.

Para obter mais informações, consulte a postagem do blog Auto-Optimize.

Indexação vetorial acelerada por GPU (coleções de vetores)

A aceleração da GPU transfere a indexação vetorial HNSW para a tecnologia sem servidor GPUs, reduzindo drasticamente o tempo e o custo de OCU para criar grandes índices vetoriais:

  • Tempos de criação de índices de 6,4 a 13,8 vezes mais rápidos em comparação com a indexação somente com CPU.

  • Custo de OCU de indexação até 75% menor para cargas de trabalho vetoriais com muita gravação.

  • GPUs são conectados dinamicamente — você só paga OCUs quando a aceleração da GPU está ativa.

  • Permite que bancos de dados vetoriais em escala de bilhões sejam criados em menos de uma hora.

  • Carregado separadamente como aceleração vetorial OCUs.

Ideal para: ingestão inicial de vetores em grande escala ou cenários frequentes de retreinamento de modelos em que a reconstrução de índices é cara.

Para obter mais informações, consulte a postagem no blog sobre aceleração de GPU.

Defina limites máximos de OCU (todos os tipos de coleção)

O Amazon OpenSearch Service Serverless escala automaticamente OCUs com base na demanda. Sem um limite, os custos podem aumentar inesperadamente. Defina um limite máximo de OCU no nível da conta ou por grupo de coleta para evitar uma escalabilidade descontrolada. O sistema se expande até esse limite durante picos de carga, mas não o excederá.

Valores permitidos:

  • Nível da conta: qualquer valor de até 1.700 OCUs (não restrito a múltiplos de 16).

  • Grupos de coleta: 1, 2, 4, 8, 16 e múltiplos de 16 até OCUs 1.696.

Monitore CloudWatch métricas (OCUUtilization) para dimensionar corretamente sua configuração máxima de OCU ao longo do tempo.

nota

Se a utilização atingir o limite máximo da OCU, o desempenho poderá diminuir significativamente, mesmo que os custos estejam contidos. Atingir o limite não resolve a causa subjacente do pico da OCU. Para coleções de vetores, a causa raiz geralmente são os vetores na memória, que devem ser tratados diretamente otimizando a indexação vetorial, reduzindo o tamanho do índice ou ajustando as compensações de recuperação e precisão.

dica

Comece com uma OCU máxima conservadora e aumente somente quando CloudWatch mostrar uma utilização sustentada perto do limite. Se você atingir o limite de forma consistente, investigue a causa raiz — particularmente o uso de vetores na memória para coleções de vetores — em vez de simplesmente aumentar o limite.

Para obter mais informações, consulte Gerenciando limites de capacidade para Amazon OpenSearch Serverless.

Otimize o período de retenção (coleções de séries temporais)

As políticas de ciclo de vida dos dados excluem automaticamente os dados das coleções de séries temporais após um período de retenção especificado, evitando o crescimento ilimitado do armazenamento. Somente as coleções de séries temporais dão suporte às políticas de ciclo de vida dos dados; as coleções de buscas e vetoriais não.

A contagem de OCU para coleções de séries temporais é diretamente determinada pela quantidade de dados recentes que devem ser mantidos no armazenamento local. As coleções de séries temporais mantêm somente a parte mais recente dos dados no armazenamento local da OCU; os dados mais antigos são transferidos para o S3 e o número de dados é dimensionado de acordo: OCUs

OCUs obrigatório = máximo (mínimo OCUs, OCUs necessário para manter os dados dentro de sua janela de retenção)

Configurando políticas de ciclo de vida de dados:

  • Defina períodos de retenção de 24 horas a 3.650 dias por índice ou padrão de índice.

  • O Amazon OpenSearch Service Serverless exclui dados automaticamente com base no melhor esforço (normalmente dentro de 48 horas ou 10% do período de retenção).

  • As regras podem ser aplicadas no nível da coleção, no nível do padrão do índice ou no nível do índice individual — regras mais específicas têm precedência.

Exemplo de dimensionamento:

  • 1 TiB/day ingestão com retenção de 30 dias = aproximadamente 1 TiB de dados ativos = 20 OCUs para indexação + 20 para pesquisa. OCUs

  • Reduzir para uma retenção de 7 dias = aproximadamente 233 GiB de dados ativos = aproximadamente 4 OCUs para indexação + 4 para pesquisa. OCUs

Retenção mais curta significa menos dados ativos no armazenamento local, menos OCUs necessidade e menor custo computacional. Alinhe os períodos de retenção aos requisitos reais de negócios e conformidade — por padrão, não retenha dados indefinidamente.

Para obter mais informações, consulte Usando políticas de ciclo de vida de dados com o Amazon Serverless OpenSearch.

Evite armazenar dados desnecessários (todos os tipos de coleta)

Reduzir o volume de dados ingeridos reduz diretamente os custos de computação (OCUs) e armazenamento:

  • Filtrar campos na ingestão: use pipelines para eliminar campos de baixo valor antes que eles cheguem à coleção.

  • Evite ingerir dados duplicados ou redundantes: desduplique no nível do pipeline.

  • Use mapeamentos de índice apropriados: desative a indexação em campos que são armazenados, mas nunca pesquisados (). "index": false

  • Para coleções de pesquisa: evite armazenar grandes bolhas binárias ou texto bruto que aumente o armazenamento sem valor de pesquisa.

Grupos de coleta para cargas de trabalho de vários locatários (todos os tipos de coleção)

Os grupos de coleções permitem que várias coleções com chaves KMS diferentes compartilhem recursos da OCU dentro do mesmo limite de segurança, reduzindo drasticamente os custos de arquiteturas multilocatárias. Aplicável para clientes que usam várias chaves KMS por inquilino ou por coleção:

  • Anteriormente, cada chave KMS exclusiva exigia uma chave dedicada OCUs , tornando o isolamento por inquilino proibitivamente caro.

  • Com grupos de coleta, inquilinos com chaves de criptografia separadas podem compartilhar a capacidade da OCU.

  • Economia de custos de até 90% para grandes quantidades de cargas de trabalho de locatários menores.

  • Suporta tanto o mínimo OCUs (linha de base garantida, sem partidas a frio) quanto o máximo OCUs (limite de custo).

  • Coleções com diferentes tipos de acesso à rede (pública e VPC) podem coexistir no mesmo grupo.

  • CloudWatch as métricas fornecem visibilidade por grupo sobre o consumo e a latência de recursos.

Ideal para: provedores de SaaS, plataformas multilocatárias ou qualquer carga de trabalho com muitas coleções pequenas, cada uma exigindo sua própria chave KMS.

Para obter mais informações, consulte a postagem no blog do Collection Groups, o anúncio do que há de novo Grupos de OpenSearch coleção Amazon Serverless e.