Milvus представила MMap для переосмысленного управления данными и расширения возможностей хранения
Milvus - самое быстрое решение в области векторных баз данных с открытым исходным кодом, предназначенное для пользователей с высокими требованиями к производительности. Однако разнообразие потребностей пользователей отражает разнообразие данных, с которыми они работают. Для некоторых из них приоритетны бюджетные решения и обширные хранилища, а не высокая скорость. Понимая этот спектр требований, Milvus представляет функцию MMap, которая пересматривает способы работы с большими объемами данных и обещает экономическую эффективность без ущерба для функциональности.
Что такое MMap?
MMap, сокращение от memory-mapped files, устраняет разрыв между файлами и памятью в операционных системах. Эта технология позволяет Milvus отображать большие файлы непосредственно в пространство памяти системы, превращая файлы в непрерывные блоки памяти. Такая интеграция устраняет необходимость в явных операциях чтения или записи, кардинально меняя способ управления данными в Milvus. Она обеспечивает беспрепятственный доступ и эффективное хранение больших файлов или ситуаций, когда пользователям требуется произвольный доступ к файлам.
Кому полезно использование MMap?
Векторные базы данных требуют значительного объема памяти из-за требований к хранению векторных данных. С помощью функции MMap обработка большего количества данных в ограниченном объеме памяти становится реальностью. Однако за увеличение возможностей приходится платить производительностью. Система интеллектуально управляет памятью, вытесняя некоторые данные в зависимости от нагрузки и использования. Такое вытеснение позволяет Milvus обрабатывать больше данных при том же объеме памяти.
Во время наших тестов мы заметили, что при достаточном объеме памяти все данные остаются в памяти после периода прогрева, что сохраняет производительность системы. Однако с ростом объема данных производительность постепенно снижается. Поэтому мы рекомендуем использовать функцию MMap пользователям, менее чувствительным к колебаниям производительности.
Включение MMap в Milvus: простая настройка
Включить MMap в Milvus очень просто. Все, что вам нужно сделать, это изменить файл milvus.yaml
: добавить элемент mmapDirPath
в конфигурацию queryNode
и установить в качестве его значения действительный путь.
Баланс: производительность, хранение и системные ограничения
Шаблоны доступа к данным существенно влияют на производительность. Функция MMap в Milvus оптимизирует доступ к данным на основе локальности. MMap позволяет Milvus записывать скалярные данные непосредственно на диск для сегментов данных с последовательным доступом. Данные переменной длины, такие как строки, подвергаются сплющиванию и индексируются с помощью массива смещений в памяти. Такой подход обеспечивает локальность доступа к данным и устраняет накладные расходы на хранение каждой переменной длины отдельно. Оптимизация векторных индексов очень тщательна. MMap выборочно используется для векторных данных, сохраняя списки смежности в памяти, что позволяет сэкономить значительный объем памяти без ущерба для производительности.
Кроме того, MMap максимизирует обработку данных, минимизируя использование памяти. В отличие от предыдущих версий Milvus, где QueryNode копировал целые наборы данных, MMap использует оптимизированный процесс потоковой передачи данных без копирования во время разработки. Эта оптимизация значительно снижает затраты памяти.
Результаты наших внутренних тестов показывают, что Milvus может эффективно обрабатывать вдвое больший объем данных при использовании MMap.
Дальнейший путь: постоянные инновации и ориентированные на пользователя улучшения
Пока функция MMap находится на стадии бета-тестирования, команда Milvus стремится к постоянному совершенствованию. В будущих обновлениях будет улучшено использование памяти системы, что позволит Milvus поддерживать еще более обширные объемы данных на одном узле. Пользователи могут ожидать более детального контроля над функцией MMap, что позволит динамически изменять коллекции и использовать расширенные режимы загрузки полей. Эти усовершенствования обеспечивают беспрецедентную гибкость, позволяя пользователям адаптировать свои стратегии обработки данных к конкретным требованиям.
Заключение: новое определение совершенства обработки данных с помощью Milvus MMap
Функция MMap в Milvus 2.3 знаменует собой значительный скачок в технологии обработки данных. Благодаря тонкому балансу между производительностью, стоимостью и системными ограничениями Milvus позволяет пользователям эффективно и экономично обрабатывать огромные объемы данных. Продолжая развиваться, Milvus остается в авангарде инновационных решений, определяя границы достижимого в управлении данными.
Следите за новаторскими разработками, поскольку Milvus продолжает свой путь к непревзойденному совершенству обработки данных.
- Что такое MMap?
- Кому полезно использование MMap?
- Включение MMap в Milvus: простая настройка
- Баланс: производительность, хранение и системные ограничения
- Дальнейший путь: постоянные инновации и ориентированные на пользователя улучшения
- Заключение: новое определение совершенства обработки данных с помощью Milvus MMap
On This Page
Try Managed Milvus for Free
Zilliz Cloud is hassle-free, powered by Milvus and 10x faster.
Get StartedLike the article? Spread the word