Transferowanie danych za pomocą narzędzia AzCopy w wersji 8.1 w systemie Windows

AzCopy to narzędzie wiersza polecenia przeznaczone do kopiowania danych do/z usługi Microsoft Azure Blob, File i Table Storage przy użyciu prostych poleceń zaprojektowanych pod kątem optymalnej wydajności. Dane można kopiować między systemem plików i kontem magazynu lub między kontami magazynu.

Ważne

W tym artykule opisano starszą wersję narzędzia AzCopy. Aby zainstalować najnowszą wersję narzędzia AzCopy, zobacz AzCopy v10.

Jeśli zdecydujesz się zainstalować starszą wersję narzędzia AzCopy (AzCopy w wersji 8.1), możesz pobrać wiele wersji. Narzędzie AzCopy w systemie Windows oferuje opcje wiersza polecenia w stylu systemu Windows. Narzędzie AzCopy w systemie Linux jest przeznaczone dla platform z systemem Linux, które oferują opcje wiersza polecenia w stylu POSIX. W tym artykule omówiono narzędzie AzCopy w systemie Windows.

Pobieranie i instalowanie narzędzia AzCopy (wersja 8.1) w systemie Windows

Pobierz narzędzie AzCopy (wersja 8.1) w systemie Windows.

Narzędzie AzCopy w Windows 8.1 — informacje o wersji

  • Usługa Table Service nie jest już obsługiwana w najnowszej wersji. Jeśli używasz funkcji eksportowania tabel, pobierz wersję narzędzia AzCopy 7.3.
  • Skompilowane przy użyciu platformy .NET Core 2.1, a wszystkie zależności platformy .NET Core są teraz spakowane w instalacji.
  • Dodano obsługę uwierzytelniania OAuth. Użyj polecenia azcopy login , aby zalogować się przy użyciu usługi Azure Active Directory.

Narzędzie Azcopy z obsługą tabel (wersja 7.3)

Pobierz narzędzie AzCopy 7.3 z obsługą tabel.

Krok po instalacji

Po zainstalowaniu narzędzia AzCopy w systemie Windows przy użyciu instalatora otwórz okno polecenia i przejdź do katalogu instalacyjnego narzędzia AzCopy na komputerze — gdzie AzCopy.exe znajduje się plik wykonywalny. W razie potrzeby możesz dodać lokalizację instalacji narzędzia AzCopy do ścieżki systemowej. Domyślnie narzędzie AzCopy jest instalowane w programie %ProgramFiles(x86)%\Microsoft SDKs\Azure\AzCopy lub %ProgramFiles%\Microsoft SDKs\Azure\AzCopy.

Pisanie pierwszego polecenia narzędzia AzCopy

Podstawowa składnia poleceń narzędzia AzCopy to:

AzCopy /Source:<source> /Dest:<destination> [Options]

W poniższych przykładach przedstawiono różne scenariusze kopiowania danych do i z obiektów blob platformy Microsoft Azure, plików i tabel. Zapoznaj się z sekcją AzCopy Parameters (Parametry narzędzia AzCopy), aby uzyskać szczegółowe wyjaśnienie parametrów używanych w poszczególnych przykładach.

Pobieranie obiektów blob z usługi Blob Storage

Przyjrzyjmy się kilku sposobom pobierania obiektów blob przy użyciu narzędzia AzCopy.

Pobieranie pojedynczego obiektu blob

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"

Pamiętaj, że jeśli folder C:\myfolder nie istnieje, narzędzie AzCopy utworzy go i pobierz do abc.txt nowego folderu.

Pobieranie pojedynczego obiektu blob z regionu pomocniczego

AzCopy /Source:https://myaccount-secondary.blob.core.windows.net/mynewcontainer /Dest:C:\myfolder /SourceKey:key /Pattern:"abc.txt"

Należy pamiętać, że aby uzyskać dostęp do regionu pomocniczego, musisz mieć włączony magazyn geograficznie nadmiarowy do odczytu.

Pobieranie wszystkich obiektów blob w kontenerze

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /S

Załóżmy, że w określonym kontenerze znajdują się następujące obiekty blob:

abc.txt
abc1.txt
abc2.txt
vd1\a.txt
vd1\abcd.txt

Po operacji pobierania katalog C:\myfolder zawiera następujące pliki:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\vd1\a.txt
C:\myfolder\vd1\abcd.txt

Jeśli nie określisz opcji /S, nie są pobierane żadne obiekty blob.

Pobieranie obiektów blob z określonym prefiksem

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /Pattern:a /S

Załóżmy, że następujące obiekty blob znajdują się w określonym kontenerze. Wszystkie obiekty blob rozpoczynające się od prefiksu a są pobierane:

abc.txt
abc1.txt
abc2.txt
xyz.txt
vd1\a.txt
vd1\abcd.txt

Po operacji pobierania folder C:\myfolder zawiera następujące pliki:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt

Prefiks dotyczy katalogu wirtualnego, który stanowi pierwszą część nazwy obiektu blob. W powyższym przykładzie katalog wirtualny nie jest zgodny z określonym prefiksem, więc nie jest pobierany. Ponadto jeśli nie określono opcji /S , narzędzie AzCopy nie pobiera żadnych obiektów blob.

Ustaw czas ostatniej modyfikacji wyeksportowanych plików tak samo jak źródłowe obiekty blob

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT

Obiekty blob można również wykluczyć z operacji pobierania na podstawie czasu ostatniej modyfikacji. Jeśli na przykład chcesz wykluczyć obiekty blob, których czas ostatniej modyfikacji jest taki sam lub nowszy niż plik docelowy, dodaj /XN opcję:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XN

Jeśli chcesz wykluczyć obiekty blob, których czas ostatniej modyfikacji jest taki sam lub starszy niż plik docelowy, dodaj /XO opcję:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT /XO

Przekazywanie obiektów blob do usługi Blob Storage

Przyjrzyjmy się kilku sposobom przekazywania obiektów blob przy użyciu narzędzia AzCopy.

Przekazywanie pojedynczego obiektu blob

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:"abc.txt"

Jeśli określony kontener docelowy nie istnieje, narzędzie AzCopy utworzy go i przekaże do niego plik.

Przekazywanie pojedynczego obiektu blob do katalogu wirtualnego

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer/vd /DestKey:key /Pattern:abc.txt

Jeśli określony katalog wirtualny nie istnieje, narzędzie AzCopy przekazuje plik w celu uwzględnienia katalogu wirtualnego w nazwie (npvd/abc.txt. w powyższym przykładzie).

