INTEGRITY Документация

Стратегии миграции

Вы можете использовать сочетание Super Slurper и Sippy для эффективной миграции всех объектов с минимальным простоем.

Если исходный бакет активно используется для чтения и (или) записи

  1. Включите Sippy и начните использовать бакет R2 в своём приложении.
    • Это копирует объекты из вашего прежнего бакета в бакет R2 по запросу, когда приложение обращается к ним.
    • Новые загрузки будут отправляться в бакет R2.
  2. Используйте Super Slurper, чтобы запустить одноразовую миграцию и скопировать оставшиеся объекты в бакет R2.
    • В Целевой бакет R2 > Перезаписать файлы?, выберите "Skip existing".

Если исходный бакет читается нечасто

  1. Используйте Super Slurper, чтобы скопировать все объекты в бакет R2.
    • Обратите внимание: Super Slurper может пропустить некоторые объекты, если они были загружены уже после того, как он составил список объектов для копирования.
  2. Включите Sippy для бакета R2, а затем начните использовать его в своём приложении.
    • Новые загрузки будут отправляться в бакет R2.
    • Объекты, загруженные в то время, пока Super Slurper копировал объекты, будут скопированы по запросу (с помощью Sippy) в момент, когда их запросит приложение.

Оптимизация производительности миграции данных с помощью Slurper

В рамках одного аккаунта можно одновременно запускать до трёх заданий миграции Slurper, и каждое такое задание может обрабатывать заданное количество запросов в секунду.

Чтобы повысить общую пропускную способность и надежность, рекомендуем разделить миграцию на несколько меньших параллельных заданий с помощью параметра prefix (или подпути бакета).

При создании задания миграции:

  1. Перейдите в Исходный бакет шаг.
  2. В разделе Определение правил, в Bucket subpath, укажите подпути, чтобы разделить данные по префиксу.
  3. Завершите настройку миграции данных.

Например, предположим, что исходный бакет содержит следующее:

Вы можете создавать отдельные задания с префиксами, например:

Каждый префикс выполняется как отдельное задание миграции, что позволяет Slurper переносить данные параллельно. Это повышает общую скорость передачи и гарантирует, что сбой в одном задании не прервёт выполнение остальных.