ਦਸਤਾਵੇਜ਼-ਅਧਾਰਿਤ DBMS MongoDB 5.0 ਉਪਲਬਧ ਹੈ

Представлен выпуск документо-ориентированной СУБД MongoDB 5.0, которая занимает нишу между быстрыми и масштабируемыми системами, оперирующими данными в формате ключ/значение, и реляционными СУБД, функциональными и удобными в формировании запросов. Код MongoDB написан на языке C++ и распространяется под лицензией SSPL, которая основана на лицензии AGPLv3, но не является открытой, так как содержит дискриминирующее требование поставки под лицензией SSPL не только кода самого приложения, но и исходных текстов всех компонентов, вовлечённых в предоставление облачного сервиса.

ਮੋਂਗੋਡੀਬੀ JSON-ਵਰਗੇ ਫਾਰਮੈਟ ਵਿੱਚ ਦਸਤਾਵੇਜ਼ਾਂ ਨੂੰ ਸਟੋਰ ਕਰਨ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਸਵਾਲ ਪੈਦਾ ਕਰਨ ਲਈ ਕਾਫ਼ੀ ਲਚਕਦਾਰ ਭਾਸ਼ਾ ਹੈ, ਵੱਖ-ਵੱਖ ਸਟੋਰ ਕੀਤੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ ਲਈ ਸੂਚਕਾਂਕ ਬਣਾ ਸਕਦਾ ਹੈ, ਕੁਸ਼ਲਤਾ ਨਾਲ ਵੱਡੀਆਂ ਬਾਈਨਰੀ ਵਸਤੂਆਂ ਦੀ ਸਟੋਰੇਜ ਪ੍ਰਦਾਨ ਕਰਦਾ ਹੈ, ਡਾਟਾਬੇਸ ਵਿੱਚ ਡੇਟਾ ਨੂੰ ਬਦਲਣ ਅਤੇ ਜੋੜਨ ਲਈ ਓਪਰੇਸ਼ਨਾਂ ਦੇ ਲੌਗਿੰਗ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ, ਪੈਰਾਡਾਈਮ ਮੈਪ/ਰਿਡਿਊਸ ਦੇ ਅਨੁਸਾਰ ਕੰਮ ਕਰਦਾ ਹੈ, ਨੁਕਸ-ਸਹਿਣਸ਼ੀਲ ਸੰਰਚਨਾਵਾਂ ਦੀ ਨਕਲ ਅਤੇ ਨਿਰਮਾਣ ਦਾ ਸਮਰਥਨ ਕਰਦਾ ਹੈ।

ਮੋਂਗੋਡੀਬੀ ਕੋਲ ਸ਼ਾਰਡਿੰਗ ਪ੍ਰਦਾਨ ਕਰਨ ਲਈ ਬਿਲਟ-ਇਨ ਟੂਲ ਹਨ (ਇੱਕ ਖਾਸ ਕੁੰਜੀ ਦੇ ਅਧਾਰ ਤੇ ਸਰਵਰਾਂ ਵਿੱਚ ਡੇਟਾ ਦਾ ਇੱਕ ਸੈੱਟ ਵੰਡਣਾ), ਪ੍ਰਤੀਕ੍ਰਿਤੀ ਦੇ ਨਾਲ, ਤੁਹਾਨੂੰ ਇੱਕ ਖਿਤਿਜੀ ਤੌਰ ਤੇ ਸਕੇਲੇਬਲ ਸਟੋਰੇਜ ਕਲੱਸਟਰ ਬਣਾਉਣ ਦੀ ਆਗਿਆ ਦਿੰਦਾ ਹੈ ਜਿਸ ਵਿੱਚ ਅਸਫਲਤਾ ਦਾ ਕੋਈ ਵੀ ਬਿੰਦੂ ਨਹੀਂ ਹੁੰਦਾ ਹੈ (ਅਸਫਲਤਾ ਕਿਸੇ ਵੀ ਨੋਡ ਦਾ ਡੇਟਾਬੇਸ ਦੇ ਸੰਚਾਲਨ ਨੂੰ ਪ੍ਰਭਾਵਤ ਨਹੀਂ ਕਰਦਾ), ਅਸਫਲਤਾ ਤੋਂ ਬਾਅਦ ਆਟੋਮੈਟਿਕ ਰਿਕਵਰੀ ਅਤੇ ਇੱਕ ਅਸਫਲ ਨੋਡ ਤੋਂ ਲੋਡ ਦਾ ਟ੍ਰਾਂਸਫਰ। ਇੱਕ ਕਲੱਸਟਰ ਦਾ ਵਿਸਤਾਰ ਕਰਨਾ ਜਾਂ ਇੱਕ ਸਰਵਰ ਨੂੰ ਕਲੱਸਟਰ ਵਿੱਚ ਬਦਲਣਾ ਸਿਰਫ਼ ਨਵੀਆਂ ਮਸ਼ੀਨਾਂ ਨੂੰ ਜੋੜ ਕੇ ਡਾਟਾਬੇਸ ਨੂੰ ਰੋਕੇ ਬਿਨਾਂ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।

