Переход с Azure Data Lake Storage 1-го поколения на Azure Data Lake Storage 2-го поколения с помощью портала Azure

В этой статье описано, как упростить миграцию с помощью портала Azure.

Примечание.

Azure Data Lake Storage 1-го поколения теперь прекращена. Ознакомьтесь с объявлением о выходе на пенсию здесь. Data Lake Storage 1-го поколения ресурсы больше не доступны. Если вам нужна специальная помощь, обратитесь к нам.

Вот видео, которое рассказывает вам больше об этом.

     Главы:


  • 00.37 . Введение

  • 01:16 . Подготовка к миграции

  • 07:15 . Копирование миграции

  • 17:40. Копирование и полная миграция

  • 19:43 — завершение миграции

  • 33:15 — после миграции

Прежде чем начать, ознакомьтесь с общим руководством по миграции с 1-го на 2-е поколение в разделе Рекомендации и шаблоны миграции для Azure Data Lake Storage.

Ваша учетная запись может не соответствовать миграции на основе портала на основе определенных ограничений. Если на портале Azure кнопка Миграция данных для вашей учетной записи 1-го поколения неактивна, то при наличии плана поддержки вы можете отправить запрос в службу поддержки. Вы также можете получить ответы от экспертов сообщества в Microsoft Q&A.

Примечание.

Для простоты в этой статье термином 1-е поколение заменяется Azure Data Lake Storage 1-го поколения, а термином 2-е поколение — Azure Data Lake Storage 2-го поколения.

Шаг 1. Создание учетной записи хранения с возможностями 2-го поколения

Azure Data Lake Storage 2-го поколения не является выделенной учетной записью хранения или типом службы. Это набор возможностей, которые вы можете получить, включив иерархическое пространство имен в учетной записи хранения Azure. Сведения о создании учетной записи с возможностями 2-го поколения см. в статье Создание учетной записи хранения для использования с Azure Data Lake Storage 2-го поколения.

При создании учетной записи обязательно укажите для параметров следующие значения.

Параметр Значение
Имя учетной записи хранения Любое требуемое имя. Это имя не обязательно должно совпадать с именем учетной записи 1-го поколения и может быть в любой подписке, которую вы выберете.
Местонахождение Тот же регион, который используется учетной записью Data Lake Storage 1-го поколения
Репликация LRS или ZRS
Минимальная версия TLS 1.0
NFS v3 Выключено
Иерархическое пространство имен хранилища Azure Data Lake Storage Gen2 (предварительная версия) Включен

Примечание.

Средство миграции в портал Azure не перемещает параметры учетной записи. Поэтому после создания учетной записи необходимо вручную настроить такие параметры, как шифрование, сетевые брандмауэры и защита данных.

Внимание

Убедитесь, что вы используете новую учетную запись, которая раньше не использовалась. Не выполняйте миграцию в ранее использовавшуюся учетную запись и не используйте учетную запись, из которой были удалены контейнеры для очистки учетной записи.

Шаг 2. Проверка назначений ролей на основе ролей Azure (Azure RBAC)

Для 2-го поколения убедитесь, что роль владельца данных BLOB-объектов служба хранилища была назначена удостоверению пользователя Microsoft Entra в область учетной записи хранения, родительской группы ресурсов или подписки.

Для 1-го поколения убедитесь, что роль владельца была назначена идентификатору Microsoft Entra в область учетной записи 1-го поколения, родительской группе ресурсов или подписке.

Шаг 3. Перенос рабочих нагрузок Azure Data Lake Analytics

Azure Data Lake Storage 2-го поколения не поддерживает Azure Data Lake Analytics. Использование Azure Data Lake Analytics будет прекращено 29 февраля 2024 года. Если вы попытаетесь использовать портал Azure для переноса учетной записи Azure Data Lake Storage 1-го поколения, используемой для Azure Data Lake Analytics, вы можете нарушить функционирование своих рабочих нагрузок Azure Data Lake Analytics. Прежде чем пытаться перенести учетную запись 1-го поколения, необходимо сначала перенести рабочие нагрузки Azure Data Lake Analytics в Azure Synapse Analytics или на другую поддерживаемую вычислительную платформу.

