Práticas recomendadas do S3 Vectors
O Amazon S3 Vectors oferece armazenamento de vetores com propósito específico e custo otimizado para uso por aplicações habilitadas para IA e pesquisa semântica do conteúdo armazenado no Amazon S3. Projetado para oferecer elasticidade e durabilidade no nível do S3 para armazenar conjuntos de dados vetoriais com desempenho de consulta de menos de 1 segundo para consultas frias e de no mínimo 100 milissegundos para consultas quentes, o S3 Vectors é ideal para aplicações que precisam criar índices de vetores e aumentá-los. Com o S3 Vectors, você pode usar um conjunto dedicado de operações de API para armazenar, acessar e realizar consultas de similaridade em dados vetoriais sem provisionar nenhuma infraestrutura. Para obter mais informações, consulte Trabalhar com o S3 Vectors e buckets de vetores.
Para garantir os resultados máximos com a execução do S3 Vectors, sugerimos que você siga as práticas recomendadas apresentadas abaixo.
- Inserir e excluir vetores
-
Sua aplicação pode receber até 1.000 solicitações PutVectors ou DeleteVectors por segundo por índice de vetores ou inserir ou excluir até 2.500 vetores por segundo por índice de vetores, o limite que for atingido primeiro. Se você exceder as taxas de solicitação, poderá receber o erro
429 TooManyRequestsException.Para otimizar os custos, recomendamos inserir e excluir vetores em lotes grandes, até o tamanho máximo de lote de 500 vetores por solicitação de API. Se a workload exigir lotes menores, você poderá enviar solicitações simultâneas até o limite de 1.000 solicitações por segundo. Para alcançar o throughput máximo de 2.500 vetores por segundo, você pode enviar 5 lotes por segundo com 500 vetores cada ou 1.000 lotes por segundo com uma média de 2,5 vetores cada.
- Acessar e consultar vetores em um índice de vetores do S3
-
Sua aplicação pode obter centenas de solicitações QueryVectors, GetVectors ou ListVectors por segundo por índice de vetores do S3. Se você exceder as taxas de solicitação, poderá receber o erro
429 TooManyRequestsException. Recomendamos que você use um mecanismo de nova tentativa e configure sua aplicação para enviar menos solicitações. - Aumentar os índices de vetores
-
Para melhorar o desempenho da consulta por índice de vetores, considere a possibilidade de configurar sua aplicação para dividir os vetores em vários índices de vetores quando possível. Por exemplo, se você tem workloads multilocatário e sua aplicação consulta cada locatário de forma independente, considere a possibilidade de armazenar os vetores de cada locatário em um índice de vetores separado. Para obter mais informações, consulte Índices de vetores.
- Implementar a multilocação com índices de vetores separados
-
Você pode obter multilocação organizando seus dados vetoriais por meio de um único índice de vetores para cada locatário. É possível usar políticas de bucket e do IAM para restringir o acesso de cada locatário somente ao índice de vetores designado. Essa abordagem ajuda a manter o isolamento dos dados e simplifica o gerenciamento, eliminando a necessidade de criar buckets separados para cada locatário. Para obter mais informações, consulte Gerenciamento de identidade e acesso no S3 Vectors.
- Configurar campos de metadados não filtráveis para índices de vetores
-
Ao criar um índice de vetores, configure campos de metadados que não exijam filtragem, como chaves de metadados não filtráveis. Por exemplo, armazene fragmentos de texto para incorporações de vetores como campos de metadados não filtráveis quando precisar deles somente para referência. Para obter mais informações, consulte Metadados não filtráveis.