Update README.md
This commit is contained in:
45
README.md
45
README.md
@@ -1369,9 +1369,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
2. semi_auto — основная миграция вручную, дельта-синхронизация автоматическая
|
2. semi_auto — основная миграция вручную, дельта-синхронизация автоматическая
|
||||||
3. auto — полностью автоматическая непрерывная миграция
|
3. auto — полностью автоматическая непрерывная миграция
|
||||||
|
|
||||||
|
</br>
|
||||||
</br>
|
</br>
|
||||||
|
|
||||||
**Команды управления:**
|
### Команды управления:
|
||||||
|
|
||||||
* migration start <source_dc> <target_dc> [db] [collection] — запуск миграции
|
* migration start <source_dc> <target_dc> [db] [collection] — запуск миграции
|
||||||
* migration status [task_id] — статус миграции
|
* migration status [task_id] — статус миграции
|
||||||
@@ -1382,8 +1383,9 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
* migration queue — состояние очереди изменений
|
* migration queue — состояние очереди изменений
|
||||||
|
|
||||||
</br>
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
**Компоненты системы**
|
### Компоненты системы
|
||||||
|
|
||||||
| Компонент | Описание | Настройки |
|
| Компонент | Описание | Настройки |
|
||||||
|-----------|----------|-----------|
|
|-----------|----------|-----------|
|
||||||
@@ -1394,7 +1396,9 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **Checkpoint & Resume** | Чекпоинты для возобновления миграции | `checkpoint_interval_sec` |
|
| **Checkpoint & Resume** | Чекпоинты для возобновления миграции | `checkpoint_interval_sec` |
|
||||||
| **Delta Sync** | Синхронизация изменений после основной миграции | `interval_sec, max_lag_sec` |
|
| **Delta Sync** | Синхронизация изменений после основной миграции | `interval_sec, max_lag_sec` |
|
||||||
| **Validation** | Проверка целостности данных | `sample_percent, max_errors` |
|
| **Validation** | Проверка целостности данных | `sample_percent, max_errors` |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
</br>
|
</br>
|
||||||
|
|
||||||
### Жизненный цикл миграции
|
### Жизненный цикл миграции
|
||||||
@@ -1407,6 +1411,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **DELTA_SYNC** | Синхронизация изменений, произошедших во время миграции | Автоматически после синхронизации | `migration pause`, `migration status` |
|
| **DELTA_SYNC** | Синхронизация изменений, произошедших во время миграции | Автоматически после синхронизации | `migration pause`, `migration status` |
|
||||||
| **VALIDATING** | Проверка целостности данных (контрольные суммы) | Автоматически после валидации | `migration status` |
|
| **VALIDATING** | Проверка целостности данных (контрольные суммы) | Автоматически после валидации | `migration status` |
|
||||||
| **COMPLETED** | Миграция успешно завершена | — | `migration validate`, `migration list` |
|
| **COMPLETED** | Миграция успешно завершена | — | `migration validate`, `migration list` |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Обработка исключительных состояний
|
### Обработка исключительных состояний
|
||||||
|
|
||||||
@@ -1420,6 +1428,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **DELTA_SYNC** | Критическая ошибка | → **FAILED** | Сетевой сбой, отказ узла, таймаут |
|
| **DELTA_SYNC** | Критическая ошибка | → **FAILED** | Сетевой сбой, отказ узла, таймаут |
|
||||||
| **PREPARING** | Критическая ошибка | → **FAILED** | Недоступность источника или цели |
|
| **PREPARING** | Критическая ошибка | → **FAILED** | Недоступность источника или цели |
|
||||||
| **VALIDATING** | Ошибка валидации | → **COMPLETED** | Ошибки логируются, миграция завершается |
|
| **VALIDATING** | Ошибка валидации | → **COMPLETED** | Ошибки логируются, миграция завершается |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Таблица переходов состояний
|
### Таблица переходов состояний
|
||||||
|
|
||||||
@@ -1441,6 +1453,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| COMPLETED | — | — |
|
| COMPLETED | — | — |
|
||||||
| FAILED | `migration resume` (после исправления) | MIGRATING |
|
| FAILED | `migration resume` (после исправления) | MIGRATING |
|
||||||
| FAILED | `migration cancel` | FAILED |
|
| FAILED | `migration cancel` | FAILED |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Временные метрики этапов
|
### Временные метрики этапов
|
||||||
|
|
||||||
@@ -1451,7 +1467,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **DELTA_SYNC** | Зависит от количества изменений | Интенсивность записи во время миграции, `interval_sec` |
|
| **DELTA_SYNC** | Зависит от количества изменений | Интенсивность записи во время миграции, `interval_sec` |
|
||||||
| **VALIDATING** | 5-30% от времени миграции | `sample_percent`, размер документов |
|
| **VALIDATING** | 5-30% от времени миграции | `sample_percent`, размер документов |
|
||||||
| **PAUSED** | Неограниченно | Время до возобновления пользователем |
|
| **PAUSED** | Неограниченно | Время до возобновления пользователем |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Поток данных
|
### Поток данных
|
||||||
|
|
||||||
@@ -1465,6 +1484,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| 6 | Дельта-синхронизация | CDC изменения |
|
| 6 | Дельта-синхронизация | CDC изменения |
|
||||||
| 7 | Валидация | SHA-256 контрольные суммы |
|
| 7 | Валидация | SHA-256 контрольные суммы |
|
||||||
| 8 | Завершение | Обновление статуса |
|
| 8 | Завершение | Обновление статуса |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
**Режимы работы**
|
**Режимы работы**
|
||||||
|
|
||||||
@@ -1473,6 +1496,10 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **manual** | Полностью ручное управление | Нет |
|
| **manual** | Полностью ручное управление | Нет |
|
||||||
| **semi_auto** | Основная миграция вручную, дельта автоматическая | Частичная |
|
| **semi_auto** | Основная миграция вручную, дельта автоматическая | Частичная |
|
||||||
| **auto** | Полностью автоматическая непрерывная миграция | Полная |
|
| **auto** | Полностью автоматическая непрерывная миграция | Полная |
|
||||||
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
**Пример конфигурации**
|
**Пример конфигурации**
|
||||||
|
|
||||||
@@ -1513,6 +1540,7 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
max_errors = 100
|
max_errors = 100
|
||||||
```
|
```
|
||||||
</br>
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Команды управления миграцией
|
### Команды управления миграцией
|
||||||
|
|
||||||
@@ -1531,9 +1559,11 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| `migration config` | Вывод текущей конфигурации мигратора из config.toml | `migration config` |
|
| `migration config` | Вывод текущей конфигурации мигратора из config.toml | `migration config` |
|
||||||
| `migration queue` | Отображение состояния очереди изменений (размер, LSN) | `migration queue` |
|
| `migration queue` | Отображение состояния очереди изменений (размер, LSN) | `migration queue` |
|
||||||
| `migration validate <task_id>` | Запуск валидации данных для завершённой миграции | `migration validate mig_1734567890_dc-primary` |
|
| `migration validate <task_id>` | Запуск валидации данных для завершённой миграции | `migration validate mig_1734567890_dc-primary` |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Статусы миграции
|
### Статусы миграции
|
||||||
|
|
||||||
| Статус | Описание | Индикатор | Возможные действия |
|
| Статус | Описание | Индикатор | Возможные действия |
|
||||||
@@ -1546,9 +1576,11 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| `completed` | Миграция успешно завершена, все данные перенесены | 🟢 Зелёный | `migration validate`, `migration list` |
|
| `completed` | Миграция успешно завершена, все данные перенесены | 🟢 Зелёный | `migration validate`, `migration list` |
|
||||||
| `failed` | Миграция завершилась с ошибкой, требуется вмешательство | 🔴 Красный | `migration status` (просмотр ошибки), `migration resume` (после исправления), `migration cancel` |
|
| `failed` | Миграция завершилась с ошибкой, требуется вмешательство | 🔴 Красный | `migration status` (просмотр ошибки), `migration resume` (после исправления), `migration cancel` |
|
||||||
| `paused` | Миграция приостановлена пользователем | 🟠 Оранжевый | `migration resume`, `migration cancel` |
|
| `paused` | Миграция приостановлена пользователем | 🟠 Оранжевый | `migration resume`, `migration cancel` |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Метрики мониторинга
|
### Метрики мониторинга
|
||||||
|
|
||||||
| Метрика | Описание | Единица измерения | Способ получения |
|
| Метрика | Описание | Единица измерения | Способ получения |
|
||||||
@@ -1568,8 +1600,9 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| `failed_docs` | Количество документов с ошибкой миграции | количество | `migration status` |
|
| `failed_docs` | Количество документов с ошибкой миграции | количество | `migration status` |
|
||||||
| `elapsed_time` | Время, прошедшее с начала миграции | секунды | `migration status` |
|
| `elapsed_time` | Время, прошедшее с начала миграции | секунды | `migration status` |
|
||||||
| `validation_errors` | Количество ошибок валидации | количество | `migration status` |
|
| `validation_errors` | Количество ошибок валидации | количество | `migration status` |
|
||||||
|
|
||||||
---
|
---
|
||||||
|
</br>
|
||||||
|
</br>
|
||||||
|
|
||||||
### Обработка ошибок
|
### Обработка ошибок
|
||||||
|
|
||||||
@@ -1585,7 +1618,7 @@ Idle → Preparing → Migrating → Delta Sync → Validating → Completed
|
|||||||
| **Ошибка валидации** | Контрольная сумма документа не совпадает | Логирование ошибки, продолжение миграции | Проверить целостность данных, при необходимости перезапустить миграцию |
|
| **Ошибка валидации** | Контрольная сумма документа не совпадает | Логирование ошибки, продолжение миграции | Проверить целостность данных, при необходимости перезапустить миграцию |
|
||||||
| **Прерывание пользователем** | Пользователь выполнил `migration cancel` | Немедленная остановка, переход в статус `failed` | — |
|
| **Прерывание пользователем** | Пользователь выполнил `migration cancel` | Немедленная остановка, переход в статус `failed` | — |
|
||||||
| **Таймаут дельта-синхронизации** | Задержка превысила `max_lag_sec` | Увеличение интервала или ручная синхронизация | Настроить `interval_sec` и `max_lag_sec`, проверить пропускную способность канала |
|
| **Таймаут дельта-синхронизации** | Задержка превысила `max_lag_sec` | Увеличение интервала или ручная синхронизация | Настроить `interval_sec` и `max_lag_sec`, проверить пропускную способность канала |
|
||||||
|
---
|
||||||
|
|
||||||
**Гарантии целостности**
|
**Гарантии целостности**
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user