Przekazywanie wszystkich obiektów blob w folderze

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /S

Określenie opcji /S przekazuje zawartość określonego katalogu do magazynu obiektów blob cyklicznie, co oznacza, że wszystkie podfoldery i ich pliki również są przekazywane. Załóżmy na przykład, że następujące pliki znajdują się w folderze C:\myfolder:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt
C:\myfolder\subfolder\a.txt
C:\myfolder\subfolder\abcd.txt

Po operacji przekazywania kontener zawiera następujące pliki:

abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt

Jeśli nie określisz opcji /S, narzędzie AzCopy nie przekazuje cyklicznie. Po operacji przekazywania kontener zawiera następujące pliki:

abc.txt
abc1.txt
abc2.txt

Przekazywanie obiektów blob pasujących do określonego wzorca

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Pattern:a* /S

Załóżmy, że następujące pliki znajdują się w folderze 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

Po operacji przekazywania kontener zawiera następujące pliki:

abc.txt
abc1.txt
abc2.txt
subfolder\a.txt
subfolder\abcd.txt

Jeśli nie określisz opcji /S, narzędzie AzCopy przekazuje tylko obiekty blob, które nie znajdują się w katalogu wirtualnym:

C:\myfolder\abc.txt
C:\myfolder\abc1.txt
C:\myfolder\abc2.txt

Określanie typu zawartości MIME docelowego obiektu blob

Domyślnie narzędzie AzCopy ustawia typ zawartości docelowego obiektu blob na application/octet-stream. Począwszy od wersji 3.1.0, można jawnie określić typ zawartości za pomocą opcji /SetContentType:[content-type]. Ta składnia ustawia typ zawartości dla wszystkich obiektów blob w operacji przekazywania.

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType:video/mp4

Jeśli określisz /SetContentType wartość bez wartości, narzędzie AzCopy ustawia typ zawartości każdego obiektu blob lub pliku zgodnie z jego rozszerzeniem pliku.

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.blob.core.windows.net/myContainer/ /DestKey:key /Pattern:ab /SetContentType

Kopiowanie obiektów blob w usłudze Blob Storage

Przyjrzyjmy się kilku sposobom kopiowania obiektów blob z jednej lokalizacji do innej przy użyciu narzędzia AzCopy.

Kopiowanie pojedynczego obiektu blob z jednego kontenera do innego w ramach tego samego konta magazynu

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1 /Dest:https://myaccount.blob.core.windows.net/mycontainer2 /SourceKey:key /DestKey:key /Pattern:abc.txt

Podczas kopiowania obiektu blob na koncie usługi Storage wykonywana jest operacja kopiowania po stronie serwera .

Kopiowanie pojedynczego obiektu blob z jednego konta magazynu do innego

AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 /Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /Pattern:abc.txt

Podczas kopiowania obiektu blob na kontach usługi Storage wykonywana jest operacja kopiowania po stronie serwera .

Kopiowanie pojedynczego obiektu blob z regionu pomocniczego do regionu podstawowego

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

Należy pamiętać, że aby uzyskać dostęp do magazynu pomocniczego, musisz mieć włączony magazyn geograficznie nadmiarowy do odczytu.

Kopiowanie pojedynczego obiektu blob i jego migawek z jednego konta magazynu do innego

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

Po operacji kopiowania kontener docelowy zawiera obiekt blob i jego migawki. Zakładając, że obiekt blob w powyższym przykładzie zawiera dwie migawki, kontener zawiera następujące obiekty blob i migawki:

abc.txt
abc (2013-02-25 080757).txt
abc (2014-02-21 150331).txt

Kopiowanie wszystkich obiektów blob w kontenerze do innego konta magazynu

AzCopy /Source:https://sourceaccount.blob.core.windows.net/mycontainer1 
/Dest:https://destaccount.blob.core.windows.net/mycontainer2 /SourceKey:key1 /DestKey:key2 /S

Określanie opcji /S przekazuje zawartość określonego kontenera cyklicznie. Aby uzyskać więcej informacji i przykład , zobacz Przekazywanie wszystkich obiektów blob w folderze .

Synchronicznie kopiuj obiekty blob z jednego konta magazynu do innego

Narzędzie AzCopy domyślnie kopiuje dane między dwoma punktami końcowymi magazynu asynchronicznie. W związku z tym operacja kopiowania jest uruchamiana w tle przy użyciu pojemności wolnej przepustowości, która nie ma umowy SLA pod względem szybkości kopiowania obiektu blob, a narzędzie AzCopy okresowo sprawdza stan kopiowania do momentu ukończenia lub niepowodzenia kopiowania.

Opcja /SyncCopy zapewnia, że operacja kopiowania uzyskuje spójną szybkość. Narzędzie AzCopy wykonuje synchroniczną kopię, pobierając obiekty blob w celu skopiowania z określonego źródła do pamięci lokalnej, a następnie przekazując je do miejsca docelowego usługi Blob Storage.

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 może wygenerować dodatkowy koszt ruchu wychodzącego w porównaniu z kopią asynchroniczną. Zalecane jest użycie tej opcji na maszynie wirtualnej platformy Azure, która znajduje się w tym samym regionie co konto magazynu źródłowego, aby uniknąć kosztów ruchu wychodzącego.

Pobieranie plików z magazynu plików

Przyjrzyjmy się kilku sposobom pobierania plików przy użyciu narzędzia AzCopy.

Pobieranie pojedynczego pliku

AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/myfolder1/ /Dest:C:\myfolder /SourceKey:key /Pattern:abc.txt

Jeśli określone źródło jest udziałem plików platformy Azure, musisz określić dokładną nazwę pliku (np.abc.txt), aby pobrać pojedynczy plik, lub określić opcję /S pobierania wszystkich plików w udziale cyklicznie. Próba określenia wzorca pliku i opcji /S razem powoduje wystąpienie błędu.

Pobieranie wszystkich plików w katalogu

AzCopy /Source:https://myaccount.file.core.windows.net/myfileshare/ /Dest:C:\myfolder /SourceKey:key /S

Pamiętaj, że puste foldery nie są pobierane.

Przekazywanie plików do udziału plików platformy Azure

Przyjrzyjmy się kilku sposobom przekazywania plików przy użyciu narzędzia AzCopy.

Przekazywanie pojedynczego pliku

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:abc.txt

Przekazywanie wszystkich plików w folderze

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /S

Pamiętaj, że puste foldery nie są przekazywane.

Przekazywanie plików pasujących do określonego wzorca

