Spec-Zone.ru › CouchDB 3.5

Управление базами данных

Создание базы данных

Будет создана база данных с 3 репликами и 8 шардами.

curl -X PUT "http://xxx.xxx.xxx.xxx:5984/database-name?n=3&q=8" --user admin-user

База данных находится в data/shards. Осмотрите все узлы — вы найдете все части.

Если не указать n и q, будут использованы значения по умолчанию: 3 реплик и 8 шардов.

Удаление базы данных

curl -X DELETE "http://xxx.xxx.xxx.xxx:5984/database-name --user admin-user

Размещение базы данных на определенных узлах

В BigCouch, предшественнике функции кластеризации CouchDB 2.0, использовалось понятие зон. В CouchDB 2.0 эта концепция получила развитие в виде правил размещения в кластере.

Предупреждение

Использование аргумента placement переопределит стандартную логику определения количества реплик шарда (задается параметром [cluster] n.)

Сначала каждому узлу необходимо назначить атрибут зоны. Он определяет, к какой зоне относится каждый узел. Для этого отредактируйте документ узла в системной базе данных _nodes, доступ к которой с самого узла осуществляется через конечную точку GET /_node/_local/_nodes/{node-name}.

Добавьте пару «ключ-значение» следующего вида:

"zone": "metro-dc-a"

Также можно задать переменную окружения COUCHDB_ZONE на каждом узле, и CouchDB настроит этот документ при запуске.

Сделайте это для всех узлов кластера.

В файле конфигурации (local.ini или default.ini) на каждом узле задайте согласованную для всего кластера настройку, например:

[cluster]
placement = metro-dc-a:2,metro-dc-b:1

В этом примере две реплики шарда будут размещены на узлах с атрибутом зоны metro-dc-a, а одна реплика — на узле с атрибутом зоны metro-dc-b.

Обратите внимание: эту систему также можно использовать, чтобы запретить размещение любых реплик вновь созданных баз данных на определенных узлах кластера. Для этого назначьте им атрибут зоны, который не указан в строке размещения [cluster].

Copyright © 2025 The Apache Software Foundation — Licensed under the Apache License 2.0
https://docs.couchdb.org/en/3.5.1/cluster/databases.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API