← Cloudflare Vectorize / vectorize / best-practices
Список векторов
Операция list-vectors позволяет перечислить все идентификаторы векторов в индексе Vectorize с помощью запросов с пагинацией. В этом руководстве описаны рекомендации по эффективному использованию этой операции.
Когда использовать list-vectors
Используйте list-vectors для:
- Массовые операции: для обработки всех векторов в индексе
- Аудит: для проверки содержимого индекса или формирования отчётов
- Миграция данных: для перемещения векторов между индексами или системами
- Операции очистки: для выявления и удаления устаревших векторов
Поведение пагинации
Операция list-vectors использует пагинацию на основе курсора с важными гарантиями согласованности данных:
Согласованность снимков
Возвращаемые идентификаторы векторов относятся к снимку индекса, созданному в момент первого запроса list-vectors. Это обеспечивает согласованную пагинацию, даже если индекс изменяется в процессе итерации:
- Новые векторы: векторы, добавленные после первоначального запроса, не будут отображаться в последующих результатах пагинации
- Удалённые векторы: векторы, удалённые после первоначального запроса, будут по-прежнему появляться в оставшихся ответах до завершения пагинации
Начало новой итерации
Чтобы увидеть недавно добавленные или удалённые векторы, необходимо начать новую последовательность запросов list-vectors (без курсора). Это фиксирует новый снимок состояния индекса.
Структура ответа
Каждый ответ включает:
count: количество векторов, возвращённых в этом ответеtotalCount: общее количество векторов в индексеisTruncated: показывает, доступны ли ещё векторыnextCursor: курсор для следующей страницы (null, если результатов больше нет)cursorExpirationTimestamp: временная метка истечения срока действия курсораvectors: массив идентификаторов векторов
Истечение срока действия курсора
У курсоров есть метка времени истечения срока действия. Если срок действия курсора истёк, для продолжения постраничной навигации потребуется начать новую последовательность запросов list-vectors.
Особенности производительности
Обеспечьте достаточный интервал между последовательными запросами, чтобы не столкнуться с ограничением частоты запросов.
Пример рабочего процесса
Ниже приведён типичный алгоритм обработки всех векторов в индексе:
# Start iteration
wrangler vectorize list-vectors my-index --count=1000
# Continue with cursor from response
wrangler vectorize list-vectors my-index --count=1000 --cursor="<cursor-from-response>"
# Repeat until no more results