AzCopy /Source:C:\myfolder /Dest:https://myaccount.file.core.windows.net/myfileshare/ /DestKey:key /Pattern:ab* /S

Kopiowanie plików w magazynie plików

Przyjrzyjmy się kilku sposobom kopiowania plików w udziale plików platformy Azure przy użyciu narzędzia AzCopy.

Kopiowanie z jednego udziału plików do innego

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S

Podczas kopiowania pliku między udziałami plików wykonywana jest operacja kopiowania po stronie serwera .

Kopiowanie z udziału plików platformy Azure do usługi Blob Storage

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare/ /Dest:https://myaccount2.blob.core.windows.net/mycontainer/ /SourceKey:key1 /DestKey:key2 /S

Podczas kopiowania pliku z udziału plików do obiektu blob wykonywana jest operacja kopiowania po stronie serwera .

Kopiowanie obiektu blob z usługi Blob Storage do udziału plików platformy Azure

AzCopy /Source:https://myaccount1.blob.core.windows.net/mycontainer/ /Dest:https://myaccount2.file.core.windows.net/myfileshare/ /SourceKey:key1 /DestKey:key2 /S

Podczas kopiowania pliku z obiektu blob do udziału plików wykonywana jest operacja kopiowania po stronie serwera .

Synchronicznie kopiuj pliki

Można określić /SyncCopy opcję kopiowania danych z usługi File Storage do usługi File Storage, z usługi File Storage do usługi Blob Storage i z usługi Blob Storage do usługi File Storage synchronicznie, narzędzie AzCopy wykonuje to przez pobranie danych źródłowych do pamięci lokalnej i przekazanie ich ponownie do miejsca docelowego. Obowiązuje koszt ruchu wychodzącego w warstwie Standardowa.

AzCopy /Source:https://myaccount1.file.core.windows.net/myfileshare1/ /Dest:https://myaccount2.file.core.windows.net/myfileshare2/ /SourceKey:key1 /DestKey:key2 /S /SyncCopy

Podczas kopiowania z usługi File Storage do usługi Blob Storage domyślny typ obiektu blob to blokowy obiekt blob; użytkownik może określić opcję /BlobType:page zmiany docelowego typu obiektu blob.

Należy pamiętać, że /SyncCopy można wygenerować dodatkowe koszty ruchu wychodzącego w porównaniu z kopią asynchroniczną. Zalecaną metodą jest użycie tej opcji na maszynie wirtualnej platformy Azure, która znajduje się w tym samym regionie co konto magazynu źródłowego, aby uniknąć kosztów ruchu wychodzącego.

Eksportowanie danych z usługi Table Storage

Przyjrzyjmy się eksportowaniu danych z usługi Azure Table Storage przy użyciu narzędzia AzCopy.

Eksportowanie tabeli

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key

Narzędzie AzCopy zapisuje plik manifestu w określonym folderze docelowym. Plik manifestu jest używany w procesie importowania, aby zlokalizować niezbędne pliki danych i przeprowadzić walidację danych. Plik manifestu domyślnie używa następującej konwencji nazewnictwa:

<account name>_<table name>_<timestamp>.manifest

Użytkownik może również określić opcję /Manifest:<manifest file name> ustawienia nazwy pliku manifestu.

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /Manifest:abc.manifest

Dzielenie eksportu z usługi Table Storage na wiele plików

AzCopy /Source:https://myaccount.table.core.windows.net/mytable/ /Dest:C:\myfolder /SourceKey:key /S /SplitSize:100

Narzędzie AzCopy używa indeksu woluminu w nazwach podzielonych plików danych w celu odróżnienia wielu plików. Indeks woluminu składa się z dwóch części, indeksu zakresu kluczy partycji i indeksu podzielonego pliku. Oba indeksy są oparte na zera.

Indeks zakresu kluczy partycji to 0, jeśli użytkownik nie określi opcji /PKRS.

Załóżmy na przykład, że narzędzie AzCopy generuje dwa pliki danych po wybraniu przez użytkownika opcji /SplitSize. Wynikowe nazwy plików danych mogą być następujące:

myaccount_mytable_20140903T051850.8128447Z_0_0_C3040FE8.json
myaccount_mytable_20140903T051850.8128447Z_0_1_0AB9AC20.json

Należy pamiętać, że minimalna możliwa wartość opcji /SplitSize to 32 MB. Jeśli określonym miejscem docelowym jest usługa Blob Storage, narzędzie AzCopy dzieli plik danych po osiągnięciu limitu rozmiaru obiektu blob (200 GB), niezależnie od tego, czy opcja /SplitSize została określona przez użytkownika.

Eksportowanie tabeli do formatu pliku danych JSON lub CSV

Domyślnie narzędzia AzCopy eksportuje tabele do plików danych JSON. Możesz określić opcję /PayloadFormat:JSON|CSV eksportowania tabel jako pliku JSON lub CSV.

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PayloadFormat:CSV

Podczas określania formatu ładunku CSV narzędzie AzCopy generuje również plik schematu z rozszerzeniem .schema.csv pliku dla każdego pliku danych.

Eksportowanie jednostek tabeli jednocześnie

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:C:\myfolder\ /SourceKey:key /PKRS:"aa#bb"

Narzędzie AzCopy uruchamia operacje współbieżne w celu wyeksportowania jednostek, gdy użytkownik określa opcję /PKRS. Każda operacja eksportuje jeden zakres kluczy partycji.

Należy pamiętać, że liczba operacji współbieżnych jest również kontrolowana przez opcję /NC. Narzędzie AzCopy używa liczby procesorów rdzeni jako wartości domyślnej /NC podczas kopiowania jednostek tabeli, nawet jeśli /NC nie określono. Gdy użytkownik określa opcję /PKRS, narzędzie AzCopy używa mniejszej z dwóch wartości — zakresów kluczy partycji w porównaniu do niejawnie lub jawnie określonych operacji współbieżnych — w celu określenia liczby współbieżnych operacji do uruchomienia. Aby uzyskać więcej informacji, wpisz w AzCopy /?:NC wierszu polecenia.

Eksportowanie tabeli do usługi Blob Storage

AzCopy /Source:https://myaccount.table.core.windows.net/myTable/ /Dest:https://myaccount.blob.core.windows.net/mycontainer/ /SourceKey:key1 /Destkey:key2

Narzędzie AzCopy generuje plik danych JSON do kontenera obiektów blob z następującą konwencją nazewnictwa:

<account name>_<table name>_<timestamp>_<volume index>_<CRC>.json