ਨਵੀਂ ਰੀਲੀਜ਼ ਦੀਆਂ ਵਿਸ਼ੇਸ਼ਤਾਵਾਂ:

  • Добавлены коллекции для данных в форме временного ряда (time series collections), оптимизированные для хранения срезов значений параметров, записываемых через определённые промежутки времени (время и набор соответствующих этому времени значений). Необходимость в хранении подобных данных возникает в системах мониторинга, финансовых платформах, системах опроса состояний датчиков. Работа с данными временного ряда осуществляется как с обычными коллекциями документов, но индексы и метод хранения для них оптимизированы с учётом привязки ко времени, что позволяет значительно сократить потребление места на диске, уменьшить задержки при выполнении запросов и реализовать возможность анализа данных в режиме реального времени.

    MongoDB рассматривает подобные коллекции как доступные на запись нематериализированные представления, созданные на базе внутренних коллекций и при вставке автоматически группирующие данные временного ряда в оптимизированный формат хранения. При этом каждая привязанная ко времени запись при запросе трактуется как отдельный документ. Данные автоматически упорядочиваются и индексируются по времени (нет необходимости в явном создании индексов по времени).

  • Добавлена поддержка оконных операторов (аналитических функций), позволяющих выполнить действия с определённым набором документов в коллекции. В отличие от агрегатных функций, оконные функции не свёртывают сгруппированный набор, а производят агрегирование на основе содержимого «окна», включающего один или более документов из результирующего набора. Для манипуляции с подмножеством документов предложена новая стадия $setWindowFields, при помощи которой можно, например, определить различия между двумя документами в коллекции, рассчитать рейтинг продаж и проанализировать информацию в сложных временных рядах.
  • Добавлена поддержка версионирования API, позволяющая привязать приложение к определённому состоянию API и исключить риски, связанные с возможным нарушением обратной совместимости при переходе на новые выпуски СУБД. Версионирование API отделяет жизненный цикл приложения от жизненного цикла СУБД и позволяет разработчикам вносить изменения в приложение тогда, когда возникла потребность задействовать новые возможности, а не когда выполняется переход на новую версию СУБД.
  • Добавлена поддержка механизма Live Resharding, позволяющего на лету менять используемые для сегментирования ключи (shard key) без остановки СУБД.
  • Расширены возможности шифрования полей на стороне клиента (Client-Side Field Level Encryption). Появилась возможность перенастройки фильтров аудита и ротации сертификатов x509 без остановки работы СУБД. Добавлена поддержка настройки набора шифров для TLS 1.3.
  • Предложена новая оболочка командной строки MongoDB Shell (mongosh), которая развивается как отдельный проект, написана на JavaScript с использованием платформы Node.js и распространяется под лицензией Apache 2.0. MongoDB Shell даёт возможность подключаться к СУБД, менять настройки и отправлять запросы. Поддерживается умное автодополнение ввода методов, команд и выражений MQL, подсветка синтаксиса, контекстная подсказка, разбор сообщений об ошибках и возможность расширения функциональности через дополнения. Старая CLI-оболочка «mongo» объявлена устаревшей и будет удалена в будущем выпуске.
    ਦਸਤਾਵੇਜ਼-ਅਧਾਰਿਤ DBMS MongoDB 5.0 ਉਪਲਬਧ ਹੈ
  • Добавлены новые операторы: $count, $dateAdd, $dateDiff, $dateSubtract, $sampleRate и $rand.
  • Обеспечено задействование индексов при использовании операторов $eq, $lt, $lte, $gt и $gte внутри выражения $expr.
  • В командах aggregate, find, findAndModify, update, delete и методах db.collection.aggregate(), db.collection.findAndModify(), db.collection.update() и db.collection.remove() реализована поддержка опции «let» для определения списка переменных, делающих команды более читаемые благодаря отделению переменных от текста запроса.
  • Операции find, count, distinct, aggregate, mapReduce, listCollections и listIndexes теперь не блокируются, если параллельно выполняется операция, выставляющая эксклюзивную блокировку на коллекцию документов.
  • В рамках инициативы по избавлению от неполиткорректных терминов команда isMaster и метод db.isMaster() переименованы в hello и db.hello().
  • Изменена схеме нумерации выпусков и осуществлён переход на предсказуемый график формирования релизов. Раз в год будет формироваться значительный релиз (5.0, 6.0, 7.0), раз в три месяца промежуточные выпуски с новыми возможностями (5.1, 5.2, 5.3) и по мере необходимости корректирующие обновления с исправлением ошибок и уязвимостей (5.1.1, 5.1.2, 5.1.3). В промежуточных выпусках будет формироваться функциональность для следующего значительного релиза, т.е. в MongoDB 5.1, 5.2 и 5.3 будет сформированы новые возможности для выпуска MongoDB 6.0.

ਸਰੋਤ: opennet.ru

ਇੱਕ ਟਿੱਪਣੀ ਜੋੜੋ