Escalone a capacidade de processamento do endpoint para alto QPS

Importante

Esse recurso está em Visualização Pública.

Por padrão, os endpoints padrão suportam 20 a 200 QPS, dependendo do tamanho do índice. Aplicativos em tempo real, como barras de pesquisa, sistemas de recomendação e correspondência de entidades, geralmente exigem 100 a mais de 1000 QPS. Somente em endpoints padrão, você pode definir um QPS alvo. O Databricks provisiona a infraestrutura para corresponder melhor a esse nível de taxa de transferência (melhor esforço, não garantido).

Importante

Definir um QPS alvo provisiona capacidade adicional, o que aumenta o custo do endpoint. Você é cobrado por essa capacidade adicional, independentemente do tráfego de consulta real. O dimensionamento da taxa de transferência é o melhor esforço e não é garantido durante a Visualização Pública.

Use QPS alto quando:

  • Seu aplicativo requer uma taxa de transferência sustentada de mais de 50 QPS.
  • Você recebe 429 erros (Muitas Solicitações) sob carga normal.
  • A latência diminui à medida que o tráfego aumenta, mesmo quando a utilização média aparece baixa.

Requirements

  • O QPS alto está disponível apenas para endpoints padrão. Não há suporte para endpoints otimizados para armazenamento.
  • Use a autenticação de principal de serviço (OAuth) para cargas de trabalho de produção de alto QPS. O tráfego do service principal passa por redes otimizadas para desempenho, projetadas para cargas de trabalho de alto QPS. Os PATs (tokens de acesso pessoal) trafegam por redes limitadas a algumas poucas dezenas de QPS — adequado para prototipagem, mas não para produção. Consulte o uso de princípios de serviço com tokens OAuth.

Configurar o QPS de destino

Defina um QPS de destino ao criar um novo ponto de extremidade ou atualizar um existente. A capacidade adicional necessária para corresponder da melhor forma à taxa de transferência desejada é alocada automaticamente. Na Visualização Pública, o dimensionamento da taxa de transferência é o melhor esforço e não é garantido: o QPS real depende do tamanho do índice, da dimensionalidade do vetor, da complexidade da consulta e do uso do filtro.

Interface do usuário do Databricks

Ao criar um novo ponto de extremidade:

  1. Na barra lateral esquerda, clique em Computação.

  2. Clique na guia Pesquisa de Vetor e clique em Criar ponto de extremidade.

    Criar processamento de pesquisa vetorial.

  3. Em Configurações Avançadas, insira o valor QPS de destino.

    Crie um diálogo de ponto de extremidade de busca em vetores.

Ao atualizar um ponto de extremidade existente:

  1. Navegue até a página de detalhes do ponto de extremidade.

  2. No painel direito, clique no ícone de lápis. ao lado de QPS de destino.

    Editar QPS de destino.

  3. Insira o novo valor e clique em Salvar.

    Insira o valor de QPS de destino.

SDK do Python

from databricks.vector_search.client import VectorSearchClient

client = VectorSearchClient()

# Create a new endpoint with target QPS
endpoint = client.create_endpoint(
    name="my-high-qps-endpoint",
    endpoint_type="STANDARD",
    target_qps=500,
)

# Update an existing endpoint's target QPS
response = client.update_endpoint(name="my-endpoint", target_qps=500)

# Check scaling status
scaling_info = response.get("endpoint", {}).get("scaling_info", {})
print(f"Requested target QPS: {scaling_info.get('requested_target_qps')}")
print(f"State: {scaling_info.get('state')}")
# State is "SCALING_CHANGE_IN_PROGRESS" while capacity is being provisioned,
# then transitions to "SCALING_CHANGE_APPLIED"

API REST

Crie um endpoint com o QPS desejado:

POST /api/2.0/vector-search/endpoints
{
  "name": "my-high-qps-endpoint",
  "endpoint_type": "STANDARD",
  "target_qps": 500
}

Atualize o QPS de destino em um endpoint existente:

PATCH /api/2.0/vector-search/endpoints/<ENDPOINT_NAME>
{
  "target_qps": 500
}

Verifique o status de dimensionamento:

GET /api/2.0/vector-search/endpoints/<ENDPOINT_NAME>

O campo de resposta scaling_info mostra o requested_target_qps e o dimensionamento state. O estado é SCALING_CHANGE_IN_PROGRESS enquanto a capacidade está sendo provisionada e, em seguida, faz a transição para SCALING_CHANGE_APPLIED.

Como o dimensionamento se aplica

Depois de definir um QPS de destino, a capacidade necessária será provisionada automaticamente. O novo nível de taxa de transferência se aplica após a conclusão do provisionamento; você não precisa sincronizar índices para disparar a alteração.

Observação

A tentativa de atualizar o QPS de destino enquanto uma operação de dimensionamento está em andamento retorna um RESOURCE_CONFLICT erro. Aguarde a conclusão da operação atual antes de tentar novamente.

Limitações

  • Sem dimensionamento automático: você deve definir o QPS de destino manualmente com base no tráfego esperado. Se o tráfego exceder o nível provisionado, ocorrerão 429 erros. Consulte o Plano para picos de consulta.
  • Somente pontos de extremidade padrão: pontos de extremidade com otimização de armazenamento não dão suporte target_qps.