aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authoralexv-smirnov <alexv-smirnov@yandex-team.ru>2022-03-16 01:55:15 +0300
committeralexv-smirnov <alexv-smirnov@yandex-team.ru>2022-03-16 01:55:15 +0300
commit299d83114f32daf6465fe44e247026c9e1db3cf0 (patch)
tree11d9fedd987d3f405040858ac65a644d4c00f3d4
parent25b963dc33e79576159ea2b8378fe1ba6beb8771 (diff)
downloadydb-299d83114f32daf6465fe44e247026c9e1db3cf0.tar.gz
ydb docs backup restore import export dump
ref:ca94fabd06a605fdca764fec635a8118139d6e11
-rw-r--r--ydb/docs/ru/core/concepts/_includes/serverless_and_dedicated/02_sls_pars.md2
-rw-r--r--ydb/docs/ru/core/getting_started/_includes/cli.md10
-rw-r--r--ydb/docs/ru/core/getting_started/_includes/yql.md2
-rw-r--r--ydb/docs/ru/core/how_to_edit_docs/_includes/subjects.md4
-rw-r--r--ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/cli_overlay.md0
-rw-r--r--ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/options_overlay.md0
-rw-r--r--ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/others_overlay.md0
-rw-r--r--ydb/docs/ru/core/maintenance/backup_and_recovery.md31
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/_includes/commands.md16
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/_includes/example_db1.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/commands/_includes/scheme-ls.md2
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/commands/scheme-ls.md2
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/file_structure.md40
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/index.md13
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn.md116
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn_procure_overlay.md0
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_export.md157
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_import.md156
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_dump.md53
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_restore.md88
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/file_structure.md2
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/index.md2
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/s3_conn.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/s3_export.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/s3_import.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/toc_i.yaml14
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/toc_p.yaml4
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/tools_dump.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/export_import/tools_restore.md1
-rw-r--r--ydb/docs/ru/core/reference/ydb-cli/toc_i.yaml2
30 files changed, 692 insertions, 30 deletions
diff --git a/ydb/docs/ru/core/concepts/_includes/serverless_and_dedicated/02_sls_pars.md b/ydb/docs/ru/core/concepts/_includes/serverless_and_dedicated/02_sls_pars.md
index 47e59195de..bad966810b 100644
--- a/ydb/docs/ru/core/concepts/_includes/serverless_and_dedicated/02_sls_pars.md
+++ b/ydb/docs/ru/core/concepts/_includes/serverless_and_dedicated/02_sls_pars.md
@@ -21,7 +21,7 @@
При превышении ограничения запрос не принимается к исполнению, возвращается ошибка `Throughput limit exceeded`. Получение такой ошибки означает, что запрос можно безопасно повторить позже. При повторе рекомендуется использовать конструкции, поставляемые в составе {{ ydb-short-name }} SDK. В предлагаемых конструкциях реализованы алгоритмы повторов, которые в зависимости от типа и кода ошибки используют разные стратегии повторов: без задержки, с экспоненциальным увеличением задержки, быстрый или медленный повтор и другие.
-Ограничение срабатывает с некоторой задержкой, поэтому ошибка `Throughput limit exceeded` возвращается не на запросе, который привел к превышению ограничения, а одном из следующих. После срабатывания ограничения запросы не будут приниматься к исполнению в течение времени, приблизительно равного отношению перерасхода к величине ограничения. Например, если на исполнение единичного запроса потрачено 1000 RU при ограничении в 100 RU, то новые запросы не будут приниматься в течение 10 секунд.
+Ограничение срабатывает с некоторой задержкой, поэтому ошибка `Throughput limit exceeded` возвращается не на запросе, который привел к превышению ограничения, а одном из следующих. После срабатывания ограничения запросы не будут приниматься к исполнению в течение времени, приблизительно равного отношению перерасхода к величине ограничения. Например, если на исполнение единичного запроса потрачено 1000 RU при ограничении в 100 RU/с, то новые запросы не будут приниматься в течение 10 секунд.
Для снижения риска получения отказов при неравномерной нагрузке {{ ydb-short-name }} гибко применяет ограничения, используя механизм резервирования пропускной способности (`burst capacity`). Пока на обработку запросов тратится меньше RU, чем указано в ограничении, неиспользованная пропускная способность резервируется. Во время пика потребления за счет накопленного резерва может быть временно предоставлена большая пропускная способность, чем указано в ограничении.
diff --git a/ydb/docs/ru/core/getting_started/_includes/cli.md b/ydb/docs/ru/core/getting_started/_includes/cli.md
index 88f7b0726c..41539b076f 100644
--- a/ydb/docs/ru/core/getting_started/_includes/cli.md
+++ b/ydb/docs/ru/core/getting_started/_includes/cli.md
@@ -63,7 +63,7 @@ ydb
Проверьте работоспособность профиля командой `scheme ls`:
```bash
-{{ ydb-cli }} --profile db1 scheme ls
+{{ ydb-cli }} -p db1 scheme ls
```
## Исполнение YQL скрипта {#yql}
@@ -71,7 +71,7 @@ ydb
Команда {{ ydb-short-name }} CLI `scripting yql` позволяет выполнить любую команду (как DDL так и DML) на [языке YQL](../../yql/reference/index.md) - диалекте SQL, поддерживаемом {{ ydb-short-name }}:
```bash
-{{ ydb-cli }} --profile <profile_name> yql -s <yql_request>
+{{ ydb-cli }} -p <profile_name> yql -s <yql_request>
```
Например:
@@ -79,19 +79,19 @@ ydb
* Создание таблицы:
```bash
- {{ ydb-cli }} --profile db1 yql -s "create table t1( id uint64, primary key(id))"
+ {{ ydb-cli }} -p db1 yql -s "create table t1( id uint64, primary key(id))"
```
* Добавление записи:
```bash
- {{ ydb-cli }} --profile db1 yql -s "insert into t1(id) values (1)"
+ {{ ydb-cli }} -p db1 yql -s "insert into t1(id) values (1)"
```
* Выборка данных:
```bash
- {{ ydb-cli }} --profile db1 yql -s "select * from t1"
+ {{ ydb-cli }} -p db1 yql -s "select * from t1"
```
Если вы получаете ошибку `Profile db1 does not exist`, значит вы не создали его на [предыдущем шаге](#profile).
diff --git a/ydb/docs/ru/core/getting_started/_includes/yql.md b/ydb/docs/ru/core/getting_started/_includes/yql.md
index 349227c057..c6e9d223d3 100644
--- a/ydb/docs/ru/core/getting_started/_includes/yql.md
+++ b/ydb/docs/ru/core/getting_started/_includes/yql.md
@@ -38,7 +38,7 @@ YQL - язык запросов к базе данных {{ ydb-short-name }},
## Работа со схемой данных {#ddl}
-### Создание таблицы {#create-table}
+### Создание таблиц {#create-table}
Таблица с заданными колонками создается [командой YQL `CREATE TABLE`](../../yql/reference/syntax/create_table.md). В таблице обязательно должен быть определен первичный ключ. Типы данных для колонок приведены в статье [Типы данных YQL](../../yql/reference/types/index.md).
diff --git a/ydb/docs/ru/core/how_to_edit_docs/_includes/subjects.md b/ydb/docs/ru/core/how_to_edit_docs/_includes/subjects.md
index 3adf0be67f..254e760df7 100644
--- a/ydb/docs/ru/core/how_to_edit_docs/_includes/subjects.md
+++ b/ydb/docs/ru/core/how_to_edit_docs/_includes/subjects.md
@@ -25,9 +25,9 @@
| concepts | Разработчик приложений | Ознакомить с основными структурными компонентами {{ ydb-short-name }}, с которыми придется иметь дело при разработке приложений под {{ ydb-short-name }}. Дать понимание роли каждого такого компонента при решении задач разработки приложений. Предоставить расширенную информацию по вариантам конфигурации компонентов, доступных разработчик приложений. |
| reference, yql | Разработчик приложений | Справочник для ежедневного использования по инструментам доступа к функциям {{ ydb-short-name }}: CLI, YQL, SDK |
| best_practices | Разработчик приложений | Типовые подходы к решению основных задач, возникающих при разработке приложений |
-| maintenance | Разработчик приложений | Как обслуживать свои базы данных {{ ydb-short-name }} на администрируемом кем-то большом кластере, или при самостоятельном развертывании небольших БД для разработки: резервные копии, мониторинг, логи |
| troubleshooting | ? | Инструменты локализации причин проблем |
| how_to_edit_docs | Разработчики {{ ydb-short-name }} | Как дорабатывать документацию по {{ ydb-short-name }} |
+| deploy | Все | Развертывание и конфигурирование баз данных и кластеров {{ ydb-short-name }}. Облачные, оркестрируемые, ручные установки. |
+| maintenance | Все | Как обслуживать базы данных и кластера {{ ydb-short-name }}: резервные копии, мониторинг, логи, замена дисков. |
| faq | Все | Вопросы и ответы |
-
diff --git a/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/cli_overlay.md b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/cli_overlay.md
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/cli_overlay.md
diff --git a/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/options_overlay.md b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/options_overlay.md
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/options_overlay.md
diff --git a/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/others_overlay.md b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/others_overlay.md
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/ydb/docs/ru/core/maintenance/_includes/backup_and_recovery/others_overlay.md
diff --git a/ydb/docs/ru/core/maintenance/backup_and_recovery.md b/ydb/docs/ru/core/maintenance/backup_and_recovery.md
index 912a3cdf25..f61f8d8aff 100644
--- a/ydb/docs/ru/core/maintenance/backup_and_recovery.md
+++ b/ydb/docs/ru/core/maintenance/backup_and_recovery.md
@@ -1,23 +1,30 @@
-{% include [intro.md](_includes/backup_and_recovery/01_intro.md) %}
+# Резервное копирование и восстановление
-{% include [prerequisites.md](_includes/backup_and_recovery/02_prerequisites.md) %}
+Резервное копирование применяется для защиты от потери данных, позволяя восстановить потерянные данные из резервной копии.
-{% include [limitations.md](_includes/backup_and_recovery/03_limitations.md) %}
+YDB предоставляет несколько решений для выполнения резервного копирования и восстановления:
-{% include [fs_backup_header.md](_includes/backup_and_recovery/04_fs_backup_1_header.md) %}
+- Копирование в файлы и восстановление по команде администратора с помощью YDB CLI
+- Копирование в S3-совместимое хранилище и восстановление по команде администратора с помошью YDB CLI
-{% include [fs_backup_body.md](_includes/backup_and_recovery/04_fs_backup_2_body.md) %}
+{% include [_includes/backup_and_recovery/options_overlay.md](_includes/backup_and_recovery/options_overlay.md) %}
-{% include [fs_restore.md](_includes/backup_and_recovery/05_fs_restore.md) %}
+## YDB CLI {#cli}
-{% include [s3_header.md](_includes/backup_and_recovery/06_s3_1_header.md) %}
+### Файлы {#files}
-{% include [s3_prerequisites.md](_includes/backup_and_recovery/06_s3_2_prerequisites.md) %}
+Для выполнения резервного копирования в файлы администратором применяется [команда `tools dump`](../reference/ydb-cli/export_import/tools_dump.md) YDB CLI. Перейдите [по ссылке](../reference/ydb-cli/export_import/tools_dump.md) в справочник по YDB CLI для получения информации о данной команде.
-{% include [s3_access_keys.md](_includes/backup_and_recovery/06_s3_3_access_keys.md) %}
+Для выполнения восстановления из файловой резервной копии, созданной при помощи команды `tools dump` YDB CLI, применяется [команда `tools restore`](../reference/ydb-cli/export_import/tools_restore.md) YDB CLI. Перейдите [по ссылке](../reference/ydb-cli/export_import/tools_restore.md) в справочник по YDB CLI для получения информации о данной команде.
-{% include [s3_export.md](_includes/backup_and_recovery/06_s3_4_export.md) %}
+### S3-совместимое хранилище {#s3}
+
+Для выполнения резервного копирования в S3-совместимое хранилище (например, [AWS S3](https://docs.aws.amazon.com/AmazonS3/latest/dev/Introduction.html)) администратором применяется [команда `export s3`](../reference/ydb-cli/export_import/s3_export.md) YDB CLI. Перейдите [по ссылке](../reference/ydb-cli/export_import/s3_export.md) в справочник по YDB CLI для получения информации о данной команде.
+
+Для выполнения восстановления из резервной копии, созданной в S3-совместимом хранилище при помощи команды `export s3` YDB CLI, применяется [команда `import s3`](../reference/ydb-cli/export_import/s3_import.md) YDB CLI. Перейдите [по ссылке](../reference/ydb-cli/export_import/s3_import.md) в справочник по YDB CLI для получения информации о данной команде.
+
+{% include [_includes/backup_and_recovery/cli_overlay.md](_includes/backup_and_recovery/cli_overlay.md) %}
+
+{% include [_includes/backup_and_recovery/others_overlay.md](_includes/backup_and_recovery/others_overlay.md) %}
-{% include [s3_restore.md](_includes/backup_and_recovery/06_s3_5_restore.md) %}
-{% include [s3_forget.md](_includes/backup_and_recovery/06_s3_6_forget.md) %}
diff --git a/ydb/docs/ru/core/reference/ydb-cli/_includes/commands.md b/ydb/docs/ru/core/reference/ydb-cli/_includes/commands.md
index 4b841d2b22..a26ffacf37 100644
--- a/ydb/docs/ru/core/reference/ydb-cli/_includes/commands.md
+++ b/ydb/docs/ru/core/reference/ydb-cli/_includes/commands.md
@@ -30,15 +30,15 @@
[config profile set](../profile/activate.md) | Активация [профиля](../profile/index.md)
[discovery list](../commands/discovery-list.md) | Список эндпоинтов
[discovery whoami](../commands/discovery-whoami.md) | Проверка аутентификации
-export s3 | Экспорт данных в хранилище S3
+[export s3](../export_import/s3_export.md) | Экспорт данных в хранилище S3
import file csv | Импорт данных из CSV-файла
import file tsv | Импорт данных из TSV-файла
-import s3 | Импорт данных из хранилища S3
+[import s3](../export_import/s3_import.md) | Импорт данных из хранилища S3
[init](../profile/create.md) | Инициализация CLI, создание [профиля](../profile/index.md)
-operation cancel | Прерывание исполнения долгой операции
-operation forget | Удалить долгую операцию из истории
-operation get | Статус долгой операции
-operation list | Список долгих операций
+operation cancel | Прерывание исполнения фоновой операции
+operation forget | Удаление фоновой операции из истории
+operation get | Статус фоновой операции
+operation list | Список фоновых операций
[scheme describe](../commands/scheme-describe.md) | Описание объекта схемы данных
[scheme ls](../commands/scheme-ls.md) | Список объектов схемы данных
[scheme mkdir](../commands/dir.md#mkdir) | Создание директории
@@ -64,9 +64,9 @@ table drop | Удаление таблицы
table ttl drop | Удаление параметров TTL
table ttl set | Установка параметров TTL
tools copy | Копирование таблиц
-tools dump | Выгрузка директории или таблицы в файловую систему
+[tools dump](../export_import/tools_dump.md) | Выгрузка директории или таблицы в файловую систему
[tools rename](../commands/tools/rename.md) | Переименование таблиц
-tools restore | Восстановление из файловой системы
+[tools restore](../export_import/tools_restore.md) | Восстановление из файловой системы
{% if ydb-cli == "ydb" %}
[update](../commands/service.md) | Обновление {{ ydb-short-name }} CLI
[version](../commands/service.md) | Вывод информации о версии {{ ydb-short-name }} CLI
diff --git a/ydb/docs/ru/core/reference/ydb-cli/_includes/example_db1.md b/ydb/docs/ru/core/reference/ydb-cli/_includes/example_db1.md
new file mode 100644
index 0000000000..7fa48895f1
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/_includes/example_db1.md
@@ -0,0 +1 @@
+В примерах используется профиль `db1`, о создании которого рассказано в статье [Знакомство с YDB CLI](../../../getting_started/cli.md#profile) раздела "Начало работы".
diff --git a/ydb/docs/ru/core/reference/ydb-cli/commands/_includes/scheme-ls.md b/ydb/docs/ru/core/reference/ydb-cli/commands/_includes/scheme-ls.md
index e85110ced1..23a5415288 100644
--- a/ydb/docs/ru/core/reference/ydb-cli/commands/_includes/scheme-ls.md
+++ b/ydb/docs/ru/core/reference/ydb-cli/commands/_includes/scheme-ls.md
@@ -18,6 +18,8 @@
**Примеры**
+{% include [example_db1.md](../../_includes/example_db1.md) %}
+
- Получение объектов в корневой директории базы данных в сжатом формате
```bash
diff --git a/ydb/docs/ru/core/reference/ydb-cli/commands/scheme-ls.md b/ydb/docs/ru/core/reference/ydb-cli/commands/scheme-ls.md
index e5cacf169f..f9a5dc8b22 100644
--- a/ydb/docs/ru/core/reference/ydb-cli/commands/scheme-ls.md
+++ b/ydb/docs/ru/core/reference/ydb-cli/commands/scheme-ls.md
@@ -1 +1 @@
-{% include [intro.md](_includes/scheme-ls.md) %}
+{% include [_includes/scheme-ls.md](_includes/scheme-ls.md) %}
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/file_structure.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/file_structure.md
new file mode 100644
index 0000000000..cfef9ccded
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/file_structure.md
@@ -0,0 +1,40 @@
+
+# Файловая структура выгрузки
+
+Описанная ниже файловая структура применяется для выгрузки как в файловую систему, так и в S3-совместимое объектное хранилище.
+
+## Директории {#dir}
+
+Каждой директории в базе данных соответствует директория в файловой структуре. Иерархия директорий в файловой структуре соответствует иерархии директорий в базе данных. Если в некоторой директории базы данных нет никаких объектов (ни таблиц, ни поддиректорий), то в файловой структуре в такой директории присутствует один файл нулевого размера с именем `empty_dir`.
+
+## Таблицы {#tables}
+
+Каждой таблице в базе данных также соответствует одноименная директория в иерархии директорий файловой структуры, в которой находятся:
+
+- Файл `scheme.pb`, содержащий информацию о структуре таблицы и её параметрах в формате [text protobuf](https://developers.google.com/protocol-buffers/docs/reference/cpp/google.protobuf.text_format)
+- Один или несколько файлов `data_XX.csv`, содержащих данные таблицы в формате `csv`, где `XX` - порядковый номер файла. Выгрузка начинается с файла `data_00.csv`, каждый следующий файл создается при превышении размера текущего файла в 100MB.
+
+## Файлы с данными {#datafiles}
+
+Формат файлов с данными - `.csv`, одна строка соответствует одной записи в таблице, без строки с заголовками колонок. Для строк применяется представление в urlencoded формате. Например, строка файла для таблицы с колонками uint64 и uft8, содержащая число 1 и строку "Привет" соответственно, выглядит таким образом:
+
+```
+1,"%D0%9F%D1%80%D0%B8%D0%B2%D0%B5%D1%82"
+```
+
+## Пример {#example}
+
+При выгрузке таблиц, созданных в рамках сценария [Знакомства с YQL](../../../../getting_started/yql.md#create-table) в разделе "Начало работы", будет создана следующая файловая структура:
+
+```
+├── episodes
+│   ├── data_00.csv
+│   └── scheme.pb
+├── seasons
+│   ├── data_00.csv
+│   └── scheme.pb
+└── series
+ ├── data_00.csv
+ └── scheme.pb
+```
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/index.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/index.md
new file mode 100644
index 0000000000..3ac894f131
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/index.md
@@ -0,0 +1,13 @@
+# Выгрузка и загрузка данных
+
+YDB CLI содержит набор команд, предназначенных для выгрузки (экспорта) и загрузки (импорта) данных и описаний объектов схемы данных. Выгрузка данных может применяться как для создания резервных копий в целях последующего восстановления, так и в других целях.
+
+- [Файловая структура выгрузки](../file_structure.md), применяемая как при выгрузке в файловую систему, так и при выгрузке в S3-совместимое объектное хранилище.
+
+- [Выгрузка в файловую систему `tools dump`](../tools_dump.md)
+- [Загрузка из файловой системы `tools restore`](../tools_restore.md)
+
+- [Соединение и аутентификация при работе с S3-совместимым объектным хранилищем](../s3_conn.md)
+- [Выгрузка в S3-совместимое объектное хранилище `export s3`](../s3_export.md)
+- [Загрузка из S3-совместимого объектного хранилища `import s3`](../s3_import.md)
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn.md
new file mode 100644
index 0000000000..710436d21f
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn.md
@@ -0,0 +1,116 @@
+# Соединение с S3-совместимыми объектными хранилищами
+
+Команды выгрузки и загрузки из S3-совместимых хранилищ `export s3` и `import s3` используют одинаковые параметры для соединения с S3 и аутентификации. О том, как узнать эти параметры для некоторых облачных поставщиков, описано в разделе [Получение параметров соединения с S3](#procure) ниже.
+
+## Соединение {#conn}
+
+Соединение с S3 требует указания эндпоинта и бакета:
+
+`--s3-endpoint HOST`: Эндпоинт S3. `HOST` - валидное имя хоста, например `storage.yandexcloud.net`
+
+`--bucket STR`: Бакет S3. `STR` - строка, содержащая имя бакета
+
+## Аутентификация {#auth}
+
+Для успешного соединения, кроме случая загрузки из публично доступного бакета, потребуется аутентифицироваться под учетной записью, для которой разрешена запись (для выгрузки) или чтение (для загрузки) из данного бакета.
+
+Для аутентификации в S3 необходимы два параметра:
+- Идентификатор ключа доступа (access_key_id)
+- Секретный ключ доступа (secret_access_key)
+
+YDB CLI определяет значения этих параметров из следующих источников (в порядке убывания приоритета):
+1. Командной строки
+2. Переменных окружения
+3. Файла `~/.aws/credentials`
+
+### Параметры командной строки
+
+`--access-key STR`: Идентификатор ключа доступа
+`--secret-key STR`: Секретный ключ доступа
+
+### Переменные окружения
+
+Если какой-либо параметр аутентификации не указан в командной строке, YDB CLI пробует его получить из следующих переменных окружения:
+
+`AWS_ACCESS_KEY_ID`: Идентификатор ключа доступа
+`AWS_SECRET_ACCESS_KEY`: Секретный ключ доступа
+
+### Файл аутентификации AWS
+
+Если какой-либо параметр аутентификации не указан в командной строке, и его не удалось получить из переменной окружения, YDB CLI пробует его получить из файла `~/.aws/credentials`, применяемого для аутентификации [AWS CLI](https://aws.amazon.com/ru/cli/). Данный файл может быть создан командой AWS CLI `aws configure`.
+
+## Получение параметров соединения с S3 {#procure}
+
+### Yandex.Cloud
+
+Ниже описан сценарий получения ключей доступа к [Yandex.Cloud Object Storage](https://cloud.yandex.ru/docs/storage/) с применением Yandex.Cloud CLI.
+
+1. [Установите и сконфигурируйте](https://cloud.yandex.ru/docs/cli/quickstart) Yandex.Cloud CLI.
+
+2. Получите ID вашего каталога в облаке следующей командой, его понадобится указывать в командах ниже:
+
+ ``` bash
+ yc config list
+ ```
+
+ В выводе идентификатор каталога в облаке находится в строке `folder-id:`:
+
+ ``` yaml
+ folder-id: b2ge70qdcff4bo9q6t19
+ ```
+
+
+3. [Создайте сервисный аккаунт](https://cloud.yandex.ru/docs/iam/operations/sa/create), выполнив следующую команду:
+
+ ``` bash
+ yc iam service-account create --name s3account
+ ```
+
+ Вы можете указать любое имя аккаунта кроме `s3account` или использовать существующий, тогда вам понадобится его также заменять при копировании команд ниже через буфер обмена.
+
+3. [Назначьте сервисному аккаунту](https://cloud.yandex.ru/docs/iam/operations/sa/assign-role-for-sa) роли в соответствии с необходимым уровнем доступа к S3, выполнив команду:
+
+ {% list tabs %}
+
+ - Чтение (для загрузки в базу данных YDB)
+
+ ``` bash
+ yc resource-manager folder add-access-binding <folder-id> \
+ --role storage.viewer --subject serviceAccount:s3account
+ ```
+
+ - Запись (для выгрузки из базы данных YDB)
+
+ ``` bash
+ yc resource-manager folder add-access-binding <folder-id> \
+ --role storage.editor --subject serviceAccount:s3account
+ ```
+
+ {% endlist %}
+
+ , где `<folder-id>` - это идентификатор каталога в облаке, полученный на шаге 2.
+
+ Вы можете также ознакомиться с [полным перечнем](https://cloud.yandex.ru/docs/iam/concepts/access-control/roles#object-storage) ролей Yandex.Cloud.
+
+4. Получите [статические ключи доступа](https://cloud.yandex.ru/docs/iam/operations/sa/create-access-key), выполнив следующую команду:
+
+ ``` bash
+ yc iam access-key create --service-account-name s3account
+ ```
+
+ Успешно исполненная команда выведет информацию об атрибутах access_key и значение secret:
+
+ ``` yaml
+ access_key:
+ id: aje6t3vsbj8lp9r4vk2u
+ service_account_id: ajepg0mjt06siuj65usm
+ created_at: "2018-11-22T14:37:51Z"
+ key_id: 0n8X6WY6S24N7OjXQ0YQ
+ secret: JyTRFdqw8t1kh2-OJNz4JX5ZTz9Dj1rI9hxtzMP1
+ ```
+
+ В данном выводе:
+ - `access_key.key_id` - это идентификатор ключа доступа
+ - `secret` - это секретный ключ доступа
+
+{% include [s3_conn_procure_overlay.md](s3_conn_procure_overlay.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn_procure_overlay.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn_procure_overlay.md
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_conn_procure_overlay.md
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_export.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_export.md
new file mode 100644
index 0000000000..045c458af5
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_export.md
@@ -0,0 +1,157 @@
+# Выгрузка в S3-совместимое хранилище
+
+Команда `export s3` стартует на стороне сервера процесс выгрузки в S3-совместимое хранилище данных и информации об объектах схемы данных, в описанном в статье [Файловая структура](../file_structure.md) формате:
+
+```bash
+{{ ydb-cli }} [connection options] export s3 [options]
+```
+
+{% include [conn_options_ref.md](../../commands/_includes/conn_options_ref.md) %}
+
+## Параметры командной строки {#pars}
+
+`[options]` - параметры команды:
+
+### Параметры соединения с S3 {#s3-conn}
+
+Команда выгрузки в S3 требует указания [параметров соединения с S3](../s3_conn.md). Так как выгрузка производится в асинхронном режиме сервером YDB, указанный эндпоинт должен быть доступен для установки соединения со стороны сервера.
+
+### Перечень выгружаемых объектов {#items}
+
+`--item STRING`: Описание объекта выгрузки. Параметр `--item` может быть указан несколько раз, если необходимо выполнить выгрузку нескольких объектов. `STRING` задается в формате `<свойство>=<значение>,...`, со следующими обязательными свойствами:
+- `source`, `src`, или `s` — путь до выгружаемой директории или таблицы, `.` указывает на корневую директорию базы данных. При указании директории выгружаются все объекты в ней, имена которых не начинаются с точки, а также рекурсивно все поддиректории, имена которых не начинаются с точки.
+- `destination`, `dst`, или `d` — путь (префикс ключа) в S3 для размещения выгружаемых объектов
+
+`--exclude STRING`: Шаблон ([PCRE](https://www.pcre.org/original/doc/html/pcrepattern.html)) для исключения путей из выгрузки. Данный параметр может быть указан несколько раз, для разных шаблонов.
+
+### Дополнительные параметры {#aux}
+
+`--description STRING`: Текстовое описание операции, сохраняемое в истории операций
+`--retries NUM`: Количество повторных попыток выгрузки, которые будет предпринимать сервер. По умолчанию 10.
+`--format STRING`: Формат вывода результата
+- `pretty`: Человекочитаемый формат (по умолчанию)
+- `proto-json-base64`: Protobuf в формате json, бинарные строки закодированы в base64
+
+## Выполнение выгрузки {#exec}
+
+### Результат запуска {#result}
+
+При успешном исполнении команда `export s3` выводит сводную информацию о поставленной в очередь операции выгрузки в S3, в заданном опцией `--format` формате. Фактическая выгрузка производится сервером асинхронно. В сводной информации выводится ID операции, который может быть использован в дальнейшем для проверки статуса и действий с операцией:
+
+- В режиме вывода `pretty` (по умолчанию) идентификатор операции показывается в выделенном псевдографикой поле id:
+
+ ```
+ ┌───────────────────────────────────────────┬───────┬─────...
+ | id | ready | stat...
+ ├───────────────────────────────────────────┼───────┼─────...
+ | ydb://export/6?id=281474976788395&kind=s3 | true | SUCC...
+ ├╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴┴╴╴╴╴╴...
+ | StorageClass: NOT_SET
+ | Items:
+ ...
+ ```
+
+- В режиме вывода proto-json-base64 идентификатор находится в атрибуте "id":
+
+ ```
+ {"id":"ydb://export/6?id=281474976788395&kind=s3","ready":true, ... }
+ ```
+
+### Статус выгрузки {#status}
+
+Выгрузка данных выполняется в фоновом режиме. Получить информацию о статусе и прогрессе выгрузки можно вызовом команды `operation get`, параметром которой должен быть передан **заключенный в кавычки** идентификатор операции, например:
+
+``` bash
+{{ ydb-cli }} -p db1 operation get "ydb://export/6?id=281474976788395&kind=s3"
+```
+
+Формат вывода `operation get` также устанавливается опцией `--format`.
+
+Несмотря на то, что идентификатор операции имеет формат URL, не гарантируется что он будет сохранен в дальнейшем. Его нужно интерпретировать только как строку.
+
+Завершение выгрузки отслеживается по изменению атрибута "progress":
+
+- В режиме вывода `pretty` (по умолчанию) успешно завершенная операция отражается значением "Done" в выделенном псевдографикой поле `progress`:
+
+ ```
+ ┌───── ... ──┬───────┬─────────┬──────────┬─...
+ | id | ready | status | progress | ...
+ ├──────... ──┼───────┼─────────┼──────────┼─...
+ | ydb:/... | true | SUCCESS | Done | ...
+ ├╴╴╴╴╴ ... ╴╴┴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴╴╴╴┴╴...
+ ...
+ ```
+
+- В режиме вывода proto-json-base64 завершенная операция отражается значением `PROGRESS_DONE` атрибута `progress`:
+
+ ```
+ {"id":"ydb://...", ...,"progress":"PROGRESS_DONE",... }
+ ```
+
+### Завершение операции выгрузки {#forget}
+
+При выполнении выгрузки в корневом каталоге базы данных создается директория с именем `export_*`, где `*` -- это числовая часть индетификатора выгрузки. В данной директории размещаются таблицы, содержащие консистентный снепшот выгружаемых данных на момент начала выгрузки.
+
+После выполнения выгрузки воспользуйтесь командой `operation forget` для того, чтобы выгрузка была завершена: удалена из перечня операций, а также были удалены все созданные для неё файлы:
+
+``` bash
+{{ ydb-cli }} -p db1 operation forget "ydb://export/6?id=281474976788395&kind=s3"
+```
+
+### Список операций выгрузки {#list}
+
+Для получения списка операций выгрузки воспользуйтесь командой `operation list export/s3`:
+
+``` bash
+{{ ydb-cli }} -p db1 operation list export/s3
+```
+
+Формат вывода `operation list` также устанавливается опцией `--format`.
+
+## Примеры {#examples}
+
+{% include [example_db1.md](../../_includes/example_db1.md) %}
+
+### Выгрузка базы данных {#example-full-db}
+
+Выгрузка всех объектов базы данных, имена которых не начинаются с точки, и не размещенных внутри директорий, имена которых начинаются с точки, в директорию `export1` в бакете `mybucket`, с использованием параметров аутентификации S3 из переменных окружения или файла `~/.aws/credentials`:
+
+```
+ydb -p db1 export s3 \
+ --s3-endpoint storage.yandexcloud.net --bucket mybucket \
+ --item src=.,dst=export1
+```
+
+### Выгрузка нескольких директорий {#example-specific-dirs}
+
+Выгрузка объектов из директорий dir1 и dir2 базы данных, в директорию `export1` в бакете `mybucket`, с использованием явно заданных параметров аутентификации в S3:
+
+```
+ydb -p db1 export s3 \
+ --s3-endpoint storage.yandexcloud.net --bucket mybucket \
+ --access-key VJGSOScgs-5kDGeo2hO9 --secret-key fZ_VB1Wi5-fdKSqH6074a7w0J4X0 \
+ --item src=dir1,dst=export1/dir1 --item src=dir2,dst=export1/dir2
+```
+
+### Получение идентификаторов операций {#example-list-oneline}
+
+Для получения перечня идентификаторов операций выгрузки в удобном для обработки в скриптах bash формате вы можете применить утилиту [jq](https://stedolan.github.io/jq/download/):
+
+``` bash
+{{ ydb-cli }} -p db1 operation list export/s3 --format proto-json-base64 | jq -r ".operations[].id"
+```
+
+Вы получите вывод, где в каждой новой строке находится идентификатор операции, например:
+
+```
+ydb://export/6?id=281474976789577&kind=s3
+ydb://export/6?id=281474976789526&kind=s3
+ydb://export/6?id=281474976788779&kind=s3
+```
+
+По этим идентификаторам может быть, например, запущен цикл для завершения всех текущих операций:
+
+``` bash
+{{ ydb-cli }} -p db1 operation list export/s3 --format proto-json-base64 | jq -r ".operations[].id" | while read line; do {{ ydb-cli }} -p db1 operation forget $line;done
+```
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_import.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_import.md
new file mode 100644
index 0000000000..73a61d045c
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/s3_import.md
@@ -0,0 +1,156 @@
+# Загрузка из S3-совместимого хранилища
+
+Команда `import s3` стартует на стороне сервера процесс загрузки из S3-совместимого хранилища данных и информации об объектах схемы данных, в описанном в статье [Файловая структура](../file_structure.md) формате:
+
+```bash
+{{ ydb-cli }} [connection options] import s3 [options]
+```
+
+{% include [conn_options_ref.md](../../commands/_includes/conn_options_ref.md) %}
+
+В отличие от [команды `tools restore`](../tools_restore.md), команда `import s3` всегда создает объекты целиком, поэтому для её успешного выполнения ни один из загружаемых объектов (ни директорий, ни таблиц) не должен существовать.
+
+При необходимости догрузки данных в существующие таблицы из S3 вы можете скопировать содержимое S3 в файловую систему (например, с помощью [S3cmd](https://s3tools.org/s3cmd)), и воспользоваться [командой `tools restore`](../tools_restore.md).
+
+## Параметры командной строки {#pars}
+
+`[options]` - параметры команды:
+
+### Параметры соединения с S3 {#s3-conn}
+
+Команда загрузки из S3 требует указания [параметров соединения с S3](../s3_conn.md). Так как загрузка производится в асинхронном режиме сервером YDB, указанный эндпоинт должен быть доступен для установки соединения со стороны сервера.
+
+### Перечень загружаемых объектов {#items}
+
+`--item STRING`: Описание объекта загрузки. Параметр `--item` может быть указан несколько раз, если необходимо выполнить загрузку нескольких объектов. `STRING` задается в формате `<свойство>=<значение>,...`, со следующими обязательными свойствами:
+- `source`, `src`, или `s` — путь (префикс ключа) в S3 с загружаемой директорией или таблицей
+- `destination`, `dst`, или `d` — путь в базе данных для размещения загружаемой директории или таблицы. Конечный элемент пути не должен существовать. Все директории на пути будут созданы, если не существуют.
+
+### Дополнительные параметры {#aux}
+
+`--description STRING`: Текстовое описание операции, сохраняемое в истории операций
+`--retries NUM`: Количество повторных попыток выгрузки, которые будет предпринимать сервер. По умолчанию 10.
+`--format STRING`: Формат вывода результата
+- `pretty`: Человекочитаемый формат (по умолчанию)
+- `proto-json-base64`: Protobuf в формате json, бинарные строки закодированы в base64
+
+## Выполнение загрузки {#exec}
+
+### Результат запуска {#result}
+
+При успешном исполнении команда `iomport s3` выводит сводную информацию о поставленной в очередь операции загрузки из S3, в заданном опцией `--format` формате. Фактическая загрузка производится сервером асинхронно. В сводной информации выводится ID операции, который может быть использован в дальнейшем для проверки статуса и действий с операцией:
+
+- В режиме вывода `pretty` (по умолчанию) идентификатор операции показывается в выделенном псевдографикой поле id:
+
+ ```
+ ┌───────────────────────────────────────────┬───────┬─────...
+ | id | ready | stat...
+ ├───────────────────────────────────────────┼───────┼─────...
+ | ydb://export/8?id=281474976788395&kind=s3 | true | SUCC...
+ ├╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴┴╴╴╴╴╴...
+ | Items:
+ ...
+ ```
+
+- В режиме вывода proto-json-base64 идентификатор находится в атрибуте "id":
+
+ ```
+ {"id":"ydb://export/8?id=281474976788395&kind=s3","ready":true, ... }
+ ```
+
+### Статус загрузки {#status}
+
+Загрузка данных выполняется в фоновом режиме. Получить информацию о статусе и прогрессе загрузки можно вызовом команды `operation get`, параметром которой должен быть передан **заключенный в кавычки** идентификатор операции, например:
+
+``` bash
+{{ ydb-cli }} -p db1 operation get "ydb://export/8?id=281474976788395&kind=s3"
+```
+
+Формат вывода `operation get` также устанавливается опцией `--format`.
+
+Несмотря на то, что идентификатор операции имеет формат URL, не гарантируется что он будет сохранен в дальнейшем. Его нужно интерпретировать только как строку.
+
+Завершение загрузки отслеживается по изменению атрибута "progress":
+
+- В режиме вывода `pretty` (по умолчанию) успешно завершенная операция отражается значением "Done" в выделенном псевдографикой поле `progress`:
+
+ ```
+ ┌───── ... ──┬───────┬─────────┬──────────┬─...
+ | id | ready | status | progress | ...
+ ├──────... ──┼───────┼─────────┼──────────┼─...
+ | ydb:/... | true | SUCCESS | Done | ...
+ ├╴╴╴╴╴ ... ╴╴┴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴╴╴┴╴╴╴╴╴╴╴╴╴╴┴╴...
+ ...
+ ```
+
+- В режиме вывода proto-json-base64 завершенная операция отражается значением `PROGRESS_DONE` атрибута `progress`:
+
+ ```
+ {"id":"ydb://...", ...,"progress":"PROGRESS_DONE",... }
+ ```
+
+### Завершение операции загрузки {#forget}
+
+После выполнения загрузки воспользуйтесь командой `operation forget` для того, чтобы выгрузка была удалена из перечня операций:
+
+``` bash
+{{ ydb-cli }} -p db1 operation forget "ydb://export/8?id=281474976788395&kind=s3"
+```
+
+### Список операций выгрузки {#list}
+
+Для получения списка операций выгрузки воспользуйтесь командой `operation list export/s3`:
+
+``` bash
+{{ ydb-cli }} -p db1 operation list export/s3
+```
+
+Формат вывода `operation list` также устанавливается опцией `--format`.
+
+## Примеры {#examples}
+
+{% include [example_db1.md](../../_includes/example_db1.md) %}
+
+### Загрузка в корень базы данных {#example-full-db}
+
+Загрузка в корень базы данных содержимого директории `export1` в бакете `mybucket`, с использованием параметров аутентификации S3 из переменных окружения или файла `~/.aws/credentials`:
+
+```
+ydb -p db1 import s3 \
+ --s3-endpoint storage.yandexcloud.net --bucket mybucket \
+ --item src=export1,dst=.
+```
+
+### Загрузка нескольких директорий {#example-specific-dirs}
+
+Загрузка объектов из директорий dir1 и dir2 бакета S3 `mybucket` в одноименные директории базы данных, с использованием явно заданных параметров аутентификации в S3:
+
+```
+ydb -p db1 import s3 \
+ --s3-endpoint storage.yandexcloud.net --bucket mybucket \
+ --access-key VJGSOScgs-5kDGeo2hO9 --secret-key fZ_VB1Wi5-fdKSqH6074a7w0J4X0 \
+ --item src=export/dir1,dst=dir1 --item src=export/dir2,dst=dir2
+```
+
+### Получение идентификаторов операций {#example-list-oneline}
+
+Для получения перечня идентификаторов операций выгрузки в удобном для обработки в скриптах bash формате вы можете применить утилиту [jq](https://stedolan.github.io/jq/download/):
+
+``` bash
+{{ ydb-cli }} -p db1 operation list import/s3 --format proto-json-base64 | jq -r ".operations[].id"
+```
+
+Вы получите вывод, где в каждой новой строке находится идентификатор операции, например:
+
+```
+ydb://export/8?id=281474976789577&kind=s3
+ydb://export/8?id=281474976789526&kind=s3
+ydb://export/8?id=281474976788779&kind=s3
+```
+
+По этим идентификаторам может быть, например, запущен цикл для завершения всех текущих операций:
+
+``` bash
+{{ ydb-cli }} -p db1 operation list import/s3 --format proto-json-base64 | jq -r ".operations[].id" | while read line; do {{ ydb-cli }} -p db1 operation forget $line;done
+```
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_dump.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_dump.md
new file mode 100644
index 0000000000..bd35e32422
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_dump.md
@@ -0,0 +1,53 @@
+# Выгрузка в файловую систему
+
+Команда `tools dump` выгружает в клиентскую файловую систему данные и информацию об объектах схемы данных, в описанном в статье [Файловая структура](../file_structure.md) формате:
+
+```bash
+{{ ydb-cli }} [connection options] tools dump [options]
+```
+
+{% include [conn_options_ref.md](../../commands/_includes/conn_options_ref.md) %}
+
+`[options]` - параметры команды:
+
+`-p PATH` или `--path PATH`: Путь к директории в базе данных, объекты внутри которой должны быть выгружены, либо путь к таблице. По умолчанию -- корневая директория базы данных. В выгрузку будут включены все поддиректории, имена которых не начинаются с точки, с таблицы внутри них, имена которых не начинаются с точки. Для выгрузки таких таблиц, или содержимого таких директорий, можно явно указать их имена в данном параметре.
+
+`-o PATH` или `--output PATH`: Путь к директории в клиентской файловой системе, куда должна быть сделана выгрузка. Если указанная директория не существует, то она будет создана, однако весь путь до неё должен существовать. Если указанная директория существует, то она должна быть пуста. Если параметр не указан, то в текущей директории будет сделана директория с именем в формате `backup_YYYYDDMMTHHMMSS`, где YYYYDDMM - дата, а HHMMSS - время начала выгрузки.
+
+`--exclude STRING`: Шаблон ([PCRE](https://www.pcre.org/original/doc/html/pcrepattern.html)) для исключения путей из выгрузки. Данный параметр может быть указан несколько раз, для разных шаблонов.
+
+`--scheme-only`: Выгружать только информацию об объектах схемы данных, без выгрузки данных
+
+`--consistency-level VAL`: Уровень консистентности. Возможные варианты:
+- `database` - Полностью консистентная выгрузка, со снятием одного снепшота перед началом выгрузки. Применяется по умолчанию.
+- `table` - Консистентность в пределах каждой выгружаемой таблицы, со снятием отдельных независимых снепшотов для каждой выгружаемой таблицы. Может работать быстрее и оказывать меньшее влияние на обработку текущей нагрузки на базу данных.
+
+`--avoid-copy`: Не применять создание снепшота для выгрузки. Применяемый по умолчанию для обеспечения консистентности снепшот может быть неприменим для некоторых случаев (например, для таблиц со внешними блобами).
+
+`--save-partial-result`: Не удалять результат частично выполненной выгрузки. Без включения данной опции результат выгрузки будет удален, если в процессе её выполнения произойдет ошибка.
+
+## Примеры
+
+{% include [example_db1.md](../../_includes/example_db1.md) %}
+
+### Выгрузка базы данных
+
+С автоматическим созданием директории `backup_...` в текущей директории:
+
+```
+{{ ydb-cli }} --profile db1 tools dump
+```
+
+В заданную директорию:
+
+```
+{{ ydb-cli }} --profile db1 tools dump -o ~/backup_db1
+```
+
+### Выгрузка структуры таблиц в заданной директории базы данных и её поддиректориях
+
+```
+{{ ydb-cli }} --profile db1 tools dump -p dir1 --scheme-only
+```
+
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_restore.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_restore.md
new file mode 100644
index 0000000000..14e4cca89c
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/_includes/tools_restore.md
@@ -0,0 +1,88 @@
+# Загрузка из файловой системы
+
+Команда `tools restore` создает в базе данных объекты схемы данных и загружает в них данные из файловой системы, ранее выгруженные туда командой `tools dump`, или подготовленные вручную в соответствии с правилами, описанными в статье [Файловая структура](../file_structure.md):
+
+```bash
+{{ ydb-cli }} [connection options] tools restore -p PATH -i PATH [options]
+```
+
+{% include [conn_options_ref.md](../../commands/_includes/conn_options_ref.md) %}
+
+Если таблица уже существует в базе данных -- в её схему не будет внесено изменений. Это может привести к тому, что операция загрузка данных не сможет быть выполнена, если не все колонки в загружемых файлах присутствуют в таблице в базе данных, или не подходят по типу.
+
+Для загрузки данных в таблицу применяется [команда YQL `REPLACE`](../../../../yql/reference/syntax/replace_into.md). Если до момента загрузка в таблице существовали записи, то те из них, ключи которых существуют в загружаемых файлах, будут заменены данными из файлов; записи с теми ключами, которых не существует в загружаемых файлах, останутся без изменений.
+
+## Обязательные параметры {#mandatory}
+
+`-p PATH` или `--path PATH`: Путь к директории в базе данных, внутрь которой будет выполняться загрузка. Для загрузки в корневой каталог укажите `.`. Все отсутствующие директории на пути будут созданы.
+
+`-i PATH` или `--input PATH`: Путь к директории в клиентской файловой системе, откуда будет выполняться загрузка.
+
+## Необязательные параметры {#optional}
+
+`[options]` - необязательные параметры команды:
+
+`--restore-data VAL`: Флаг загрузки данных, 1 (да) или 0 (нет), по умолчанию 1. Если флаг установлен в 0, то при загрузке будут только созданы объекты в схеме, а данные в них загружены не будут. Если в файловой системе нет данных (выгружена только схема), то изменение флага не имеет значения.
+
+`--restore-indexes VAL`: Флаг загрузки индексов, 1 (да) или 0 (нет), по умолчанию 1. Если флаг установлен в 0, то при загрузке вторичные индексы не будут не зарегистрированы в схеме данных, ни заполнены данными.
+
+`--dry-run`: Режим проверки соответствия схемы данных в базе данных и файловой системе без внесения изменений в базу данных, 1 (да) или 0 (нет), по умолчанию 0. При включении данного режима проверяется, что:
+- Все таблицы в файловой системе присутствуют в базе данных
+- Схема данных объектов в файловой системе и базе данных одинаковая
+
+`--save-partial-result`: Сохранять результат неполной загрузки. Без включения данной опции ошибка в процессе выполнени загрузки приведет к восстановлению состояния базы данных на момент перед началом загрузки.
+
+### Параметры ограничения нагрузки {#limiters}
+
+Приведенные ниже параметры позволяют ограничить нагрузку на базу данных, создаваемую в процесс загрузки данных.
+
+{% note warning "Внимание" %}
+
+Некоторые из перечисленных ниже параметров имеют действующие значения по-умолчанию. Это значит, что если даже ни один из них не задан в команде вызова `tools restore`, нагрузка все равно будет ограничена.
+
+{% endnote %}
+
+`--bandwidth VAL`: Ограничение объема загрузки в секунду, по-умолчанию 0 (не установлено). `VAL` определяет объем, задается в виде числа с приставкой, например 2MiB.
+`--rps VAL`: Ограничение количества запросов на загрузку пакетов данных в базу данных в секунду, по умолчанию 30.
+`--in-flight VAL`: Ограничения количество запросов, одновременно находящихся в состоянии исполнения, по умолчанию 10.
+`--upload-batch-rows VAL`: Ограничение количества записей в пакете загружаемых данных, по умолчанию 0 (не ограничено). `VAL` определяет количество записей, задается в виде числа с необзятельной десятичной приставкой, например 1K.
+`--upload-batch-bytes VAL`: Ограничение объема пакета загружаемых данных, по умолчанию 512KB. `VAL` определяет объем, задается в виде числа с приставкой, например 1MiB.
+`--upload-batch-rus VAL`: Применимо только для Serverless баз данных, ограничивает потребление Request Units (RU) на загрузку одного пакета, по умолчанию 30 RU. Размер пакета подбирается под указанное значение. `VAL` определяет количество RU, задается в виде числа с необязятельной десятичной приставкой, например 100 или 1K.
+
+## Примеры {#examples}
+
+{% include [example_db1.md](../../_includes/example_db1.md) %}
+
+### Загрузка в корень базы данных
+
+Из текущей директории файловой системы:
+
+```
+{{ ydb-cli }} -p db1 tools restore -p . -i .
+```
+
+Из заданной директории файловой системы:
+
+```
+{{ ydb-cli }} -p db1 tools restore -p . -i ~/backup_db1
+```
+
+### Загрузка в заданную директорию в базе данных
+
+Из текущей директории файловой системы:
+
+```
+{{ ydb-cli }} -p db1 tools restore -p dir1/dir2 -i .
+```
+
+Из заданной директории файловой системы:
+
+```
+{{ ydb-cli }} -p db1 tools restore -p dir1/dir2 -i ~/backup_db1
+```
+
+Проверка соответствия схемы данных в базе данных и файловой системе:
+
+```
+{{ ydb-cli }} -p db1 tools restore -p dir1/dir2 -i ~/backup_db1 --dry-run
+```
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/file_structure.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/file_structure.md
new file mode 100644
index 0000000000..b3f76f809c
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/file_structure.md
@@ -0,0 +1,2 @@
+
+{% include [file_structure.md](_includes/file_structure.md) %}
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/index.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/index.md
new file mode 100644
index 0000000000..b3cf50bcae
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/index.md
@@ -0,0 +1,2 @@
+
+{% include [index.md](_includes/index.md) %}
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_conn.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_conn.md
new file mode 100644
index 0000000000..3dcccf4c5f
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_conn.md
@@ -0,0 +1 @@
+{% include [s3_conn.md](_includes/s3_conn.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_export.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_export.md
new file mode 100644
index 0000000000..f8a7bae0ab
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_export.md
@@ -0,0 +1 @@
+{% include [s3_export.md](_includes/s3_export.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_import.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_import.md
new file mode 100644
index 0000000000..b9b1861f64
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/s3_import.md
@@ -0,0 +1 @@
+{% include [s3_import.md](_includes/s3_import.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_i.yaml b/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_i.yaml
new file mode 100644
index 0000000000..bcfd46a3f0
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_i.yaml
@@ -0,0 +1,14 @@
+items:
+- name: Файловая структура выгрузки
+ href: file_structure.md
+- name: Выгрузка в файловую систему
+ href: tools_dump.md
+- name: Загрузка из файловой системы
+ href: tools_restore.md
+- name: Соединение и аутентификация с S3
+ href: s3_conn.md
+- name: Выгрузка в S3
+ href: s3_export.md
+- name: Загрузка из S3
+ href: s3_import.md
+
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_p.yaml b/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_p.yaml
new file mode 100644
index 0000000000..3e62ad228b
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/toc_p.yaml
@@ -0,0 +1,4 @@
+items:
+- name: Обзор
+ href: index.md
+- include: { mode: link, path: toc_i.yaml } \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_dump.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_dump.md
new file mode 100644
index 0000000000..ce24f8e2f5
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_dump.md
@@ -0,0 +1 @@
+{% include [tools_dump.md](_includes/tools_dump.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_restore.md b/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_restore.md
new file mode 100644
index 0000000000..4856ba9b5b
--- /dev/null
+++ b/ydb/docs/ru/core/reference/ydb-cli/export_import/tools_restore.md
@@ -0,0 +1 @@
+{% include [tools_restore.md](_includes/tools_restore.md) %} \ No newline at end of file
diff --git a/ydb/docs/ru/core/reference/ydb-cli/toc_i.yaml b/ydb/docs/ru/core/reference/ydb-cli/toc_i.yaml
index 5e86552ee8..cfbd425f39 100644
--- a/ydb/docs/ru/core/reference/ydb-cli/toc_i.yaml
+++ b/ydb/docs/ru/core/reference/ydb-cli/toc_i.yaml
@@ -31,6 +31,8 @@ items:
href: commands/index-ops.md
- name: Скан запросы
href: commands/scan-query.md
+ - name: Загрузка и выгрузка данных
+ include: { mode: link, path: export_import/toc_p.yaml }
# - name: Утилиты
# items:
# - name: Копирование таблиц