Wygenerowany plik danych JSON jest zgodny z formatem ładunku dla minimalnych metadanych. Aby uzyskać szczegółowe informacje na temat tego formatu ładunku, zobacz Format ładunku dla operacji usługi Table Service.

Należy pamiętać, że podczas eksportowania tabel do obiektów blob narzędzie AzCopy pobiera jednostki tabeli do lokalnych plików danych tymczasowych, a następnie przekazuje te jednostki do obiektu blob. Te tymczasowe pliki danych są umieszczane w folderze plików dziennika z domyślną ścieżką "%LocalAppData%\Microsoft\Azure\AzCopy", można określić opcję /Z:[journal-file-folder] w celu zmiany lokalizacji folderu plików dziennika, a tym samym zmiany lokalizacji tymczasowych plików danych. Rozmiar plików danych tymczasowych jest określany przez rozmiar jednostek tabeli i rozmiar określony za pomocą opcji /SplitSize, chociaż tymczasowy plik danych na dysku lokalnym jest usuwany natychmiast po przekazaniu do obiektu blob, upewnij się, że masz wystarczającą ilość miejsca na dysku lokalnym, aby przechowywać te tymczasowe pliki danych przed ich usunięciem.

Importowanie danych do usługi Table Storage

Przyjrzyjmy się importowaniu danych do usługi Azure Table Storage przy użyciu narzędzia AzCopy.

Importowanie tabeli

AzCopy /Source:C:\myfolder\ /Dest:https://myaccount.table.core.windows.net/mytable1/ /DestKey:key /Manifest:"myaccount_mytable_20140103T112020.manifest" /EntityOperation:InsertOrReplace

Opcja /EntityOperation wskazuje, jak wstawić jednostki do tabeli. Możliwe wartości:

  • InsertOrSkip: Pomija istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.
  • InsertOrMerge: Scala istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.
  • InsertOrReplace: zastępuje istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.

Należy pamiętać, że nie można określić opcji /PKRS w scenariuszu importu. W przeciwieństwie do scenariusza eksportu, w którym należy określić opcję /PKRS uruchamiania operacji współbieżnych, narzędzie AzCopy domyślnie uruchamia operacje współbieżne podczas importowania tabeli. Domyślna liczba uruchomionych operacji współbieżnych jest równa liczbie procesorów rdzeni; można jednak określić inną liczbę współbieżnych z opcją /NC. Aby uzyskać więcej informacji, wpisz w AzCopy /?:NC wierszu polecenia.

Należy pamiętać, że narzędzie AzCopy obsługuje tylko importowanie dla formatu JSON, a nie csv. Narzędzie AzCopy nie obsługuje importowania tabel z plików JSON i manifestu utworzonych przez użytkownika. Oba te pliki muszą pochodzić z eksportu tabeli AzCopy. Aby uniknąć błędów, nie należy modyfikować wyeksportowanego pliku JSON ani pliku manifestu.

Importowanie jednostek do tabeli z usługi Blob Storage

Załóżmy, że kontener obiektów blob zawiera następujące elementy: plik JSON reprezentujący tabelę platformy Azure i towarzyszący mu plik manifestu.

myaccount_mytable_20140103T112020.manifest
myaccount_mytable_20140103T112020_0_0_0AF395F1DC42E952.json

Możesz uruchomić następujące polecenie, aby zaimportować jednostki do tabeli przy użyciu pliku manifestu w tym kontenerze obiektów 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"

Inne funkcje narzędzia AzCopy

Przyjrzyjmy się innym funkcjom narzędzia AzCopy.

Kopiowanie tylko danych, które nie istnieją w miejscu docelowym

Parametry /XO i /XN umożliwiają wykluczanie odpowiednio kopiowanych starszych lub nowszych zasobów źródłowych. Jeśli chcesz skopiować tylko zasoby źródłowe, które nie istnieją w miejscu docelowym, możesz określić oba parametry w poleceniu 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

Należy pamiętać, że nie jest to obsługiwane, gdy źródło lub miejsce docelowe jest tabelą.

Używanie pliku odpowiedzi do określania parametrów wiersza polecenia

AzCopy /@:"C:\responsefiles\copyoperation.txt"

W pliku odpowiedzi można uwzględnić dowolne parametry wiersza polecenia narzędzia AzCopy. Narzędzie AzCopy przetwarza parametry w pliku tak, jakby zostały określone w wierszu polecenia, wykonując bezpośrednie podstawianie zawartości pliku.

Załóżmy, że plik odpowiedzi o nazwie copyoperation.txt, który zawiera następujące wiersze. Każdy parametr AzCopy można określić w jednym wierszu

/Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y

lub w oddzielnych wierszach:

/Source:http://myaccount.blob.core.windows.net/mycontainer
/Dest:C:\myfolder
/SourceKey:<sourcekey>
/S
/Y

Narzędzie AzCopy kończy się niepowodzeniem w przypadku podziału parametru na dwa wiersze, jak pokazano tutaj dla parametru /sourcekey :

http://myaccount.blob.core.windows.net/mycontainer
 C:\myfolder
/sourcekey:
<sourcekey>
/S
/Y

Używanie wielu plików odpowiedzi do określania parametrów wiersza polecenia

Załóżmy, że plik odpowiedzi o nazwie source.txt określa kontener źródłowy:

/Source:http://myaccount.blob.core.windows.net/mycontainer

Plik odpowiedzi o nazwie dest.txt określający folder docelowy w systemie plików:

/Dest:C:\myfolder

Plik odpowiedzi o nazwie options.txt , który określa opcje narzędzia AzCopy:

/S /Y

Aby wywołać narzędzie AzCopy z tymi plikami odpowiedzi, z których wszystkie znajdują się w katalogu C:\responsefiles, użyj następującego polecenia:

AzCopy /@:"C:\responsefiles\source.txt" /@:"C:\responsefiles\dest.txt" /SourceKey:<sourcekey> /@:"C:\responsefiles\options.txt"   

Narzędzie AzCopy przetwarza to polecenie tak samo, jak w przypadku dołączenia wszystkich poszczególnych parametrów w wierszu polecenia:

AzCopy /Source:http://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:<sourcekey> /S /Y

