Перенос данных в Azure и обратно

Существует несколько вариантов для передачи данных в Azure и обратно, выбор которых зависит от конкретных потребностей.

Физическая передача

Физическое оборудование можно использовать для передачи данных в Azure в следующих случаях:

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

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

Существует два основных способа физической передачи данных в Azure.

Служба "Импорт и экспорт Azure"

Служба Импорт и экспорт Azure позволяет безопасно переносить большие объемы данных в хранилище BLOB-объектов Azure или решение "Файлы Azure", отправляя внутренние жесткие диски SATA или SDD в центр обработки данных Azure. Эту службу также можно использовать для передачи данных из службы хранилища Azure на жесткие диски и отправки дисков для локальной загрузки.

Azure Data Box

Azure Data Box — это предоставляемая корпорацией Майкрософт (модуль), которая работает так же, как служба импорта и экспорта. С помощью Data Box корпорация Майкрософт предоставляет вам защищаемую, безопасную и устойчивую к незаконному воздействию передачу (модуль) и обрабатывает комплексную логистику, которую можно отслеживать на портале. Одним из преимуществ службы Data Box является простота использования. Нет необходимости приобретать несколько жестких дисков, выполнять их подготовку и передавать файлы на каждый из них. Data Box поддерживается многими ведущими отраслевыми партнерами Azure, чтобы упростить беспроблемное использование автономного транспорта в облако из своих продуктов.

Программы командной строки и API

При передаче данных с помощью скриптов и программных средств рассмотрите следующие варианты:

  • Azure CLI — это кроссплатформенное средство, которое позволяет управлять службами Azure и отправлять данные в службу хранилища.

  • AzCopy. Используйте AzCopy из командной строки Windows или Linux для удобного копирования данных в хранилище BLOB-объектов, хранилище файлов Azure и хранилище таблиц Azure с оптимальной производительностью. AzCopy поддерживает параллелизм и возможность возобновить операции копирования в случае сбоя. AzCopy можно также использовать для копирования данных из AWS в Azure. Основной платформой для программного доступа AzCopy выступает библиотека перемещения данных для службы хранилища Microsoft Azure. Он предоставляется в виде библиотеки .NET Core.

  • В PowerShellкомандлет PowerShell Start-AzureStorageBlobCopy является вариантом для администраторов Windows, которые используют PowerShell.

  • AdlCopy позволяет копировать данные из хранилища BLOB-объектов в Azure Data Lake Storage. Его также можно использовать для копирования данных между двумя учетными записями Data Lake Storage. Однако его нельзя использовать для копирования данных из Data Lake Storage в хранилище BLOB-объектов.

  • Distcp используется для копирования данных в хранилище кластера HDInsight (WASB) и из нее в учетную запись Data Lake Storage.

  • Sqoop — это проект Apache и часть экосистемы Hadoop. Он предварительно установлен на всех кластерах HDInsight. Благодаря ему можно выполнять передачу данных между кластером HDInsight и реляционными базами данных (например, SQL, Oracle, MySQL и т. д.). Sqoop — это коллекция связанных средств, включая средства импорта и экспорта. Sqoop работает с кластерами HDInsight, используя хранилище BLOB-объектов или Data Lake Storage подключенное хранилище.

  • PolyBase — это технология, которая обращается к данным за пределами базы данных с помощью языка T-SQL. В SQL Server 2016 г. он позволяет выполнять запросы к внешним данным в Hadoop, а также импортировать или экспортировать данные из хранилища BLOB-объектов. В Azure Synapse Analytics можно импортировать или экспортировать данные из хранилища BLOB-объектов и Data Lake Storage. В настоящее время PolyBase — это самый быстрый метод импорта данных в Azure Synapse Analytics.

  • Используйте командную строку Hadoop при наличии данных, находящихся на головном узле кластера HDInsight. С помощью hadoop -copyFromLocal команды можно скопировать эти данные в подключенное хранилище кластера, например хранилище BLOB-объектов или Data Lake Storage. Чтобы использовать команду Hadoop, необходимо сначала подключиться к головному узлу. После подключения вы можете отправить файл в хранилище.

Графический интерфейс

Рассмотрите следующие варианты, если вы передаете только несколько файлов или объектов данных и вам не нужно автоматизировать процесс.

  • Обозреватель службы хранилища Azure — это кроссплатформенное средство, позволяющее управлять содержимым учетных записей хранения Azure. С его помощью можно передавать и скачивать большие двоичные объекты, файлы, очереди, таблицы и сущности Azure Cosmos DB, а также управлять ими. Используйте его с хранилищем BLOB-объектов для управления большими двоичными объектами и папками, а также отправки и скачивания больших двоичных объектов между локальной файловой системой и хранилищем BLOB-объектов или между учетными записями хранения.

  • Портал Azure. Хранилище BLOB-объектов и Data Lake Storage предоставляют веб-интерфейс для изучения файлов и отправки новых файлов. Этот вариант подходит, если вы не хотите устанавливать средства или выдавать команды для быстрого изучения файлов или если вы хотите загрузить несколько новых.

