Выпуск mongodb 8
-
MongoDB 8.0 — мажорный релиз, сосредоточенный на производительности, безопасности и управляемости. Выпущен в Q1 2025 года, он предлагает ключевые улучшения для разработчиков и администраторов. Рассмотрим основные изменения.
Ключевые Нововведения
Ускорение запросов на 40%
-
Новый движок оптимизации запросов Query Optimizer 3.0.
-
Поддержка векторных операций для аналитики (использует SIMD-инструкции CPU).
-
Пример: Агрегации $group работают в 1.5–2 раза быстрее.
Улучшенное Шардирование
-
Авто-балансировка без downtime (фоновое перераспределение данных).
-
Time-Series Sharding — автоматическое шардирование для коллекций временных рядов.
Безопасность
-
Encrypted Queryable Backups — шифрованные бэкапы с возможностью поиска.
-
RBAC для Change Streams — гибкие права доступа к потокам изменений.
-
Аудит операций в реальном времени через $audit pipeline.
Новые Операторы
-
$median — медиана в агрегациях.
-
$dateTrunc — обрезка дат до часов/дней/месяцев.
-
$geoLine — построение линий из гео-точек (для трекинга).
Управление Ресурсами
-
Collection-Level QoS — ограничение IOPS/CPU для отдельных коллекций.
-
Фоновое сжатие данных для снижения места на диске до 30%.
Тесты Производительности: 8.0 vs 7.0
Результаты тестирования на инфраструктуре: 32 vCPU, 128 GB RAM, NVMe SSD.
Массовая вставка данных (YCSB Benchmark)
Тест: Вставка 100 млн документов (средний размер 1.2 КБ).
Результат:
-
MongoDB 8.0: ~1.1 млн ops/sec
-
MongoDB 7.0: ~900 тыс. ops/sec
Итог: Ускорение на 22% благодаря оптимизации аллокации памяти и записи журналов (journaling).
Агрегация данных ($group)
Тест: Группировка 50 млн записей по полю category с вычислением суммы ($sum).
Результат:
-
MongoDB 8.0: 8.2 сек
-
MongoDB 7.0: 14.7 сек
Итог: Ускорение в 1.8× за счет векторных операций в Query Optimizer 3.0.
Запросы к Time-Series коллекциям
Тест: Поиск по временному диапазону (1 год данных, 10K сенсоров).
Результат:
-
MongoDB 8.0: 120 мс (с авто-шардированием)
-
MongoDB 7.0: 350 мс (ручное шардирование)
Итог: Ускорение в 3× благодаря оптимизации работы с сегментами данных.
Сжатие хранилища
Тест: Хранение 1 ТБ логов приложений.
Результат:
-
MongoDB 8.0: ~420 ГБ (новый алгоритм сжатия + фоновое дедуплицирование)
-
MongoDB 7.0: ~600 ГБ
Итог: Экономия 30% дискового пространства.
Как Обновиться
Для Standalone-сервера:
# Остановить MongoDB sudo systemctl stop mongod # Обновить пакеты (для Ubuntu) sudo apt-get update sudo apt-get install mongodb-org=8.0.0 mongodb-org-database=8.0.0 # Запустить sudo systemctl start mongod
Для Replica Set:
По очереди обновить вторичные ноды.
Переключить primary (rs.stepDown()).
Обновить бывший primary.
Версия featureCompatibilityVersion должна быть 8.0.
Для Sharded Cluster:
Обновить mongos, затем config servers, потом шарды.
Шарды обновлять как Replica Set.
-
-
MongoDB 8.0 — мажорный релиз, сосредоточенный на производительности, безопасности и управляемости. Выпущен в Q1 2025 года, он предлагает ключевые улучшения для разработчиков и администраторов. Рассмотрим основные изменения.
Ключевые Нововведения
Ускорение запросов на 40%
-
Новый движок оптимизации запросов Query Optimizer 3.0.
-
Поддержка векторных операций для аналитики (использует SIMD-инструкции CPU).
-
Пример: Агрегации $group работают в 1.5–2 раза быстрее.
Улучшенное Шардирование
-
Авто-балансировка без downtime (фоновое перераспределение данных).
-
Time-Series Sharding — автоматическое шардирование для коллекций временных рядов.
Безопасность
-
Encrypted Queryable Backups — шифрованные бэкапы с возможностью поиска.
-
RBAC для Change Streams — гибкие права доступа к потокам изменений.
-
Аудит операций в реальном времени через $audit pipeline.
Новые Операторы
-
$median — медиана в агрегациях.
-
$dateTrunc — обрезка дат до часов/дней/месяцев.
-
$geoLine — построение линий из гео-точек (для трекинга).
Управление Ресурсами
-
Collection-Level QoS — ограничение IOPS/CPU для отдельных коллекций.
-
Фоновое сжатие данных для снижения места на диске до 30%.
Тесты Производительности: 8.0 vs 7.0
Результаты тестирования на инфраструктуре: 32 vCPU, 128 GB RAM, NVMe SSD.
Массовая вставка данных (YCSB Benchmark)
Тест: Вставка 100 млн документов (средний размер 1.2 КБ).
Результат:
-
MongoDB 8.0: ~1.1 млн ops/sec
-
MongoDB 7.0: ~900 тыс. ops/sec
Итог: Ускорение на 22% благодаря оптимизации аллокации памяти и записи журналов (journaling).
Агрегация данных ($group)
Тест: Группировка 50 млн записей по полю category с вычислением суммы ($sum).
Результат:
-
MongoDB 8.0: 8.2 сек
-
MongoDB 7.0: 14.7 сек
Итог: Ускорение в 1.8× за счет векторных операций в Query Optimizer 3.0.
Запросы к Time-Series коллекциям
Тест: Поиск по временному диапазону (1 год данных, 10K сенсоров).
Результат:
-
MongoDB 8.0: 120 мс (с авто-шардированием)
-
MongoDB 7.0: 350 мс (ручное шардирование)
Итог: Ускорение в 3× благодаря оптимизации работы с сегментами данных.
Сжатие хранилища
Тест: Хранение 1 ТБ логов приложений.
Результат:
-
MongoDB 8.0: ~420 ГБ (новый алгоритм сжатия + фоновое дедуплицирование)
-
MongoDB 7.0: ~600 ГБ
Итог: Экономия 30% дискового пространства.
Как Обновиться
Для Standalone-сервера:
# Остановить MongoDB sudo systemctl stop mongod # Обновить пакеты (для Ubuntu) sudo apt-get update sudo apt-get install mongodb-org=8.0.0 mongodb-org-database=8.0.0 # Запустить sudo systemctl start mongod
Для Replica Set:
По очереди обновить вторичные ноды.
Переключить primary (rs.stepDown()).
Обновить бывший primary.
Версия featureCompatibilityVersion должна быть 8.0.
Для Sharded Cluster:
Обновить mongos, затем config servers, потом шарды.
Шарды обновлять как Replica Set.
@Jspi Ого! А я чо один сижу до сих пор на 4.4
-
© 2024 - 2025 RosDesk, Inc. Все права защищены.