У Milvus очень низкая скорость индексации на процессоре при 150 тыс. записей.
мы используем milvus с конфигурациями по умолчанию для развертывания ЦП, с каждой новой записью, загруженной в milvus, мы перестраивали индекс внутри milvus для этой коллекции, однако мы заметили увеличение времени, необходимого для построения индекса (когда количество записей в одной рабочей области достигло примерно 150K ), которые прошли примерно за полминуты
поэтому мы убрали построение индекса вручную, чтобы позволить milvus перестраиваться на основе, но тут что-то было не так, поскольку поиск в другой рабочей области, которая была правильно проиндексирована до отключения ручного индексирования, стал намного медленнее, чем раньше.
так что мои вопросы?
- может ли неиндексированный workpsace повлиять на индекс в рабочей области?
- почему вставка и построение индекса занимают так много времени?
- как выбрать идеальный
index_file_size
? есть ли у вас какие-либо предложения в целом по работе сcpu
Милвус в производстве?
1 ответ
Я предполагаю, что вы используете Milvus 1.x. Я не знаком с выражением «рабочая область», я предполагаю, что вы имеете в виду коллекцию или раздел
На ваш первый вопрос:
can index in a workspace be affected by non indexed workpsace ?
Я предполагаю, что вы спрашиваете: может ли коллекция, которая не индексируется, повлиять на текущую задачу индексирования коллекции.
О: Конечно, Milvus 1.x — это автономное решение, и разные задачи используют один и тот же ресурс. Хотя вторая коллекция не индексируется, задача поиска по-прежнему может занимать много ресурсов, так как это задача с высокой нагрузкой на ЦП.
why inserting and building the index take this very long time ?
Вставка не должна занимать много времени, проверьте, тратится ли время на сетевой ввод-вывод. Построение индекса — это очень ресурсоемкая задача ЦП, и она может занять относительно больше времени в зависимости от размера данных, типа индекса и машины, на которой размещается Milvus. Если время слишком велико, вы можете рассмотреть возможность использования графического процессора или переключения на другой тип индекса.
how to choose the perfect index_file_size ? do you have any suggestions in general working with cpu milvus in production ?
Если данные не добавляются постоянно, большой index_file_size может иметь большое преимущество в производительности поиска. Однако, если есть недавно добавленные данные, вы хотели бы иметь меньший index_file_size, так как вставляемый сегмент не индексируется, что может снизить общую производительность поиска.
Что касается влияния index_file_size на производительность построения индекса, мы предполагаем, что количество векторов
N
, сложность построения индекса ЭКО составляет
O(θ * N)
, θ - постоянное число. На общую стоимость не должен влиять index_file_size.