Синхронизация данных и конвейеры

  • Фабрика данных Azure — это управляемая служба, наиболее подходящая для регулярной передачи файлов между многими службами Azure, локальными системами или сочетанием этих двух служб. С помощью Фабрики данных можно создавать и планировать управляемые данными рабочие процессы, называемые конвейерами, которые поглотят данные из разрозненных хранилищ данных. Фабрика данных может обрабатывать и преобразовывать данные с помощью служб вычислений, таких как Azure HDInsight Hadoop, Spark, Azure Data Lake Analytics и Машинное обучение Azure. Вы можете создавать управляемые данными рабочие процессы для оркестрации и автоматизации перемещения и преобразования данных.

  • Конвейеры и действия в Фабрике данных и Azure Synapse Analytics можно использовать для создания комплексных рабочих процессов на основе данных для сценариев перемещения и обработки данных. Кроме того, среда выполнения интеграции Фабрика данных Azure используется для предоставления возможностей интеграции данных в разных сетевых средах.

  • Шлюз Azure Data Box передает данные в Azure и из Него, но это виртуальный (модуль), а не жесткий диск. Виртуальные машины, находящиеся в локальной сети, записывают данные в шлюз Data Box с помощью протоколов NFS и SMB. Затем устройство передает ваши данные в Azure.

Основные критерии выбора

Для сценариев передачи данных выберите систему в соответствии с вашими потребностями, ответив на следующие вопросы.

  • Нужно ли передавать большие объемы данных, где это через подключение к Интернету займет слишком много времени, будет ненадежным или слишком дорогим? Если да, рассмотрите возможность применения физической передачи данных.

  • Вы предпочитаете создавать скрипты для задач передачи данных, чтобы их можно было использовать повторно? Если да, выберите один из параметров командной строки или Фабрику данных.

  • Нужно ли передавать большой объем данных через сетевое подключение? В этом случае выберите параметр, оптимизированный для больших данных.

  • Вам необходимо передавать данные в реляционную базу данных или из нее? Если да, выберите вариант, поддерживающий одну или несколько реляционных баз данных. Для некоторых из этих параметров также требуется кластер Hadoop.

  • Требуется ли вам автоматизированный конвейер данных или оркестрация рабочего процесса? Если да, рассмотрите фабрику данных.

Матрица возможностей

В следующих таблицах перечислены основные различия в возможностях.

Физическая передача

Функция Служба импорта и экспорта Data Box
Форм-фактор Внутренние жесткие диски SATA или SDD Безопасное, защищенное от несанкционированного доступа одно аппаратное устройство
Корпорация Майкрософт управляет материально-техническим обеспечением доставки Нет Да
Интегрируется с партнерскими продуктами Нет Да
Пользовательское устройство Нет Да

Средства командной строки

Hadoop/HDInsight:

Функция Distcp Sqoop Интерфейс командной строки Hadoop
Оптимизация для больших объемов данных Да Да Да
Копирование в реляционную базу данных Нет Да Нет
Копирование из реляционной базы данных Нет Да Нет
Копирование в хранилище BLOB-объектов Да Да Да
Копирование из хранилища BLOB-объектов Да Да Нет
Копирование в Data Lake Storage Да Да Да
Копирование из Data Lake Storage Да Да Нет

Прочее:

Функция Azure CLI AzCopy PowerShell AdlCopy PolyBase
Совместимые платформы Linux, OS X, Windows Linux, Windows Windows Linux, OS X, Windows SQL Server, Azure Synapse Analytics
Оптимизация для больших объемов данных Нет Да Нет Да 1 Да 2
Копирование в реляционную базу данных Нет Нет Нет Нет Да
Копирование из реляционной базы данных Нет Нет Нет Нет Да
Копирование в хранилище BLOB-объектов Да Да Да Нет Да
Копирование из хранилища BLOB-объектов Да Да Да Да Да
Копирование в Data Lake Storage Нет Да Да Да Да
Копирование из Data Lake Storage Нет Нет Да Да Да

[1] AdlCopy оптимизировано для передачи больших объемов данных при использовании учетной записи Data Lake Analytics.

[2] Производительность PolyBase можно увеличить, отправляя результаты вычислений в Hadoop и используя масштабируемые группы PolyBase для обеспечения параллельной передачи данных между экземплярами SQL Server и узлами Hadoop.

Графические интерфейсы, синхронизация данных и конвейеры данных

Функция Обозреватель службы хранилища Azure Портал Azure* Фабрика данных Шлюз Data Box
Оптимизация для больших объемов данных Нет Нет Да Да
Копирование в реляционную базу данных Нет Нет Да Нет
Копирование из реляционной базы данных Нет Нет Да Нет
Копирование в хранилище BLOB-объектов Да Нет Да Да
Копирование из хранилища BLOB-объектов Да Нет Да Нет
Копирование в Data Lake Storage Нет Нет Да Нет
Копирование из Data Lake Storage Нет Нет Да Нет
Отправка в хранилище BLOB-объектов Да Да Да Да
Отправка в Data Lake Storage Да Да Да Да
Оркестрация передачи данных. Нет Нет Да Нет
Пользовательские преобразования данных Нет Нет Да Нет
Модель ценообразования Бесплатный Бесплатный Оплата за использование Оплата за единицу

* портал Azure в данном случае представляет веб-средства просмотра для хранилища BLOB-объектов и Data Lake Storage.

Соавторы

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

Основной автор:

Дальнейшие действия