Дополнительные сведения см. в разделе Управление Azure Data Lake Analytics с помощью портала Azure.

Шаг 4. Подготовка учетной записи 1-го поколения

Имена файлов или каталогов с только пробелами или вкладками, заканчивающимися ., содержащими :или несколькими последовательными косыми чертами (//) несовместимы с 2-го поколения. Перед миграцией необходимо переименовать эти файлы или каталоги.

Для повышения производительности рекомендуется отложить миграцию по крайней мере десять дней с момента последней операции удаления. В учетной записи 1-го поколения удаленные файлы становятся обратимыми удаленными, а сборщик мусора не удаляет их окончательно до семи дней и займет несколько дополнительных дней для обработки очистки. Время очистки зависит от количества файлов. Все файлы, включая обратимо удаленные файлы, обрабатываются во время миграции. Если вы ожидаете, пока сборщик мусора окончательно удалил удаленные файлы, время ожидания может улучшиться.

Шаг 5. Выполнение миграции

Прежде чем начать, изучите два приведенных ниже варианта миграции и решите, следует ли просто скопировать данные из 1-го во 2-е поколение (рекомендуется) или выполнить полную миграцию.

Вариант 1. Только копирование данных (рекомендуется). В этом случае данные копируются из 1-го поколения в 2-го поколения. По мере копирования данных учетная запись 1-го поколения становится доступной только для чтения. После копирования данных будут доступны учетные записи и 1-го, и 2-го поколения. Однако необходимо обновить приложения и вычислительные рабочие нагрузки, чтобы использовать новую конечную точку 2-го поколения.

Вариант 2. Выполнение полной миграции. В этом случае данные копируются из 1-го поколения в 2-го поколения. После копирования данных весь трафик из учетной записи 1-го поколения будет перенаправлен в учетную запись с поддержкой 2-го поколения. Перенаправленные запросы используют уровень совместимости 1-го поколения для перевода вызовов API 1-го поколения в эквиваленты 2-го поколения. Во время миграции учетная запись 1-го поколения становится доступной только для чтения. После завершения миграции учетная запись 1-го поколения будет недоступна.

Независимо от выбранного варианта, после переноса и проверки правильности функционирования всех рабочих нагрузок учетную запись 1-го поколения можно удалить.

Вариант 1. Копирование данных из 1-го во 2-е поколение

  1. Чтобы начать, войдите на портал Azure.

  2. Найдите учетную запись Data Lake Storage 1-го поколения и откройте обзор учетной записи.

  3. Нажмите кнопку Перенести данные.

    Screenshot of the button to migrate.

  4. Выберите Копировать данные в новую учетную запись 2-го поколения.

    Screenshot of the copy data option.

  5. Предоставьте корпорации Майкрософт согласие на выполнение переноса данных, установив флажок. Затем нажмите кнопку "Применить ".

    Screenshot of the checkbox to provide consent.

    Индикатор выполнения отображается вместе с сообщением о состоянии подзаготовки. Эти индикаторы можно использовать для оценки хода выполнения миграции. Так как время выполнения каждой задачи зависит, индикатор хода выполнения не будет продвигаться по согласованной скорости. Например, индикатор хода выполнения может быстро перейти до 50 процентов, но затем занять немного больше времени, чтобы завершить оставшийся 50 процентов.

    Screenshot of progress bar when migrating data.

    Внимание

    Во время переноса данных учетная запись 1-го поколения становится доступной только для чтения, а учетная запись с поддержкой возможностей 2-го поколения отключена. После завершения миграции можно выполнять чтение и запись в обеих учетных записях.

    Можно остановить миграцию в любой момент, нажав кнопку Остановить миграцию.

    Screenshot of the stop migration option.

Вариант 2. Выполнение полной миграции

  1. Чтобы начать, войдите на портал Azure.

  2. Найдите учетную запись Data Lake Storage 1-го поколения и откройте обзор учетной записи.

  3. Нажмите кнопку Перенести данные.

    Screenshot of the migrate button.

  4. Выберите Выполнить миграцию в новую учетную запись 2-го поколения.

    Screenshot of the complete migration option.

  5. Предоставьте корпорации Майкрософт согласие на выполнение переноса данных, установив флажок. Затем нажмите кнопку "Применить ".

    Screenshot of the consent checkbox.

    Индикатор выполнения отображается вместе с сообщением о состоянии подзаготовки. Эти индикаторы можно использовать для оценки хода выполнения миграции. Так как время выполнения каждой задачи зависит, индикатор хода выполнения не будет продвигаться по согласованной скорости. Например, индикатор хода выполнения может быстро перейти до 50 процентов, но затем занять немного больше времени, чтобы завершить оставшийся 50 процентов.

    Screenshot of progress bar when performing a complete migration.

    Внимание

    Во время переноса данных учетная запись 1-го поколения становится доступной только для чтения, а учетная запись с поддержкой возможностей 2-го поколения отключается.

    Кроме того, во время перенаправления URI 1-го поколения обе учетные записи отключаются.

    После завершения миграции учетная запись 1-го поколения будет отключена. Данные в учетной записи 1-го поколения не будут доступны и будут удалены через 30 дней. Учетная запись 2-го поколения будет доступна для операций чтения и записи.

    Можно остановить миграцию в любой момент, пока не будет выполнено перенаправление URI, нажав кнопку Остановить миграцию.

    Screenshot of the migration stop button.

Шаг 6. Проверка завершения миграции

Если миграция завершена успешно, контейнер с именем 1-го поколения будет создан в учетной записи с поддержкой 2-го поколения, а все данные из учетной записи 1-го поколения будут скопированы в этот новый контейнер 1-го поколения. Чтобы найти данные по пути, существующему в 1-м поколениях, необходимо добавить префикс 1-го поколения в тот же путь, чтобы получить доступ к нему в 2-м поколениях. Например, путь с именем FolderRoot/FolderChild/FileName.csv в учетной записи 1-го поколения будет доступен по пути gen1/FolderRoot/FolderChild/FileName.csv в учетной записи 2-го поколения. Имена контейнеров нельзя переименовать в учетной записи 2-го поколения, поэтому этот контейнер gen1 в учетной записи 2-го поколения нельзя переименовать после миграции. Но при необходимости данные можно скопировать в новый контейнер в учетной записи 2-го поколения.

Если миграция не завершена, появится сообщение, которое указывает, что миграция остановилась из-за несовместимости. Если вам потребуется помощь на следующем шаге, обратитесь к служба поддержки Майкрософт. Это сообщение может появиться, если учетная запись с поддержкой 2-го поколения ранее использовалась или когда файлы и каталоги в учетной записи 1-го поколения используют несовместимые соглашения об именовании.

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

Шаг 7. Перенос рабочих нагрузок и приложений

  1. Настройте службы в рабочих нагрузках так, чтобы они указывали на конечную точку 2-го поколения. Ссылки на статьи, которые помогут вам настроить Azure Databricks, HDInsight и другие службы Azure для использования 2-го поколения, см. в статье Службы Azure, поддерживающие Azure Data Lake Storage 2-го поколения.

  2. Обновите приложения для использования API 2-го поколения. См. следующие руководства:

    Среда Статья
    Обозреватель службы хранилища Azure Использование Обозревателя службы хранилища Azure для управления каталогами и файлами в Azure Data Lake Storage 2-го поколения
    .NET Управление каталогами и файлами в Azure Data Lake Storage 2-го поколения с помощью .NET
    Java Управление каталогами и файлами в Azure Data Lake Storage 2-го поколения с помощью Java
    Python Управление каталогами и файлами в Azure Data Lake Storage 2-го поколения с помощью Python
    JavaScript (Node.js) Управление каталогами и файлами в Azure Data Lake Storage 2-го поколения с помощью пакета SDK для JavaScript в Node.js
    REST API REST API для Azure Data Lake Store
  3. Обновите скрипты для использования командлетов PowerShell Data Lake Storage 2-го поколения и команд Azure CLI.

  4. Выполните поиск ссылок на универсальный код ресурса (URI), содержащих строку adl://, в файлах кода, записных книжках Databricks, файлах HQL Apache Hive или любом другом файле, используемом в составе рабочих нагрузок. Замените эти ссылки форматированным универсальным кодом ресурса (URI) 2-го поколения новой учетной записи хранения. Например: универсальный код ресурса (URI) 1-го поколения adl://mydatalakestore.azuredatalakestore.net/mydirectory/myfile может превратиться в abfss://myfilesystem@mydatalakestore.dfs.core.windows.net/mydirectory/myfile.

Уровень совместимости 1-го поколения

Этот уровень пытается обеспечить совместимость приложений между 1-м и 2-м поколениями во время миграции, чтобы приложения могли продолжать использовать API-интерфейсы 1-го поколения для взаимодействия с данными в учетной записи с поддержкой 2-го поколения. Этот уровень имеет ограниченные функциональные возможности, и рекомендуется проверить рабочие нагрузки с помощью тестовых учетных записей, если этот подход используется в процессе миграции. Уровень совместимости реализуется на сервере, поэтому установка не требуется.

Внимание

Корпорация Майкрософт не рекомендует использовать эту возможность в качестве замены переноса рабочих нагрузок и приложений. Поддержка уровня совместимости 1-го поколения будет завершена после прекращения поддержки 1-го поколения 29 февраля 2024 года.

Чтобы свести к минимуму количество проблем на уровне совместимости, убедитесь, что пакеты SDK 1-го уровня используют следующие версии (или более поздние).

Язык Версия пакета SDK
.NET 2.3.9
Java 1.1.21
Python 0.0.51

Следующие функциональные возможности не поддерживаются в этом уровне совместимости.

  • Параметр API ListStatus для записи ListBefore.

  • API ListStatus с более чем 4000 файлов без маркера продолжения.

  • Кодирование блоков для операций добавления.

  • Все вызовы API, которые используются https://management.azure.com/ в качестве аудитории токенов Microsoft Entra.

  • Имена файлов или каталогов только с пробелами или символами табуляции, заканчивающиеся на символ ., содержащие символ : или несколько последовательных косых черт (//).

Часто задаваемые вопросы

Сколько времени займет миграция?

Данные и метаданные переносятся параллельно. Общее время, необходимое для завершения миграции, равно тому, какой из этих двух процессов завершен последний.

В следующей таблице показана приблизительная скорость каждой задачи обработки миграции.

Примечание.

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

Задача обработки Скорость
Копирование данных 9 ТБ в час
Проверка данных 9 миллионов файлов или папок в час
Копирование метаданных 4 миллиона файлов или папок в час
Обработка метаданных 25 миллионов файлов или папок в час
Дополнительная обработка метаданных (параметр копирования данных)1 50 миллионов файлов или папок в час

1 Дополнительное время обработки метаданных применяется только при выборе параметра копирования данных в новую учетную запись 2-го поколения. Это время обработки не применяется, если выбрать вариант полной миграции на новую учетную запись 2-го поколения.

Пример. Обработка большого объема данных и метаданных

В этом примере предполагается, что 300 ТБ данных и 200 миллионов элементов данных и метаданных.

Задача Предполагаемое время
Копирование данных 300 ТБ / 9 ТБ = 33,33 часа
Проверка данных 200 млн / 9 млн = 22,22 часа
Общее время миграции данных 33.33 + 22.2 = 55,55 часа
Копирование метаданных 200 млн / 4 млн = 50 часов
Обработка метаданных 200 млн / 25 млн = 8 часов
Дополнительная обработка метаданных — только параметр копирования данных 200 млн / 50 млн = 4 часа
Общее время миграции метаданных 50 + 8 + 4 = 62 часа
Общее время выполнения миграции только для данных 62 часа
Общее время выполнения полной миграции 62 - 4 = 58 часов
Пример. Обработка небольшого объема данных и метаданных

В этом примере предполагается, что 2 ТБ данных и 56 тысяч данных и элементов метаданных.

Задача Предполагаемое время
Копирование данных (2 ТБ / 9 ТБ) * 60 минут = 13,3 минуты
Проверка данных (56 000 / 9 млн) * 3600 секунд = 22,4 секунды
Общее время миграции данных 13,3 минуты + 22,4 секунды = приблизительно 14 минут
Копирование метаданных (56 000 / 4 млн) * 3600 секунд = около 51 секунд
Обработка метаданных 56 000/ 25 миллионов = 8 секунд
Дополнительная обработка метаданных — только параметр копирования данных (56 000 / 50 миллионов) * 3600 секунд = 4 секунды
Общее время миграции метаданных 51 + 8 + 4 = 63 секунды
Общее время выполнения миграции только для данных 14 минут
Общее время выполнения полной миграции 14 минут - 4 секунды = 13 минут и 56 секунд (приблизительно 14 минут)

Сколько стоит перенос данных?

Нет затрат на использование средства миграции на основе портала, однако вы будете выставлены счета за использование служб Azure Data Lake 1-го поколения и 2-го поколения. Во время миграции данных вы будете выставлены счета за хранение данных и транзакции учетной записи 1-го поколения.

После миграции, если вы выбрали вариант, который копирует только данные, вы будете выставлены счета за хранилище данных и транзакции для учетных записей Azure Data Lake 1-го поколения и 2-го поколения. Чтобы избежать выставления счетов за учетную запись 1-го поколения, удалите ее после обновления приложений, когда они начинают указывать на 2-го поколение. Если вы решили выполнить полную миграцию, счета выставляются только для хранилища данных и транзакций учетной записи с поддержкой 2-го поколения.

Убедитесь, что все учетные записи Azure Data Lake Analytics перенесены в Azure Synapse Analytics или на другую поддерживаемую вычислительную платформу. После переноса учетных записей Azure Data Lake Analytics повторите попытку предоставления согласия. Если проблема появится снова и у вас есть план поддержки, вы можете отправить запрос на поддержку. Вы также можете получить ответы от экспертов сообщества в Microsoft Q&A.

Можно ли вернуться к использованию учетной записи 1-го поколения после завершения миграции?

Если вы использовали Вариант 1. Копирование данных из 1-го во 2-е поколение, упомянутый выше, учетные записи 1-го и 2-го поколений будут доступны для операций чтения и записи после миграции. Однако если вы использовали Вариант 2. Выполнение полной миграции, то возврат к учетной записи 1-го поколения не поддерживается. В варианте 2 после завершения миграции данные в учетной записи 1-го поколения не будут доступны и будут удалены через 30 дней. Вы можете продолжать просматривать учетную запись 1-го поколения на портале Azure, а когда будете готовы, можете удалить учетную запись 1-го поколения.

Я хотела бы включить геоизбыточное хранилище (GRS) в учетной записи с поддержкой 2-го поколения. агента зависимостей?

После завершения миграции и в вариантах "Копировать данные" и "Завершить миграцию" можно изменить параметр избыточности на GRS, если вы не планируете использовать уровень совместимости приложений. Совместимость приложений не будет работать с учетными записями, используюющими избыточность GRS.

1-е поколение не содержит контейнеров, а 2-е поколение их содержит. Чего мне ожидать?

При копировании данных в учетную запись с поддержкой возможностей 2-го поколения автоматически создается контейнер с именем Gen1. В именах контейнеров 2-го поколения нельзя переименовать, поэтому данные после миграции можно скопировать в новый контейнер в 2-м поколения по мере необходимости.

Что следует учесть с точки зрения производительности миграции?

При копировании данных в учетную запись с поддержкой 2-го поколения на производительность влияют два фактора: количество файлов и объем метаданных. Например, на производительность миграции может повлиять большое количество небольших файлов.

Поддерживаются ли API-интерфейсы файловой системы WebHDFS в учетной записи 2-го поколения после миграции?

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

Что происходит с моей учетной записью 1-го поколения после даты выхода на пенсию?

Учетная запись становится недоступной. Вы не сможете:

  • Управление учетной записью

  • Доступ к данным в учетной записи

  • Получение обновлений службы до API-интерфейсов 1-го поколения, пакетов SDK или клиентских средств

  • Доступ к поддержке клиентов 1-го поколения по телефону или по электронной почте

См. действие: переход на Azure Data Lake Storage 2-го поколения к 29 февраля 2024 г.

Следующие шаги