Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
AzCopy — это служебная программа командной строки. Она предназначена для копирования данных из хранилища BLOB-объектов, хранилища файлов и хранилища таблиц Microsoft Azure (и обратно) с помощью простых команд, обеспечивающих оптимальную производительность. Вы можете перемещать данные между файловой системой и учетной записью хранения или между разными учетными записями хранения.
Внимание
В данной статье описывается более ранняя версия AzCopy. Чтобы установить последнюю версию AzCopy, см. статью AzCopy версии 10.
Если вы решили установить старую версию AzCopy (AzCopy версии 8.1), можно скачать несколько версий. AzCopy для Windows работает с параметрами командной строки в формате Windows. Инструмент AzCopy для Linux предназначен для платформ Linux и использует параметры командной строки в формате POSIX. В этой статье рассматривается AzCopy для Windows.
Скачивание и установка AzCopy (v8.1) в Windows
Скачайте AzCopy (v8.1) в Windows.
Заметки о релизе AzCopy для Windows 8.1
- В последней версии служба таблиц уже не поддерживается. Если вы используете функцию экспорта таблиц, загрузите AzCopy версии 7.3.
- Собрано с использованием .NET Core 2.1, и все зависимости .NET Core теперь включены в установочный пакет.
- Добавлена поддержка проверки подлинности OAuth. Чтобы выполнить вход с помощью Azure Active Directory, используйте
azcopy login
.
AzCopy с поддержкой таблиц (версия 7.3)
Скачайте AzCopy версии 7.3 с поддержкой таблиц.
Действия после установки
После установки AzCopy для Windows с помощью установщика откройте командное окно и перейдите к каталогу установки AzCopy на компьютере, где располагается исполняемый файл AzCopy.exe
. При необходимости можно добавить место установки AzCopy к системному пути. По умолчанию инструмент AzCopy установлен в %ProgramFiles(x86)%\Microsoft SDKs\Azure\AzCopy
или %ProgramFiles%\Microsoft SDKs\Azure\AzCopy
.
Написание первой команды AzCopy
В командах AzCopy используется следующий базовый синтаксис:
AzCopy /Source:<source> /Dest:<destination> [Options]
В приведенных ниже примерах описаны разные сценарии копирования данных из хранилища больших двоичных объектов, файлов и таблиц Microsoft Azure (и обратно). Для подробного объяснения параметров, используемых в каждом примере, см. раздел параметры AzCopy.
Скачивание блобов из хранилища блобов
Рассмотрим несколько способов загрузки блобов с помощью AzCopy.
Скачивание одного большого двоичного объекта
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"
Обратите внимание: если папка C:\myfolder
не существует, AzCopy создаст ее и скачает abc.txt
в эту новую папку.
Скачивание одного объекта BLOB из вторичного региона
AzCopy /Source:https://myaccount-secondary.blob.core.windows.net/mynewcontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"
Обратите внимание, что для доступа к дополнительному региону необходимо включить геоизбыточное хранилище с доступом только для чтения.
Скачайте все объекты BLOB в контейнере
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /S
Предположим, что в указанном контейнере находятся следующие BLOBы:
abc.txt
abc1.txt
abc2.txt
vd1\a.txt
vd1\abcd.txt
После скачивания в каталог C:\myfolder
будут помещены следующие файлы:
C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\vd1\a.txt
C:\myfolder\vd1\abcd.txt
Если не указать параметр /S
, области памяти не будут загружены.
Скачать BLOB-объекты с определенным префиксом
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:a /S
Предположим, что в указанном контейнере находятся следующие BLOB-объекты: Скачиваются все объекты blob, имя которых начинается с префикса a
:
abc.txt
abc1.txt
abc2.txt
xyz.txt
vd1\a.txt
vd1\abcd.txt
После скачивания в папку C:\myfolder
будут помещены следующие файлы:
C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
Префикс применяется к виртуальному каталогу, который формирует первую часть имени BLOB. В указанном выше примере виртуальный каталог не соответствует заданному префиксу и поэтому не скачивается. Кроме того, если параметр /S
не указан, то AzCopy не загружает ни одного блоба.
Установите время последнего изменения экспортированных файлов таким же, как у исходных облаков данных.
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT
Исключить большие двоичные объекты из операции скачивания вы можете также на основе времени их последнего изменения. Например, если вы хотите исключить объекты BLOB, последний раз измененные в то же время, что и файл назначения, или позже, добавьте параметр /XN
:
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XN
Если необходимо исключить блобы, время последнего изменения которых совпадает с временем изменения файла назначения или раньше, добавьте параметр /XO
.
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XO
Upload blobs to Blob storage (Отправка больших двоичных объектов в хранилище BLOB-объектов)
Рассмотрим несколько способов отправки больших двоичных объектов с помощью AzCopy.
Загрузка одного блоба
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:"abc.txt"
Если указанный контейнер назначения не существует, AzCopy создаст его и передаст в него файл.
Загрузите один BLOB в виртуальный каталог
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer/vd /DestKey:key /Pattern:abc.txt
Если указанный виртуальный каталог не существует, AzCopy скачает файл и включит имя виртуального каталога в его имя (например, vd/abc.txt
в указанном выше примере).
Загрузите все блобы в папке
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /S
Указание параметра /S
позволяет загрузить содержимое указанного каталога в хранилище BLOB-объектов рекурсивно, то есть загружаются все вложенные папки и их файлы. Например, предположим, что следующие файлы находятся в папке C:\myfolder
:
C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\subfolder\a.txt
C:\myfolder\subfolder\abcd.txt
После загрузки в контейнер будут помещены следующие файлы:
abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt
Если вы не укажете параметр /S
, программа AzCopy не выполнит отправку рекурсивно. Когда передача завершится, в контейнер будут помещены следующие файлы:
abc.txt
abc1.txt
abc2.txt
Загрузить блобы, соответствующие определённому шаблону
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:a* /S
Предположим, что следующие файлы размещены в папке C:\myfolder
:
C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\xyz.txt
C:\myfolder\subfolder\a.txt
C:\myfolder\subfolder\abcd.txt
После операции загрузки контейнер включает следующие файлы:
abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt
Если вы не укажете параметр /S
, программа AzCopy будет загружать только блобы, которые не находятся в виртуальном каталоге.
C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
Укажите MIME-тип содержимого целевого блоба
По умолчанию AzCopy задает для типа содержимого целевого блоба значение application/octet-stream
. Начиная с версии 3.1.0 вы можете задать тип содержимого с помощью параметра /SetContentType:[content-type]
. Этот синтаксис задает тип содержимого для всех блобов в операции загрузки.
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType:video/mp4
Если вы укажете /SetContentType
, не задав значения, AzCopy установит тип содержимого для каждого объекта или файла в соответствии с его расширением.
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType
Копирование BLOB-объектов в хранилище объектов BLOB
Рассмотрим несколько способов копирования блобов из одного расположения в другое с помощью AzCopy.
Копирование одного объекта BLOB из одного контейнера в другой в пределах одной учетной записи хранения
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1 /Dest:https://myaccount.blob.core.windows.net/mycontainer2 /SourceKey:key /DestKey:key /Pattern:abc.txt
При копировании объекта Blob в пределах учетной записи хранения выполняется операция копирования на стороне сервера.
Копирование одного большого двоичного объекта из одной учетной записи хранения в другую
AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 /Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt
При копировании блоба между учетными записями хранения выполняется операция копирования на стороне сервера.
Копирование одного BLOB из дополнительного региона в основной регион
AzCopy /Source:https://myaccount1-secondary.blob.core.windows.net/mynewcontainer1 /Dest:https://myaccount2.blob.core.windows.net/mynewcontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt
Обратите внимание, что для доступа к дополнительному хранилищу необходимо включить геоизбыточное хранилище с доступом только для чтения.
Копирование одного блоба и его моментальных снимков из одного хранилища в другое
AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 /Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt /Snapshot
После операции копирования целевой контейнер включает BLOB и его моментальные снимки. Предположим, что большой двоичный объект в приведенном выше примере имеет два моментальных снимка, тогда контейнер будет содержать следующий большой двоичный объект и моментальные снимки:
abc.txt
abc (2013-02-25 080757).txt
abc (2014-02-21 150331).txt
Скопировать все блообы в контейнере в другую учетную запись облачного хранилища
AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1
/Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /S
Если задать параметр /S, содержимое указанного контейнера отправится рекурсивно. Подробнее см. в разделе Загрузка всех объектов типа BLOB в папке для дополнительной информации и примера.
Синхронное копирование объектов из одного аккаунта хранения в другой
По умолчанию AzCopy выполняет асинхронное копирование данных между двумя конечными точками хранилища. Таким образом, операция копирования выполняется в фоновом режиме, используя свободную пропускную способность, для которой не предусмотрено соглашение об уровне обслуживания касательно скорости копирования большого двоичного объекта, и AzCopy будет периодически проверять состояние операции копирования до ее завершения или сбоя.
Параметр /SyncCopy
обеспечивает постоянную скорость операции копирования. AzCopy выполняет синхронное копирование, скачивая объекты BLOB из указанного источника в локальную память, а затем загружая их в хранилище BLOB.
AzCopy /Source:https://myaccount1.blob.core.windows.net/myContainer/ /Dest:https://myaccount2.blob.core.windows.net/myContainer/ /SourceKey:key1 /DestKey:key2 /Pattern:ab /SyncCopy
Использование параметра /SyncCopy
может повлечь дополнительные затраты на исходящие данные по сравнению с асинхронным копированием. Во избежание таких затрат мы советуем использовать этот параметр в виртуальных машинах Azure, которые находятся в одном регионе с вашей учетной записью хранения.
Скачивание файлов из хранилища файлов
Рассмотрим несколько способов скачивания файлов с помощью AzCopy.
Скачивание одного файла
AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/myfolder1/ /Dest:C:\myfolder /SourceKey:key /Pattern:abc.txt
Если указанный источник является общей папкой Azure, необходимо указать точное имя файла (напримерabc.txt
, для скачивания одного файла) или указать параметр /S
для скачивания всех файлов в общей папке рекурсивно. Попытка одновременно задать шаблон файла и параметр /S
приводит к ошибке.
Скачивание всех файлов в каталоге
AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/ /Dest:C:\myfolder /SourceKey:key /S
Обратите внимание на то, что пустые папки не скачиваются.
Загрузка файлов в файловое хранилище Azure
Рассмотрим несколько способов отправки файлов с помощью AzCopy.
Отправка одного файла
AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:abc.txt
Загрузите все файлы в папку
AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /S
Обратите внимание на то, что пустые папки не отправляются.
Отправка файлов, соответствующих определенному шаблону
AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:ab* /S
Копирование файлов в хранилище файлов
Рассмотрим несколько способов копирования файлов в файловый ресурс Azure с помощью AzCopy.
Копирование из одной общей папки в другую
AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S
При копировании файла между файловыми ресурсами выполняется операция копирования на стороне сервера.
Копирование из файлового хранилища Azure в облако (Blob)
AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare/ /Dest:https://myaccount2.blob.core.windows.net/mycontainer/ /SourceKey:key1 /DestKey:key2 /S
При копировании файла из файлового ресурса в объект blob выполняется серверная операция копирования.
Копирование объекта Blob из хранилища Blob в файловое хранилище Azure.
AzCopy /Source:https://myaccount1.blob.core.windows.net/mycontainer/ /Dest:https://myaccount2.file.core.windows.net/myfileshare/ /SourceKey:key1 /DestKey:key2 /S
При копировании файла из блоба в общую папку выполняется операция копирования на стороне сервера.
Синхронное копирование файлов
Пользователь также может указать параметр /SyncCopy
для синхронного копирования данных из хранилища файлов в хранилище файлов, из хранилища файлов в хранилище BLOB-объектов, а также из хранилища BLOB-объектов в хранилище файлов. AzCopy сделает это, скачивая данные источника в локальную память и отправляя их в место назначения. Взимается стандартная плата за исходящий трафик.
AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S /SyncCopy
При копировании из хранилища файлов в хранилище BLOB-объектов пользователь может указать параметр /BlobType:page
для изменения типа большого двоичного объекта назначения. По умолчанию используется блочный BLOB-объект.
Обратите внимание на то, что параметр /SyncCopy
может повлечь дополнительные затраты на исходящий трафик по сравнению с асинхронным копированием. Во избежание таких затрат мы советуем использовать этот режим на виртуальных машинах Azure, которые находятся в одном регионе с исходной учетной записью хранения.
Экспорт данных из хранилища таблиц
Рассмотрим пример экспорта данных из хранилища таблиц Azure с помощью AzCopy.
Экспорт таблицы
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key
AzCopy создает файл манифеста в заданной целевой папке. Файл манифеста используется в процессе импорта для определения нужных файлов данных и проведения валидации данных. В файле описания по умолчанию используется следующее соглашение о наименовании:
<account name>_<table name>_<timestamp>.manifest
Пользователь может также указать параметр /Manifest:<manifest file name>
для задания имени файла манифеста.
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /Manifest:abc.manifest
Разделите экспорт из хранилища таблиц на несколько файлов
AzCopy /Source:https://myaccount.table.core.windows.net/mytable/ /Dest:C:\myfolder /SourceKey:key /S /SplitSize:100
AzCopy использует индекс тома в именах разделенных файлов для того, чтобы отличить один файл от другого. Индекс тома состоит из двух частей: индекс диапазонов ключей секций и индекс разделенного файла. Оба индекса отсчитываются, начиная с нуля.
Индекс диапазонов ключей разделов равен 0, если пользователь не укажет параметр /PKRS
.
Предположим, например, что AzCopy создает два файла данных после того, как пользователь задал значение параметра /SplitSize
. В таком случае конечные имена файлов могут выглядеть следующим образом:
myaccount_mytable_20140903T051850.8128447Z_0_0_C3040FE8.json
myaccount_mytable_20140903T051850.8128447Z_0_1_0AB9AC20.json
Обратите внимание, что минимальное возможное значение для /SplitSize
составляет 32 МБ. Если в качестве назначения задано хранилище BLOB-объектов, AzCopy разделит файл данных, как только размер файла достигнет предельного значения (200 ГБ), вне зависимости от того, задал ли пользователь параметр /SplitSize
.
Экспорт таблицы в файл данных формата JSON или CSV
По умолчанию AzCopy экспортирует таблицы в файлы данных в формате JSON. Чтобы экспортировать таблицы в формате JSON или CSV, вы можете задать параметр /PayloadFormat:JSON|CSV
.
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PayloadFormat:CSV
При указании формата полезных данных CSV программа AzCopy создает файл схемы с расширением .schema.csv
для каждого файла данных.
Экспорт объектов таблицы одновременно
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PKRS:"aa#bb"
Если пользователь задал параметр /PKRS
, AzCopy начнет выполнение параллельных операций для экспорта сущностей. Каждая операция экспортирует один диапазон ключей секции.
Обратите внимание на то, что количество одновременных операций можно контролировать с помощью параметра /NC
. При копировании сущностей таблиц AzCopy использует информацию о количестве основных процессоров в качестве значения /NC
по умолчанию для параметра /NC
, даже если параметр не задан. Если пользователь задает параметр /PKRS
, AzCopy использует меньшее из двух значений - диапазоны ключей раздела или явно или неявно заданное количество одновременных операций - чтобы определить количество операций, которые можно запустить одновременно. Для получения более подробной информации введите в командной строке AzCopy /?:NC
.
Экспорт таблицы в Blob-хранилище
AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:https://myaccount.blob.core.windows.net/mycontainer/ /SourceKey:key1 /Destkey:key2
AzCopy создает файл данных в формате JSON в контейнере больших двоичных объектов в соответствии с соглашением об именовании:
<account name>_<table name>_<timestamp>_<volume index>_<CRC>.json
Созданный JSON-файл следует формату полезной нагрузки с минимальными метаданными. За более подробной информацией о формате полезных данных обратитесь к разделу Формат полезных данных для служб работы с таблицами.
Обратите внимание: при экспорте таблиц в большие двоичные объекты программа AzCopy скачивает объекты таблицы в локальные временные файлы данных и отправляет эти объекты в большой двоичный объект. Эти временные файлы данных помещаются в папку с файлами журнала с путем по умолчанию "%LocalAppData%\Microsoft\Azure\AzCopy
". Вы можете указать параметр /Z:[journal-file-folder], чтобы изменить расположение папки файлов журнала и таким образом изменить расположение временных файлов данных. Размер временных файлов данных зависит от размера сущностей вашей таблицы и размера, указанного вами с параметром /SplitSize. Несмотря на то, что временный файл данных на локальном диске удаляется сразу после загрузки в хранилище блобов, убедитесь, что на локальном диске достаточно места для хранения этих временных файлов данных до их удаления.
Импорт данных в хранилище таблиц
Рассмотрим пример импорта данных в хранилище таблиц Azure с помощью AzCopy.
Импорт таблицы
AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.core.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace
Параметр /EntityOperation
определяет способ размещения данных в таблице. Возможны следующие значения:
-
InsertOrSkip
: пропускает существующую сущность или вставляет новую, если сущности нет в таблице. -
InsertOrMerge
: объединяет существующую сущность или вставляет новую, если сущности нет в таблице. -
InsertOrReplace
: заменяет существующую сущность или вставляет новую, если сущности нет в таблице.
Обратите внимание на то, что вы не можете задать значение параметра /PKRS
в сценарии импорта данных. В отличие от сценария экспорта данных, в котором необходимо задавать параметр /PKRS
для начала параллельных операций, при импорте таблиц программа AzCopy задает параметр параллельных операций по умолчанию. Количество одновременных операций по умолчанию начинается и равно количеству ядер процессора. Однако, вы можете задать другое количество с помощью параметра /NC
. Для получения более подробной информации введите в командной строке AzCopy /?:NC
.
Обратите внимание, что программа AzCopy поддерживает импорт только для формата JSON, но не для формата CSV. AzCopy не поддерживает импорт таблиц из созданных пользователями JSON-файла и файла манифеста. Оба файла должны поступить в результате экспорта таблицы AzCopy. Чтобы избежать ошибок, не изменяйте экспортированный JSON-файл и файл манифеста.
Импорт сущностей в таблицу из хранилища BLOB-объектов
Предположим, контейнер Blob содержит следующее: JSON-файл, представляющий таблицу Azure, и сопутствующий файл манифеста.
myaccount_mytable_20140103T112020.manifest
myaccount_mytable_20140103T112020_0_0_0AF395F1DC42E952.json
Чтобы импортировать объекты в таблицу с помощью файла манифеста в данном контейнере BLOB, вы можете выполнить следующую команду:
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:https://myaccount.table.core.windows.net/mytable /SourceKey:key1 /DestKey:key2 /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:"InsertOrReplace"
Другие функции AzCopy
Давайте рассмотрим некоторые другие функции AzCopy.
Копирование только тех данных, которых нет в целевой папке
Предотвратить копирование старого или нового ресурса позволяют параметры /XO
и /XN
соответственно. Если нужно скопировать только те исходные ресурсы, которых нет в целевой папке, в команде AzCopy вы можете указать оба параметра:
/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /XO /XN
/Source:C:\myfolder /Dest:http://myaccount.file.core.windows.net/myfileshare /DestKey:<destkey> /S /XO /XN
/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:http://myaccount.blob.core.windows.net/mycontainer1 /SourceKey:<sourcekey> /DestKey:<destkey> /S /XO /XN
Обратите внимание, что эта функция не поддерживается, если источником или местом назначения является таблица.
Использование файла ответа для задания параметров командной строки
AzCopy /@:"C:\responsefiles\copyoperation.txt"
В файл ответа можно включить параметры командной строки AzCopy. AzCopy обрабатывает параметры в файле, как если бы он были заданы в командной строке, выполняя прямую замену содержимого файла.
Предположим, у нас имеется файл ответа с именем copyoperation.txt
, содержащий следующие строки: Каждый параметр AzCopy можно указать на одной строке.
/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y
или на отдельных строках:
/Source:http://myaccount.blob.core.windows.net/mycontainer
/Dest:C:\myfolder
/SourceKey:<sourcekey>
/S
/Y
При выполнении AzCopy возникнет ошибка, если разделить параметр на две строки, как показано ниже на примере параметра /sourcekey
.
http://myaccount.blob.core.windows.net/mycontainer
C:\myfolder
/sourcekey:
<sourcekey>
/S
/Y
Использование нескольких файлов ответа для выбора параметров командной строки
Предположим, что у нас имеется файл ответа с именем source.txt
, который указывает исходный контейнер:
/Source:http://myaccount.blob.core.windows.net/mycontainer
И файл ответа с именем dest.txt
, который указывает папку назначения в файловой системе:
/Dest:C:\myfolder
А также файл ответа с именем options.txt
, определяющий параметры для AzCopy:
/S /Y
Чтобы вызвать AzCopy с этими файлами ответов, размещенными в каталоге C:\responsefiles
, используйте команду:
AzCopy /@:"C:\responsefiles\source.txt" /@:"C:\responsefiles\dest.txt" /SourceKey:<sourcekey> /@:"C:\responsefiles\options.txt"
AzCopy обрабатывает эту команду, как если бы все индивидуальные параметры были включены в командную строку:
AzCopy /Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y
Укажите подпись общего доступа (SAS)
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1 /Dest:https://myaccount.blob.core.windows.net/mycontainer2 /SourceSAS:SAS1 /DestSAS:SAS2 /Pattern:abc.txt
Кроме того, вы можете указать SAS в коде URI контейнера:
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1/?SourceSASToken /Dest:C:\myfolder /S
Папка файлов журнала
При каждом вводе команды для AzCopy выполняется проверка на наличие файла журнала в папке по умолчанию или в папке, которая была задана с помощью данного параметра. Если в обоих местах файл журнала отсутствует, AzCopy воспринимает операцию как новую и создает новый файл журнала.
Если файл журнала существует, AzCopy проверяет, соответствует ли введенная командная строка командной строке в файле журнала. Если две командные строки совпадают, AzCopy возобновляет незавершенную операцию. Если они не совпадают, вам будет предложено либо перезаписать файл журнала, чтобы начать новую операцию, либо отменить текущую операцию.
Если вы хотите использовать местоположение по умолчанию для файла журнала:
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z
Если опустить параметр/Z
или задать параметр /Z
без пути папки, как указано выше, AzCopy создает файл журнала в расположении по умолчанию: %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy
. Если файл журнала уже существует, то AzCopy возобновляет операцию на основе файла журнала.
Если вы хотите указать пользовательское расположение для файла журнала:
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z:C:\journalfolder\
В этом примере создается файл журнала, если он еще не существует. Если такой файл существует, то AzCopy возобновляет операцию на основе файла журнала.
Если вы хотите возобновить операцию AzCopy.
AzCopy /Z:C:\journalfolder\
В этом примере возобновляется последняя операция, при завершении которой произошел сбой.
Создание файла журнала
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V
Если задать параметр /V
без указания пути файла к журналу с подробными данными, AzCopy создает файл журнала в расположении по умолчанию: %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy
.
В противном случае можно создать файл журнала в настраиваемом расположении:
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V:C:\myfolder\azcopy1.log
Обратите внимание, что если после параметра /V
указать относительный путь, например /V:test/azcopy1.log
, то подробный журнал создается в текущем рабочем каталоге в подпапке с именем test
.
Укажите количество одновременных операций, которые нужно запустить.
Параметр /NC
задает количество одновременных операций копирования. По умолчанию AzCopy запускает несколько одновременных операций для увеличения скорости передачи данных. При работе с таблицами количество одновременных операций равно количеству процессоров. При работе с хранилищем объектов и файлами количество одновременных операций составляет восемь раз от количества процессоров. При выполнении AzCopy в сети с низкой пропускной способностью можно задать меньшее количество для этого параметра (/NC), чтобы избежать сбоев, вызванных конкуренцией за ресурсы.
Запуск AzCopy с использованием эмулятора хранения Azure
Вы можете запустить AzCopy с эмулятором хранения Azure для блобов.
AzCopy /Source:https://127.0.0.1:10000/myaccount/mycontainer/ /Dest:C:\myfolder /SourceKey:key /SourceType:Blob /S
Вы также можете запустить ее для таблиц.
AzCopy /Source:https://127.0.0.1:10002/myaccount/mytable/ /Dest:C:\myfolder /SourceKey:key /SourceType:Table
Автоматическое определение типа содержимого большого двоичного объекта
AzCopy определяет тип содержимого объекта-контейнера на основе JSON-файла, который хранит сопоставление типов содержимого с расширениями файлов. Это JSON-файл AzCopyConfig.json, который расположен в каталоге AzCopy. Если используется тип файла, который не входит в список, можно добавить соответствующее сопоставление в JSON-файл.
{
"MIMETypeMapping": {
".myext": "text/mycustomtype",
.
.
}
}
Параметры AzCopy
Параметры для AzCopy описаны ниже. Вы можете использовать одну из следующих команд для получения справки во время работы с AzCopy:
- Для получения подробной справки по командам командной строки AzCopy:
AzCopy /?
- Подробная справка по параметрам AzCopy:
AzCopy /?:SourceKey
- Примеры командной строки:
AzCopy /?:Sample
/Source:"source"
Параметр определяет исходные данные для копирования. Источником может быть каталог файловой системы, контейнер BLOB-объектов, виртуальный каталог BLOB-объектов, общая папка файлового хранилища, каталог файлового хранилища или таблица Azure.
Применимо к большим двоичным объектам, файлам, таблицам.
/Dest:"destination"
Параметр определяет целевую директорию копирования. Целевой директорией может быть каталог файловой системы, контейнер BLOB-объектов, виртуальный каталог BLOB-объектов, общая папка файлового хранилища, каталог файлового хранилища и таблица Azure.
Применимо к большим двоичным объектам, файлам, таблицам.
/Pattern:"file-pattern"
Параметр определяет шаблон файла, который указывает, какие именно файлы нужно копировать. Поведение дополнительного параметра "/Pattern" определяется местоположением исходных данных, а также наличием параметра "рекурсивный режим". Рекурсивный режим задается с помощью параметра "/S.".
Если определенный источник представляет собой каталог в файловой системе, то используются стандартные подстановочные знаки, и предоставленный шаблон файла сравнивается с файлами в каталоге. При задании параметра "/S." AzCopy также выполняет сравнение определенного шаблона со всеми файлами в любых подпапках каталога.
Если определенный источник представляет собой контейнер BLOB-объектов или виртуальный каталог, то подстановочные знаки не используются. Если задан параметр "/S", то AzCopy интерпретирует заданный шаблон файла как префикс большого двоичного объекта. Если параметр "/S" не указан, AzCopy сопоставляет шаблон файла с точными именами блобов.
Если исходный файл для копирования находится в общей папке Azure, вам необходимо либо уточнить имя файла (например, abc.txt), либо указать в "/S" параметр рекурсивного копирования всего содержания общей папки. Попытка одновременно задать шаблон файла и параметр /S приводит к ошибке.
В AzCopy используется сопоставление с учетом регистра, в котором /Source представляет собой контейнер больших двоичных объектов или виртуальный каталог больших двоичных объектов, а также сопоставление без учета регистра во всех остальных случаях.
Шаблон файла по умолчанию, используемый, если шаблон файла не указан, — . для расположения файловой системы или пустого префикса для расположения хранилища Azure. Указание нескольких шаблонов файлов не поддерживается.
Применимо к: объектам Blob и файлам.
/DestKey:"ключ-хранилище"
Задает ключ учетной записи хранения для ресурса в месте назначения.
Применимо к большим двоичным объектам, файлам, таблицам.
/DestSAS:"sas-token"
Задает подпись общего доступа (SAS) с правами ЧТЕНИЯ и ЗАПИСИ для контейнера назначения (если применяется). Поместите SAS в двойные кавычки, так как она может содержать специальные символы командной строки.
Если ресурс назначения представляет собой контейнер BLOB-объекта, общую папку или таблицу, вы можете либо указать эту опцию вместе с маркером SAS, либо указать SAS как часть URI контейнера BLOB-объекта назначения, общей папки или таблицы, без использования этой опции.
Если исходное место копирования и место назначения копирования являются BLOB-объектами, то BLOB-объект места назначения должен находиться в той же учетной записи хранилища, что и BLOB-объект исходного места копирования.
Применимо к: объектам Blob, файлам, таблицам.
/SourceKey:"storage-key"
Задает ключ учетной записи хранения для исходного ресурса.
Применимо к: Blob-объектам, файлам, таблицам.
/SourceSAS:"sas-token"
Задает подпись общего доступа (SAS) с правами ЧТЕНИЯ и СОЗДАНИЯ СПИСКА для исходного ресурса (если применяется). Поместите SAS в двойные кавычки, так как он может содержать специальные символы командной строки.
Если исходный ресурс является контейнером для больших двоичных объектов и не предоставляется ни ключ, ни SAS, то контейнер считывается через анонимный доступ.
Если источник является общей папкой или таблицей, необходимо предоставить ключ или токен SAS.
Применимо к: объектам BLOB, файлам, таблицам.
/S
Задает рекурсивный режим для операций копирования. В рекурсивном режиме AzCopy копирует все объекты BLOB или файлы, которые соответствуют заданному шаблону, включая те, что находятся в подпапках.
Применимо к: объектам BLOB, файлам
/BlobType:"block" | "page" | "append"
Определяет, является ли назначенный объект данных блобом, блобом-страницей или блобом-добавлением. Этот параметр применяется только при загрузке блоба. В противном случае возникает ошибка. Если в качестве места назначения выступает объект BLOB и этот параметр не указан, то по умолчанию AzCopy создает блочный BLOB.
Применимо к: объектам BLOB.
/CheckMD5
Вычисляет хэш MD5 для загруженных данных и проверяет соответствие хэша MD5, сохраненного в BLOB-объекте, или свойства Content-MD5 файла вычисленному хэшу. Если значения не совпадают, AzCopy не сможет загрузить данные. Проверка MD5 выключена по умолчанию. Чтобы выполнить проверку MD5 при загрузке данных, необходимо задать этот параметр.
Обратите внимание, что хранилище Azure не гарантирует актуальность хэша MD5, сохраненного для BLOB-объекта или файла. Клиент несет ответственность за обновление MD5 при каждом изменении BLOB-объекта или файла. В случае образов управляемых и неуправляемых дисков, виртуальные машины Azure не обновляют значение MD5 во время изменения содержимого диска, поэтому /CheckMD5 выдаст ошибку при загрузке образов дисков.
AzCopy версии 8 всегда задает свойство Content-MD5 для блоба или файла Azure после их загрузки в службу.
Применимо к: BLOB, файлы
/Снимок
Определяет, передавать ли моментальные снимки. Этот параметр актуален только, если источник — BLOB.
Передаваемые моментальные снимки BLOB-объекта переименовываются в следующем формате: имя BLOB-объекта (время моментального снимка).расширение.
По умолчанию моментальные снимки не копируются.
Применимо к большим двоичным объектам.
/V:[verbose-log-file]
Выводит сообщения с подробным состоянием в файл журнала.
По умолчанию файл журнала с подробными данными называется AzCopyVerbose.log в каталоге %LocalAppData%\Microsoft\Azure\AzCopy
. При указании имеющегося местоположения файла для этого параметра подробный журнал добавляется к этому файлу.
Применимо к: BLOB, файлам, таблицам.
/Z:[journal-file-folder]
Задает папку файла журнала для возобновления операции.
AzCopy всегда поддерживает возобновление, если операция была прервана.
Если этот параметр не указан или указан без пути к папке, AzCopy создает файл журнала в папке по умолчанию, которой является папка %LocalAppData%\Microsoft\Azure\AzCopy.
При каждом вводе команды для AzCopy выполняется проверка на наличие файла журнала в папке по умолчанию или в папке, которая была задана с помощью данного параметра. Если в обоих местах файл журнала отсутствует, AzCopy воспринимает операцию как новую и создает новый файл журнала.
Если файл журнала существует, AzCopy проверяет, соответствует ли введенная командная строка командной строке в файле журнала. Если две командные строки совпадают, AzCopy возобновляет незавершенную операцию. Если они не совпадают, вам будет предложено либо перезаписать файл журнала, чтобы начать новую операцию, либо отменить текущую операцию.
После успешного завершения операции файл журнала удаляется.
Обратите внимание, что возобновление операции из файла журнала, созданного предыдущей версией AzCopy, не поддерживается.
Применимо к: блобам, файлам, таблицам.
/@:"файл-параметров"
Задает файл, который содержит параметры. AzCopy обрабатывает параметры в файле, как если бы они были заданы в командной строке.
В файле ответа можно либо задать несколько параметров в одной строке, либо задать каждый параметр в отдельной строке. Обратите внимание, что отдельный параметр не может занимать несколько строк.
Файлы ответа могут включать строки комментариев, начинающиеся с символа #.
Можно задать несколько файлов ответов. Однако, следует иметь в виду, что AzCopy не поддерживает вложенных фалов ответов.
Применимо к: объектам Blob, файлам, таблицам.
/Y
Скрывает все запросы на подтверждение AzCopy. Этот параметр также позволяет использовать токены SAS только для записи в сценариях передачи данных, если /XO и /XN не указаны.
Применимо к: блобам, файлам, таблицам.
/L
Задает только операцию перечисления, данные не копируются.
AzCopy интерпретирует использование этого параметра как симуляцию выполнения командной строки без параметра /L и подсчитывает количество скопированных объектов. Вы также можете указать параметр /V одновременно, чтобы в подробном журнале проверить, какие объекты были скопированы.
Поведение этого параметра также определяется местоположением исходных данных и наличием параметра рекурсивного режима /S и параметра шаблона файла /Pattern.
При использовании этого параметра AzCopy необходимы права на ЧТЕНИЕ и СОЗДАНИЕ СПИСКА для местоположения исходных данных.
Применимо к: BLOB, файлам
/MT
Задает такое же время последнего изменения загруженного файла, как в исходном BLOB-объекте или файле.
Применимо к: большим двоичным объектам, файлам.
/XN
Исключает более новый исходный ресурс. Ресурс не будет копироваться, если исходный файл был изменен в то же время, что и конечный файл, или позднее.
Применимо к: блобам и файлам.
/XO
Исключает более старый исходный ресурс. Ресурс не будет копироваться, если исходный файл был изменен в то же время, что и конечный файл, или раньше.
Применимо к: объектам и файлам.
/A
Отправляет только файлы с установленным атрибутом "Архивный".
Применимо к: блобам, файлам
/IA:[RASHCNETOI]
Загружает только файлы, для которых установлен хотя бы один из указанных атрибутов.
Доступные атрибуты:
- R — файлы только для чтения
- A — файлы, готовые к архивированию
- S — системные файлы
- H — скрытые файлы
- C — сжатые файлы
- N — обычные файлы
- E — зашифрованные файлы
- T — временные файлы
- O — автономные файлы
- I — неиндексированные файлы
Применимо к: BLOB-объектам и файлам.
/XA:[RASHCNETOI]
Исключает файлы с любым из следующих установленных атрибутов.
Доступные атрибуты:
- R — файлы только для чтения
- A — файлы, готовые к архивированию
- S — системные файлы
- H — скрытые файлы
- C — сжатые файлы
- N — обычные файлы
- E — зашифрованные файлы
- T — временные файлы
- O — автономные файлы
- I — неиндексированные файлы
Применимо к: блобам и файлам.
/Delimiter:"delimiter"
Указывает символ разделителя, используемый для отделения виртуальных каталогов в имени блоба.
По умолчанию AzCopy использует / как разделитель. Однако, AzCopy поддерживает любой общий символ (например, @, # или %) в качестве разделителя. Если необходимо ввести любой из этих специальных символов в командную строку следует заключить имя файла в двойные кавычки.
Этот параметр применяется только для скачивания BLOB-ов.
Применимо к большим двоичным объектам.
/NC:"количество одновременных операций"
Задает количество одновременных операций.
По умолчанию AzCopy запускает несколько одновременных операций для увеличения скорости передачи данных. Обратите внимание, что большое количество одновременных операций в среде с низкой пропускной способностью может переполнить сетевое подключение и помешать полному завершению операций. Регулируйте количество одновременных операций в зависимости от фактической доступной пропускной способности сети.
Верхний лимит количества одновременно выполняемых операций составляет 512.
Применимо к Blob, файлам, таблицам.
/SourceType:"Blob" | "Table"
Указывает, что ресурс source
является BLOB-объектом, доступным в локальной среде разработки, работающей в эмуляторе хранилища.
Применимо к: объектам BLOB и таблицам.
/DestType:"Blob" | "Table"
Указывает, что ресурс destination
— это BLOB, доступный в локальной среде разработки, запущенной в эмуляторе хранения.
Применимо к большим двоичным объектам и таблицам.
/PKRS:"key1#key2#key3#..."
Разбивает диапазоны ключей секций для обеспечения параллельной передачи данных с целью увеличения скорости экспорта данных.
Если параметр не задан, то AzCopy будет использовать одиночный поток для экспорта данных таблицы. Например, если пользователем задан параметр /PKRS:"aa#bb", то AzCopy начинает три одновременных операции передачи.
Каждая операция экспортирует один из трех диапазонов ключей секций, как показано ниже.
[первичный-ключ-раздела, аа)
[aa, bb)
[bb, last-partition-key]
Применимо к таблицам.
/SplitSize:"file-size"
Указывает размер разбитого экспортированного файла в МБ, минимальное допустимое значение — 32.
Если этот параметр не задан, то AzCopy поместит экспортированные данные таблицы в один файл.
Если данные таблицы экспортируются в большой двоичный объект и размер экспортированного файла достигает 200 ГБ для большого двоичного объекта, то AzCopy разделяет экспортированный файл, даже если такой параметр не задан.
Применимо к таблицам.
/EntityOperation: "Вставить или пропустить" (InsertOrSkip) | "Вставить или объединить" (InsertOrMerge) | "Вставить или заменить" (InsertOrReplace)
Задает поведение импортированных данных таблиц.
- InsertOrSkip — Пропускает существующий объект или вставляет новый, если объект не существует в таблице.
- InsertOrMerg — Объединяет существующий объект или вставляет новый, если объект не существует в таблице.
- InsertOrReplace — Заменяет существующий объект или вставляет новый, если объект не существует в таблице.
Применимо к таблицам.
/Manifest:"manifest-file"
Задает файл описания для операций экспорта и импорта таблицы.
Во время операции экспорта этот параметр является необязательным. Если он не указан, AzCopy создаст файл манифеста с предварительно определенным именем.
Этот параметр является обязательным во время операции импорта для обнаружения файлов данных.
Применимо к таблицам.
/SyncCopy
Указывает, копируются ли большие двоичные объекты или файлы синхронно между двумя конечными точками службы хранилища Azure.
По умолчанию AzCopy использует серверное асинхронное копирование. Задайте этот параметр, чтобы выполнить синхронное копирование, при котором большие двоичные объекты или файлы скачиваются в локальную память, а затем передаются в службу хранилища Azure.
Вы можете использовать этот параметр для копирования файлов в хранилище больших двоичных объектов и хранилище файлов или из хранилища больших двоичных объектов в хранилище файлов и наоборот.
Применимо к: Blob-объектам, файлам.
/SetContentType:"content-type" (команда для установки типа содержимого)
Задает MIME-тип содержимого для целевых блобов или файлов.
AzCopy по умолчанию задает тип содержимого для BLOB или файла как application/octet-stream. Вы можете задать тип содержимого для всех блобов или файлов, указав значение для этой опции.
Если вы задали этот параметр, не указав значения, AzCopy установит тип содержимого для каждого блоба или содержимого файла в соответствии с расширением файла.
Применимо к: Blob, файлы.
/PayloadFormat:"JSON" | "CSV"
Указывает формат файла экспортируемых данных таблицы.
Если этот параметр не указан, по умолчанию AzCopy экспортирует файл данных таблицы в формате JSON.
Применимо к таблицам.
Известные проблемы и рекомендации
Давайте рассмотрим некоторые известные проблемы и рекомендации.
Ограничение одновременных операций записи при копировании данных
При копировании BLOB-объектов или файлов с помощью AzCopy следует иметь в виду, что другое приложение может изменять данные в то время, когда они копируются. Если это возможно, обеспечьте, чтобы во время операции копирования не происходило изменение копируемых данных. Например, при копировании VHD, связанного с виртуальной машиной Azure, убедитесь в том, что никакое другое приложение в это время не записывает данные на VHD. Для этого рекомендуется сдать ресурс, который нужно скопировать, в аренду. В качестве альтернативы, можно сначала создать снапшот VHD, а затем скопировать его.
Если вы не можете предотвратить запись в BLOB-объекты или файлы со стороны других приложений во время их копирования, учтите, что к моменту завершения задачи скопированные ресурсы могут больше не иметь полного соответствия с исходными ресурсами.
Включайте FIPS-совместимые алгоритмы MD5 для AzCopy при использовании FIPS-совместимых алгоритмов для шифрования, хэширования и подписывания.
По умолчанию в AzCopy используется реализация .NET MD5 для вычисления MD5 при копировании объектов, но существует ряд требований безопасности, при которых в AzCopy необходимо включать FIPS-совместимую реализацию MD5.
Для этого можно создать файл app.config AzCopy.exe.config
с заданным параметром AzureStorageUseV1MD5
и поместить его вместе с AzCopy.exe.
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<appSettings>
<add key="AzureStorageUseV1MD5" value="false"/>
</appSettings>
</configuration>
Для свойства AzureStorageUseV1MD5 задайте одно из следующих значений:
- True — значение по умолчанию, AzCopy использует реализацию .NET MD5.
- False — AzCopy использует FIPS-совместимый алгоритм MD5.
По умолчанию FIPS-совместимые алгоритмы отключены для Windows. Вы можете изменить этот параметр политики на своем компьютере. В окне запуска команд (Windows+R) введите secpol.msc, чтобы открыть окно Локальная политика безопасности. В окне настроек безопасности выберите Параметры безопасности>Локальные политики>Параметры безопасности. Найдите политику Системная криптография: использовать FIPS-совместимые алгоритмы для шифрования, хэширования и подписывания. Дважды щелкните политику, чтобы в столбце Параметр безопасности отобразилось значение.
Следующие шаги
Для получения дополнительной информации о службе хранилища Azure и AzCopy ознакомьтесь со следующими ресурсами.
Документация по хранилищу Azure:
- Введение в хранилище Azure
- Как использовать Blob-хранилище с .NET
- Использование хранилища файлов из .NET
- Использование табличного хранилища из .NET
- Создание и удаление учетной записи хранения, а также управление ею
- Перенос данных с помощью AzCopy для Linux
Записи блога по хранилищу Azure:
- Введение в предварительную версию библиотеки движения данных в хранилище Azure
- AzCopy: представление синхронного копирования и кастомизируемого типа содержимого
- AzCopy: выпуск общедоступной версии AzCopy 3.0 и предварительной версии AzCopy 4.0 с поддержкой таблиц и файлов
- AzCopy: оптимизированные сценарии для крупномасштабного копирования
- AzCopy: поддержка геоизбыточного хранилища с правом доступа к чтению
- AzCopy – Transfer data with re-startable mode and SAS Token (AzCopy: передача данных с использованием перезапускаемого режима и маркера SAS)
- AzCopy: использование Cross-Account Copy Blob
- AzCopy: отправка, скачивание файлов в объекты Blob Microsoft Azure