Określanie sygnatury dostępu współdzielonego (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

Można również określić sygnaturę dostępu współdzielonego w identyfikatorze URI kontenera:

AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer1/?SourceSASToken /Dest:C:\myfolder /S

Folder plików dziennika

Za każdym razem, gdy wydasz polecenie do narzędzia AzCopy, sprawdza, czy plik dziennika istnieje w folderze domyślnym, czy istnieje w folderze określonym za pomocą tej opcji. Jeśli plik dziennika nie istnieje w obu miejscach, narzędzie AzCopy traktuje operację jako nową i generuje nowy plik dziennika.

Jeśli plik dziennika istnieje, narzędzie AzCopy sprawdza, czy wejściowy wiersz polecenia jest zgodny z wierszem polecenia w pliku dziennika. Jeśli dwa wiersze polecenia są zgodne, narzędzie AzCopy wznowi niekompletną operację. Jeśli nie są one zgodne, zostanie wyświetlony monit o zastąpienie pliku dziennika w celu uruchomienia nowej operacji lub anulowania bieżącej operacji.

Jeśli chcesz użyć domyślnej lokalizacji dla pliku dziennika:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z

Jeśli pominięto opcję /Zlub określ opcję /Z bez ścieżki folderu, jak pokazano powyżej, narzędzie AzCopy tworzy plik dziennika w domyślnej lokalizacji, czyli %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy. Jeśli plik dziennika już istnieje, narzędzie AzCopy wznowi operację na podstawie pliku dziennika.

Jeśli chcesz określić niestandardową lokalizację pliku dziennika:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z:C:\journalfolder\

W tym przykładzie zostanie utworzony plik dziennika, jeśli jeszcze nie istnieje. Jeśli istnieje, narzędzie AzCopy wznawia operację na podstawie pliku dziennika.

Jeśli chcesz wznowić operację narzędzia AzCopy:

AzCopy /Z:C:\journalfolder\

W tym przykładzie wznowiono ostatnią operację, która mogła zakończyć się niepowodzeniem.

Generowanie pliku dziennika

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V

Jeśli określisz opcję /V bez podania ścieżki pliku do pełnego dziennika, narzędzie AzCopy utworzy plik dziennika w domyślnej lokalizacji, czyli %SystemDrive%\Users\%username%\AppData\Local\Microsoft\Azure\AzCopy.

W przeciwnym razie możesz utworzyć plik dziennika w lokalizacji niestandardowej:

AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /V:C:\myfolder\azcopy1.log

Należy pamiętać, że jeśli określisz ścieżkę względną po opcji /V, na przykład /V:test/azcopy1.log, pełny dziennik zostanie utworzony w bieżącym katalogu roboczym w podfolderze o nazwie test.

Określ liczbę współbieżnych operacji do uruchomienia

Opcja /NC określa liczbę współbieżnych operacji kopiowania. Domyślnie narzędzie AzCopy uruchamia pewną liczbę operacji współbieżnych w celu zwiększenia przepływności transferu danych. W przypadku operacji tabeli liczba operacji współbieżnych jest równa liczbie posiadanych procesorów. W przypadku operacji obiektów blob i plików liczba operacji współbieżnych jest równa 8 razy liczbie posiadanych procesorów. Jeśli używasz narzędzia AzCopy w sieci o niskiej przepustowości, możesz określić niższą liczbę /NC, aby uniknąć awarii spowodowanej przez konkurencję zasobów.

Uruchamianie narzędzia AzCopy względem emulatora usługi Azure Storage

Narzędzie AzCopy można uruchomić względem emulatora usługi Azure Storage dla obiektów blob:

AzCopy /Source:https://127.0.0.1:10000/myaccount/mycontainer/ /Dest:C:\myfolder /SourceKey:key /SourceType:Blob /S

Można go również uruchomić dla tabel:

AzCopy /Source:https://127.0.0.1:10002/myaccount/mytable/ /Dest:C:\myfolder /SourceKey:key /SourceType:Table

Automatyczne określanie typu zawartości obiektu blob

Narzędzie AzCopy określa typ zawartości obiektu blob na podstawie pliku JSON, który przechowuje typ zawartości do mapowania rozszerzeń plików. Ten plik JSON nosi nazwę AzCopyConfig.json i znajduje się w katalogu AzCopy. Jeśli masz typ pliku, który nie znajduje się na liście, możesz dołączyć mapowanie do pliku JSON:

{
  "MIMETypeMapping": {
    ".myext": "text/mycustomtype",
    .
    .
  }
}

Parametry narzędzia AzCopy

Parametry narzędzia AzCopy zostały opisane poniżej. Możesz również wpisać jedno z następujących poleceń z wiersza polecenia, aby uzyskać pomoc w korzystaniu z narzędzia AzCopy:

  • Aby uzyskać szczegółową pomoc dotyczącą wiersza polecenia dla narzędzia AzCopy: AzCopy /?
  • Aby uzyskać szczegółową pomoc dotyczącą dowolnego parametru narzędzia AzCopy: AzCopy /?:SourceKey
  • Przykłady wiersza polecenia: AzCopy /?:Sample

/Source:"source"

Określa dane źródłowe, z których mają być skopiowane. Źródłem może być katalog systemu plików, kontener obiektów blob, katalog wirtualny obiektu blob, udział plików magazynu, katalog plików magazynu lub tabela platformy Azure.

Dotyczy: Obiekty blob, pliki, tabele

/Dest:"destination"

Określa miejsce docelowe do skopiowania. Miejsce docelowe może być katalogiem systemu plików, kontenerem obiektów blob, katalogiem wirtualnym obiektu blob, udziałem plików magazynu, katalogiem plików magazynu lub tabelą platformy Azure.

Dotyczy: Obiekty blob, pliki, tabele

/Pattern:"file-pattern"

Określa wzorzec pliku, który wskazuje, które pliki mają być skopiowane. Zachowanie /Pattern parametr jest określany przez lokalizację danych źródłowych i obecność opcji trybu cyklicznego. Tryb cykliczny jest określany za pośrednictwem opcji /S.

Jeśli określone źródło jest katalogiem w systemie plików, standardowe symbole wieloznaczne obowiązują, a podany wzorzec pliku jest zgodny z plikami w katalogu. Jeśli zostanie określona opcja /S, narzędzie AzCopy pasuje również do określonego wzorca względem wszystkich plików w dowolnych podfolderach poniżej katalogu.

Jeśli określone źródło jest kontenerem obiektów blob lub katalogiem wirtualnym, symbole wieloznaczne nie są stosowane. Jeśli określono opcję /S, narzędzie AzCopy interpretuje określony wzorzec pliku jako prefiks obiektu blob. Jeśli nie określono opcji /S, narzędzie AzCopy pasuje do wzorca pliku względem dokładnych nazw obiektów blob.

Jeśli określone źródło jest udziałem plików platformy Azure, musisz określić dokładną nazwę pliku (np. abc.txt), aby skopiować pojedynczy plik lub określić opcję /S, aby skopiować wszystkie pliki w udziale cyklicznie. Próba określenia wzorca pliku i opcji /S razem powoduje wystąpienie błędu.

Narzędzie AzCopy używa dopasowywania wielkości liter, gdy /Source jest kontenerem obiektów blob lub katalogiem wirtualnym obiektów blob i używa dopasowania bez uwzględniania wielkości liter we wszystkich pozostałych przypadkach.

Domyślny wzorzec pliku używany, gdy nie określono wzorca pliku, to . dla lokalizacji systemu plików lub pustego prefiksu dla lokalizacji usługi Azure Storage. Określanie wielu wzorców plików nie jest obsługiwane.

Dotyczy: Obiekty blob, pliki

/DestKey:"storage-key"

Określa klucz konta magazynu dla zasobu docelowego.

Dotyczy: Obiekty blob, pliki, tabele

/DestSAS:"sas-token"

Określa sygnaturę dostępu współdzielonego (SAS) z uprawnieniami do odczytu i zapisu dla miejsca docelowego (jeśli ma to zastosowanie). Otaczaj sygnaturę dostępu współdzielonego podwójnym cudzysłowem, ponieważ może zawierać specjalne znaki wiersza polecenia.

Jeśli zasób docelowy jest kontenerem obiektów blob, udziałem plików lub tabelą, możesz określić tę opcję, po której następuje token SAS, albo określić sygnaturę dostępu współdzielonego jako część docelowego kontenera obiektów blob, udziału plików lub identyfikatora URI tabeli bez tej opcji.

Jeśli źródło i miejsce docelowe są obiektami blob, docelowy obiekt blob musi znajdować się na tym samym koncie magazynu co źródłowy obiekt blob.

Dotyczy: Obiekty blob, pliki, tabele

/SourceKey:"storage-key"

Określa klucz konta magazynu dla zasobu źródłowego.

Dotyczy: Obiekty blob, pliki, tabele

/SourceSAS:"sas-token"

Określa sygnaturę dostępu współdzielonego z uprawnieniami READ i LIST dla źródła (jeśli ma to zastosowanie). Otaczaj sygnaturę dostępu współdzielonego podwójnym cudzysłowem, ponieważ może zawierać specjalne znaki wiersza polecenia.

Jeśli zasób źródłowy jest kontenerem obiektów blob i nie podano klucza ani sygnatury dostępu współdzielonego, kontener obiektów blob jest odczytywany za pośrednictwem dostępu anonimowego.

Jeśli źródło jest udziałem plików lub tabelą, należy podać klucz lub sygnaturę dostępu współdzielonego.

Dotyczy: Obiekty blob, pliki, tabele

/ S

Określa tryb cykliczny dla operacji kopiowania. W trybie cyklicznym narzędzie AzCopy kopiuje wszystkie obiekty blob lub pliki zgodne z określonym wzorcem pliku, w tym te w podfolderach.

Dotyczy: Obiekty blob, pliki

/BlobType:"block" | | "page" "Dołącz"

Określa, czy docelowy obiekt blob jest blokowym obiektem blob, stronicowym obiektem blob, czy uzupełnianym obiektem blob. Ta opcja ma zastosowanie tylko w przypadku przekazywania obiektu blob. W przeciwnym razie generowany jest błąd. Jeśli obiekt docelowy jest obiektem blob i ta opcja nie jest określona, domyślnie narzędzie AzCopy tworzy blokowy obiekt blob.

Dotyczy: Bloków blob

/CheckMD5

Oblicza skrót MD5 dla pobranych danych i sprawdza, czy skrót MD5 przechowywany w właściwości Content-MD5 obiektu blob lub pliku jest zgodny z obliczonym skrótem. Jeśli wartości nie są zgodne, narzędzie AzCopy nie będzie pobierać danych. Sprawdzanie MD5 jest domyślnie wyłączone, dlatego należy określić tę opcję, aby sprawdzić md5 podczas pobierania danych.

Pamiętaj, że usługa Azure Storage nie gwarantuje, że skrót MD5 przechowywany dla obiektu blob lub pliku jest aktualny. Klient ponosi odpowiedzialność za zaktualizowanie rozwiązania MD5 za każdym razem, gdy obiekt blob lub plik zostanie zmodyfikowany. W przypadku obrazów dysków (dysków zarządzanych lub niezarządzanych) maszyny wirtualne platformy Azure nie aktualizują wartości MD5 w miarę zmiany zawartości dysku, dlatego /CheckMD5 zgłasza błąd podczas pobierania obrazów dysków.

Narzędzie AzCopy w wersji 8 zawsze ustawia właściwość Content-MD5 dla obiektu blob lub pliku platformy Azure po przekazaniu go do usługi.

Dotyczy: Obiekty blob, pliki

/Snapshot

Wskazuje, czy mają być przenoszone migawki. Ta opcja jest prawidłowa tylko wtedy, gdy źródło jest obiektem blob.

Nazwy migawek przeniesionych obiektów blob są zmieniane w tym formacie: nazwa-obiektu blob (snapshot-time).extension

Domyślnie migawki nie są kopiowane.

Dotyczy: Bloków blob

/V:[verbose-log-file]

Zwraca pełne komunikaty o stanie do pliku dziennika.

Domyślnie pełny plik dziennika nosi nazwę AzCopyVerbose.log w pliku %LocalAppData%\Microsoft\Azure\AzCopy. Jeśli określisz istniejącą lokalizację pliku dla tej opcji, pełny dziennik zostanie dołączony do tego pliku.

Dotyczy: Obiekty blob, pliki, tabele

/Z:[journal-file-folder]

Określa folder pliku dziennika do wznowienia operacji.

Narzędzie AzCopy zawsze obsługuje wznawianie, jeśli operacja została przerwana.

Jeśli ta opcja nie jest określona lub jest określona bez ścieżki folderu, narzędzie AzCopy tworzy plik dziennika w domyślnej lokalizacji, czyli %LocalAppData%\Microsoft\Azure\AzCopy.

Za każdym razem, gdy wydasz polecenie narzędzia AzCopy, sprawdza, czy plik dziennika istnieje w folderze domyślnym, czy istnieje w folderze określonym za pośrednictwem tej opcji. Jeśli plik dziennika nie istnieje w obu miejscach, narzędzie AzCopy traktuje operację jako nową i generuje nowy plik dziennika.

Jeśli plik dziennika istnieje, narzędzie AzCopy sprawdza, czy wejściowy wiersz polecenia jest zgodny z wierszem polecenia w pliku dziennika. Jeśli dwa wiersze polecenia są zgodne, narzędzie AzCopy wznawia niekompletną operację. Jeśli nie są one zgodne, zostanie wyświetlony monit o zastąpienie pliku dziennika w celu rozpoczęcia nowej operacji lub anulowania bieżącej operacji.

Plik dziennika jest usuwany po pomyślnym zakończeniu operacji.

Należy pamiętać, że wznawianie operacji z pliku dziennika utworzonego przez poprzednią wersję narzędzia AzCopy nie jest obsługiwane.

Dotyczy: Obiekty blob, pliki, tabele

/@:"parameter-file"

Określa plik, który zawiera parametry. Narzędzie AzCopy przetwarza parametry w pliku tak, jakby zostały określone w wierszu polecenia.

W pliku odpowiedzi można określić wiele parametrów w jednym wierszu lub określić każdy parametr w osobnym wierszu. Należy pamiętać, że pojedynczy parametr nie może obejmować wielu wierszy.

Pliki odpowiedzi mogą zawierać wiersze komentarzy rozpoczynające się od symbolu #.

Można określić wiele plików odpowiedzi. Należy jednak pamiętać, że narzędzie AzCopy nie obsługuje zagnieżdżonych plików odpowiedzi.

Dotyczy: Obiekty blob, pliki, tabele

/ Y

Pomija wszystkie monity potwierdzenia narzędzia AzCopy. Ta opcja umożliwia również używanie tokenów SAS tylko do zapisu w scenariuszach przekazywania danych, gdy /XO i /XN nie są określone.

Dotyczy: Obiekty blob, pliki, tabele

/L

Określa tylko operację wyświetlania listy; żadne dane nie są kopiowane.

Narzędzie AzCopy interpretuje użycie tej opcji jako symulację uruchamiania wiersza polecenia bez tej opcji /L i zlicza liczbę skopiowanych obiektów, można określić opcję /V w tym samym czasie, aby sprawdzić, które obiekty są kopiowane w dzienniku pełnym.

Zachowanie tej opcji jest również określane przez lokalizację danych źródłowych i obecność opcji trybu cyklicznego /S i opcji wzorca pliku /Pattern.

Narzędzie AzCopy wymaga uprawnień LIST i READ tej lokalizacji źródłowej podczas korzystania z tej opcji.

Dotyczy: Obiekty blob, pliki

/MT

Ustawia czas ostatniej modyfikacji pobranego pliku na taki sam jak źródłowy obiekt blob lub plik.

Dotyczy: Obiekty blob, pliki

/XN

Wyklucza nowszy zasób źródłowy. Zasób nie jest kopiowany, jeśli czas ostatniej modyfikacji źródła jest taki sam lub nowszy niż docelowy.

Dotyczy: Obiekty blob, pliki

/XO

Wyklucza starszy zasób źródłowy. Zasób nie jest kopiowany, jeśli czas ostatniej modyfikacji źródła jest taki sam lub starszy niż miejsce docelowe.

Dotyczy: Obiekty blob, pliki

/A

Przekazuje tylko pliki, które mają zestaw atrybutów Archive.

Dotyczy: Obiekty blob, pliki

/IA:[RASHCNETOI]

Przekazuje tylko pliki, które mają dowolny z określonych atrybutów.

Dostępne są następujące atrybuty:

  • R = pliki tylko do odczytu
  • A = Pliki gotowe do archiwizacji
  • S = Pliki systemowe
  • H = ukryte pliki
  • C = Skompresowane pliki
  • N = zwykłe pliki
  • E = Zaszyfrowane pliki
  • T = pliki tymczasowe
  • O = pliki trybu offline
  • I = pliki nieindeksowane

Dotyczy: Obiekty blob, pliki

/XA:[RASHCNETOI]

Wyklucza pliki, które mają dowolny z określonych atrybutów zestawu.

Dostępne są następujące atrybuty:

  • R = pliki tylko do odczytu
  • A = Pliki gotowe do archiwizacji
  • S = Pliki systemowe
  • H = ukryte pliki
  • C = Skompresowane pliki
  • N = zwykłe pliki
  • E = Zaszyfrowane pliki
  • T = pliki tymczasowe
  • O = pliki trybu offline
  • I = pliki nieindeksowane

Dotyczy: Obiekty blob, pliki

/Ogranicznik:"Ogranicznik"

Wskazuje znak ogranicznika używany do rozdzielania katalogów wirtualnych w nazwie obiektu blob.

Domyślnie narzędzie AzCopy używa znaku / jako znaku ogranicznika. Jednak narzędzie AzCopy obsługuje używanie dowolnego wspólnego znaku (takiego jak @, #lub %) jako ogranicznika. Jeśli musisz dołączyć jeden z tych znaków specjalnych w wierszu polecenia, należy ująć nazwę pliku w cudzysłów podwójny.

Ta opcja ma zastosowanie tylko do pobierania obiektów blob.

Dotyczy: Bloków blob

/NC:"liczba współbieżnych operacji"

Określa liczbę operacji współbieżnych.

Narzędzie AzCopy domyślnie uruchamia określoną liczbę operacji współbieżnych w celu zwiększenia przepływności transferu danych. Należy pamiętać, że duża liczba operacji współbieżnych w środowisku o niskiej przepustowości może spowodować przeciążenie połączenia sieciowego i uniemożliwić pełne ukończenie operacji. Ograniczanie współbieżnych operacji na podstawie rzeczywistej dostępnej przepustowości sieci.

Górny limit operacji współbieżnych wynosi 512.

Dotyczy: Obiekty blob, pliki, tabele

/SourceType:"Blob" | "Tabela"

Określa, że source zasób jest obiektem blob dostępnym w lokalnym środowisku projektowym uruchomionym w emulatorze magazynu.

Dotyczy: Obiekty blob, tabele

/DestType:"Blob" | "Tabela"

Określa, że destination zasób jest obiektem blob dostępnym w lokalnym środowisku projektowym uruchomionym w emulatorze magazynu.

Dotyczy: Obiekty blob, tabele

/PKRS:"key1#key2#key3#..."

Dzieli zakres kluczy partycji, aby umożliwić równoległe eksportowanie danych tabeli, co zwiększa szybkość operacji eksportowania.

Jeśli ta opcja nie zostanie określona, narzędzie AzCopy używa pojedynczego wątku do eksportowania jednostek tabeli. Jeśli na przykład użytkownik określa /PKRS:"aa#bb", narzędzie AzCopy uruchamia trzy współbieżne operacje.

Każda operacja eksportuje jeden z trzech zakresów kluczy partycji, jak pokazano poniżej:

[first-partition-key, aa)

[aa, bb)

[bb, last-partition-key]

Dotyczy: Tabel

/SplitSize:"file-size"

Określa wyeksportowany rozmiar podziału pliku w MB, minimalna dozwolona wartość to 32.

Jeśli ta opcja nie zostanie określona, narzędzie AzCopy eksportuje dane tabeli do jednego pliku.

Jeśli dane tabeli są eksportowane do obiektu blob, a wyeksportowany rozmiar pliku osiągnie limit 200 GB dla rozmiaru obiektu blob, narzędzie AzCopy dzieli wyeksportowany plik, nawet jeśli ta opcja nie zostanie określona.

Dotyczy: Tabel

/EntityOperation:"InsertOrSkip" | | "InsertOrMerge" "InsertOrReplace"

Określa zachowanie importowania danych tabeli.

  • InsertOrSkip — pomija istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.
  • InsertOrMerge — scala istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.
  • InsertOrReplace — zastępuje istniejącą jednostkę lub wstawia nową jednostkę, jeśli nie istnieje w tabeli.

Dotyczy: Tabel

/Manifest:"manifest-file"

Określa plik manifestu dla operacji eksportowania i importowania tabeli.

Ta opcja jest opcjonalna podczas operacji eksportowania, narzędzie AzCopy generuje plik manifestu ze wstępnie zdefiniowaną nazwą, jeśli ta opcja nie jest określona.

Ta opcja jest wymagana podczas operacji importowania do lokalizowania plików danych.

Dotyczy: Tabel

/SyncCopy

Wskazuje, czy mają być synchroniczne kopiowanie obiektów blob lub plików między dwoma punktami końcowymi usługi Azure Storage.

Narzędzie AzCopy domyślnie używa kopii asynchronicznej po stronie serwera. Określ tę opcję, aby wykonać kopię synchroniczną, która pobiera obiekty blob lub pliki do pamięci lokalnej, a następnie przekazuje je do usługi Azure Storage.

Tej opcji można użyć podczas kopiowania plików w usłudze Blob Storage, w usłudze File Storage lub z usługi Blob Storage do usługi File Storage lub odwrotnie.

Dotyczy: Obiekty blob, pliki

/SetContentType:"content-type"

Określa typ zawartości MIME dla docelowych obiektów blob lub plików.

Narzędzie AzCopy domyślnie ustawia typ zawartości obiektu blob lub pliku na wartość application/octet-stream. Typ zawartości dla wszystkich obiektów blob lub plików można ustawić, jawnie określając wartość dla tej opcji.

Jeśli określisz tę opcję bez wartości, narzędzie AzCopy ustawia typ zawartości każdego obiektu blob lub pliku zgodnie z jego rozszerzeniem pliku.

Dotyczy: Obiekty blob, pliki

/PayloadFormat:"JSON" | "CSV"

Określa format wyeksportowanego pliku danych tabeli.

Jeśli ta opcja nie jest określona, domyślnie narzędzie AzCopy eksportuje plik danych tabeli w formacie JSON.

Dotyczy: Tabel

Znane problemy i najlepsze rozwiązania

Przyjrzyjmy się niektórym znanym problemom i najlepszym rozwiązaniom.

Ograniczanie współbieżnych zapisów podczas kopiowania danych

Podczas kopiowania obiektów blob lub plików za pomocą narzędzia AzCopy pamiętaj, że podczas kopiowania dane mogą być modyfikowane przez inną aplikację. Jeśli to możliwe, upewnij się, że kopiowane dane nie są modyfikowane podczas operacji kopiowania. Na przykład podczas kopiowania wirtualnego dysku twardego skojarzonego z maszyną wirtualną platformy Azure upewnij się, że żadne inne aplikacje nie zapisują obecnie na dysku VHD. Dobrym sposobem na to jest dzierżawa zasobu do skopiowania. Alternatywnie możesz najpierw utworzyć migawkę wirtualnego dysku twardego, a następnie skopiować migawkę.

Jeśli nie możesz uniemożliwić innym aplikacjom zapisywania w obiektach blob lub plikach podczas ich kopiowania, pamiętaj, że po zakończeniu zadania skopiowane zasoby mogą nie mieć już pełnej parzystości z zasobami źródłowymi.

Włącz zgodne ze standardem FIPS algorytmy MD5 dla narzędzia AzCopy, gdy "Użyj algorytmów zgodnych ze standardem FIPS do szyfrowania, tworzenia skrótów i podpisywania".

Narzędzie AzCopy domyślnie używa implementacji md5 platformy .NET do obliczania md5 podczas kopiowania obiektów, ale istnieją pewne wymagania dotyczące zabezpieczeń, które wymagają narzędzia AzCopy, aby włączyć ustawienie MD5 zgodne ze standardem FIPS.

Możesz utworzyć plik AzCopy.exe.config app.config z właściwością AzureStorageUseV1MD5 i odłożyć go na bok AzCopy.exe.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <appSettings>
    <add key="AzureStorageUseV1MD5" value="false"/>
  </appSettings>
</configuration>

Dla właściwości "AzureStorageUseV1MD5":

  • True — wartość domyślna narzędzia AzCopy używa implementacji md5 platformy .NET.
  • Fałsz — narzędzie AzCopy używa zgodnego ze standardem FIPS algorytmu MD5.

Algorytmy zgodne ze standardem FIPS są domyślnie wyłączone w systemie Windows. To ustawienie zasad można zmienić na maszynie. W oknie Uruchamianie (Windows+R) wpisz secpol.msc, aby otworzyć okno Zasady zabezpieczeń lokalnych . W oknie Ustawienia zabezpieczeń przejdź do pozycji Ustawienia zabezpieczeń Opcje>zabezpieczeńZasady> lokalne. Znajdź kryptografię systemu: użyj algorytmów zgodnych ze standardem FIPS na potrzeby szyfrowania, tworzenia skrótów i podpisywania zasad. Kliknij dwukrotnie zasady, aby wyświetlić wartość wyświetlaną w kolumnie Ustawienie zabezpieczeń .

Następne kroki

Aby uzyskać więcej informacji na temat usługi Azure Storage i narzędzia AzCopy, zapoznaj się z następującymi zasobami:

Dokumentacja usługi Azure Storage:

Wpisy w blogu usługi Azure Storage: