The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Выпуск документ-ориентированной СУБД Apache CouchDB 2.3.0"
Версия для распечатки Пред. тема | След. тема
Форум Разговоры, обсуждение новостей
Исходное сообщение [ Отслеживать ]
Заметили полезную информацию ? Пожалуйста добавьте в FAQ на WIKI.
"Выпуск документ-ориентированной СУБД Apache CouchDB 2.3.0" +/
Сообщение от opennews (??), 17-Дек-18, 23:29 
Доступен (https://blog.couchdb.org/2018/12/06/2-3-0/) релиз распределённой документ-ориентированной базы данных Apache CouchDB 2.3.0 (http://couchdb.apache.org/downloads.html), относящейся к классу NoSQL-систем. Исходные тексты проекта распространяются (http://couchdb.apache.org/downloads.html) под лицензией Apache 2.0.

В новом выпуске устранена (https://seclists.org/oss-sec/2018/q4/255) уязвимость (CVE-2018-17188 (https://security-tracker.debian.org/tracker/CVE-2018-17188)), позволяющая удалённо поднять свои привилегии в системе (пользователь с правами администратора СУБД может получить доступ к окружению операционной системы с правами пользователя, под которым запускается CouchDB). Так как за последние два года это пятая уязвимость, связанная изменением конфигурации СУБД во время работы (ранее были исправлены похожие уязвимости CVE-2018-8007 (http://docs.couchdb.org/en/stable/cve/2018-8007.html), CVE-2018-11769 (http://docs.couchdb.org/en/stable/cve/2018-11769.html), CVE-2017-12636 (http://docs.couchdb.org/en/stable/cve/2017-12636.html) и 2017-12635 (http://docs.couchdb.org/en/stable/cve/2017-12635.html)), разработчики Apache CouchDB приняли решение (https://blog.couchdb.org/2018/12/17/cve-2018-17188/) полностью запретить изменение ключевых настроек СУБД через API. Настройки теперь могут быть изменены только при наличии shell-доступа к серверу.

Улучшения, реализованные в Apache CouchDB 2.3.0:

-  Добавлена поддержка кластерной очистки (http://docs.couchdb.org/en/2.3.0/cluster/purging.html#cluste... (clustered purge), позволяющая полностью удалить из БД  любой документ (удалённый или не удалённый) с любым числом ревизий и конфликтов;

-  Реализована новая настройка (seedlist), позволяющая администратору задать начальный список узлов, к которым новый узел должен обратиться на этапе запуска. Узды из данного списка, в случае доступности, автоматически будут добавлены в БД _nodes и использованы для репликации внутренних системных БД;

-  Добавлена возможность репликации с обращением к пирам, доступным только по IPv6;

-  Возвращено старое поведение CouchDB 1.x, связанное с указанием UUID сервера/кластера в ответе на запрос "GET /";
-  В реализации операции пакетного выполнения запроса (_bulk_get) появилась поддержка типов контента multipart/mixed и multipart/related;
-  Прекращено жёсткое задание размера буфера TCP для приёма данных (ранее устанавливался в 256KB), что позволяет операционной системе динамически корректировать размер буфера. Данное изменение  существенно увеличило производительность передачи по сети больших вложений;

-  Упрощено включение SSL в файле конфигурации, теперь достаточно создать секцию "[ssl]" с опцией "enable = true";

-  Все скрипты, написанные на языке Python, включая couchup и dev/run, для своего выполнения отныне требуют наличия Python 3.x;
-  Обеспечена совместимость с Erlang 21.x.

-  Встраиваемая версия инструментария rebar (https://github.com/rebar/rebar), используемого для сборки CouchDB, обновлена до последней версии ветки rebar2, что улучшило поддержку сборки на платформах, отличных от x86.


Напомним, что CouchDB хранит данные в формате упорядоченного списка и позволяет производить частичную репликацию данных между несколькими БД в режиме «мастер-мастер» с одновременным обнаружением и разрешением конфликтных ситуаций. Каждый сервер хранит свой локальный набор данных, синхронизированный с другими серверами, которые могут переводиться в offline-режим и периодически реплицировать изменения. В частности, данная возможность делает CouchDB привлекательным решением для организации синхронизации настроек программ между разными компьютерами. Решения на базе CouchDB внедрены в таких компаниях как BBC, Apple и CERN.


Запросы к CouchDB и индексация данных могут выполняться в соответствии с парадигмой MapReduce (http://ru.wikipedia.org/wiki/MapReduce), используя для формирования логики выборки данных язык JavaScript. Ядро системы написано на языке Erlang, оптимизированного для создания обслуживающих множество параллельных запросов распределенных систем. View-сервер написан на языке Си и базируется на JavaScript-движке от проекта Mozilla. Доступ к БД производится при помощи протокола HTTP с использованием RESTful JSON API, что позволяет обращаться к данным в том числе из выполняемых в браузере web-приложений.

В качестве единицы хранения данных выступает документ, имеющий уникальный идентификатор, версию и содержащий произвольный набор именованных полей в формате ключ/значение. Для организации псевдо-структурированного набора данных из произвольных документов (агрегирования и формирования выборок) применяется концепция формирования представлений (view), для определения которых используется язык JavaScript. На JavaScript также можно определять функции для проверки корректности данных при добавлении новых документов в рамках определенного представления.


URL: https://seclists.org/oss-sec/2018/q4/255
Новость: https://www.opennet.ru/opennews/art.shtml?num=49798

Ответить | Правка | Cообщить модератору

Оглавление
Выпуск документ-ориентированной СУБД Apache CouchDB 2.3.0, opennews, 17-Дек-18, 23:29  [смотреть все]
Форумы | Темы | Пред. тема | След. тема



Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру