Transferowanie danych za pomocą narzędzia AzCopy w wersji 8.1 w systemie Windows
AzCopy to narzędzie wiersza polecenia umożliwiające kopiowanie danych do i z usług Microsoft Azure Blob, File i Table Storage przy użyciu prostych poleceń zaprojektowanych w celu uzyskania 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 w wersji 10.
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 obsługuje platformy z systemem Linux oferujące opcje wiersza polecenia w stylu POSIX. W tym artykule opisano narzędzie AzCopy w systemie Windows.
Pobierz i zainstaluj narzędzie AzCopy (wersja 8.1) w systemie Windows
Pobierz narzędzie AzCopy (wersja 8.1) w systemie Windows.
Informacje o wersji narzędzia AzCopy w systemie Windows 8.1
- 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.
- Skompilowany przy użyciu platformy .NET Core 2.1, a wszystkie zależności platformy .NET Core są teraz pakowane w instalacji.
- Dodano obsługę uwierzytelniania OAuth. Użyj
azcopy login
polecenia , 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"
Należy pamiętać, że jeśli folder C:\myfolder
nie istnieje, narzędzie AzCopy utworzy go i pobierze abc.txt
do 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 zostaną pobrane ż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 opcja /S
nie zostanie określona, narzędzie AzCopy nie pobiera żadnych obiektów blob.
Ustaw czas ostatniej modyfikacji wyeksportowanych plików na taki sam jak źródłowe obiekty blob
AzCopy /Source:https://myaccount.blob.core.windows.net/mycontainer /Dest:C:\myfolder /SourceKey:key /MT
Można również wykluczyć obiekty blob 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
powoduje przekazanie zawartości określonego katalogu do usługi Blob Storage rekursywnie, 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 będzie cyklicznie przekazywane. 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
wartość . 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 z dostępem 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 na inne konto 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 rekursywnie. Aby uzyskać więcej informacji i przykład, zobacz Przekazywanie wszystkich obiektów blob w folderze .
Synchroniczne kopiowanie obiektów 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 zakończenia kopiowania lub niepowodzenia.
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ą. Zalecaną metodą jest użycie tej opcji na maszynie wirtualnej platformy Azure, która znajduje się w tym samym regionie co źródłowe konto magazynu, 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 rekursywnie. Próba określenia zarówno wzorca pliku, jak 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.
Synchroniczne kopiowanie plików
Możesz 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 magazynu plików 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że 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 źródłowe konto magazynu, 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 do lokalizowania niezbędnych plików danych i przeprowadzania walidacji 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, aby odróżnić wiele 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 zerach.
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 magazyn obiektów blob, narzędzie AzCopy dzieli plik danych po osiągnięciu ograniczenia 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ędzie AzCopy eksportuje tabele do plików danych JSON. Możesz określić opcję /PayloadFormat:JSON|CSV
eksportowania tabel jako plików 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 eksportowania 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 /NC
domyślnej podczas kopiowania jednostek tabeli, nawet jeśli /NC
nie został określony. 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 współbieżnych operacji — w celu określenia liczby współbieżnych operacji do uruchomienia. Aby uzyskać więcej informacji, wpisz AzCopy /?:NC
polecenie w 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.
Pamiętaj, ż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 pliki danych tymczasowych 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 zmienić lokalizację plików danych tymczasowych. Rozmiar plików danych tymczasowych jest określany przez rozmiar jednostek tabeli i rozmiar określony za pomocą opcji /SplitSize, chociaż plik danych tymczasowych na dysku lokalnym jest usuwany natychmiast po przekazaniu go do obiektu blob, upewnij się, że masz wystarczającą ilość miejsca na dysku lokalnym do przechowywania tych plików danych tymczasowych 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. Dopuszczalne 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 importowania. 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 AzCopy /?:NC
polecenie w wierszu polecenia.
Pamiętaj, ż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 narzędzia 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 starszych lub nowszych zasobów źródłowych z kopiowanych. Jeśli chcesz skopiować tylko zasoby źródłowe, które nie istnieją w miejscu docelowym, możesz określić oba parametry w poleceniu narzędzia 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 narzędzia 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 osobnych 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 podzielenia parametru między dwa wiersze, jak pokazano poniżej 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ślający kontener źródłowy:
/Source:http://myaccount.blob.core.windows.net/mycontainer
Plik odpowiedzi o nazwie dest.txt
, który określa 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żesz również określić sygnaturę dostępu współdzielonego dla identyfikatora 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 narzędziu 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 rozpoczęcia nowej operacji lub anulowania bieżącej operacji.
Jeśli chcesz użyć domyślnej lokalizacji pliku dziennika:
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z
Jeśli pominięto opcję /Z
, lub 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ć lokalizację niestandardową dla pliku dziennika:
AzCopy /Source:C:\myfolder /Dest:https://myaccount.blob.core.windows.net/mycontainer /DestKey:key /Z:C:\journalfolder\
W tym przykładzie tworzony jest 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
, taką jak /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 tabel liczba operacji współbieżnych jest równa liczbie procesorów, które masz. W przypadku operacji obiektów blob i plików liczba współbieżnych operacji jest równa 8 razy liczbie procesorów, które masz. Jeśli używasz narzędzia AzCopy w sieci o niskiej przepustowości, możesz określić niższą liczbę dla /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 ma 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 dotyczącą korzystania z narzędzia AzCopy:
- Aby uzyskać szczegółową pomoc 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 chcesz skopiować. Ź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. Miejscem docelowym 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
/Pattern:"file-pattern"
Określa wzorzec pliku, który wskazuje pliki do skopiowania. Zachowanie /Pattern parametru jest określane przez lokalizację danych źródłowych i obecność opcji trybu cyklicznego. Tryb rekursywny jest określany za pośrednictwem opcji /S.
Jeśli określone źródło jest katalogiem w systemie plików, obowiązują standardowe symbole wieloznaczne, a podany wzorzec pliku jest zgodny z plikami w katalogu. Jeśli określono opcję /S, narzędzie AzCopy pasuje również do określonego wzorca dla wszystkich plików w dowolnych podfolderach pod katalogiem.
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 opcja /S nie jest określona, 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 rekursywnie. Próba określenia zarówno wzorca pliku, jak 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 dotyczy). 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, lub można 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 obiekt źródłowy i docelowy 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 ODCZYT i LISTA 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 ani 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 rekursywnym narzędzie AzCopy kopiuje wszystkie obiekty blob lub pliki zgodne ze wzorcem określonego 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łnilnym obiektem blob. Ta opcja ma zastosowanie tylko w przypadku przekazywania obiektu blob. W przeciwnym razie zostanie wygenerowany 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: obiekty 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 wartością skrótu obliczeniowego. Jeśli wartości nie są zgodne, narzędzie AzCopy nie pobierze danych. Sprawdzanie MD5 jest domyślnie wyłączone, dlatego należy określić tę opcję, aby wykonać sprawdzanie 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 aktualizację 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
/Migawka
Wskazuje, czy mają być przesyłane 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: obiekty blob
/V:[verbose-log-file]
Zwraca pełne komunikaty o stanie do pliku dziennika.
Domyślnie pełny plik dziennika ma 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ędziu 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 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 plików odpowiedzi zagnieżdżonych.
Dotyczy: obiekty blob, pliki, tabele
/ Y
Pomija wszystkie monity o potwierdzenie narzędzia AzCopy. Ta opcja umożliwia również używanie tokenów SAS tylko do zapisu dla scenariuszy 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 atrybuty obejmują:
- 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.
Dostępne atrybuty obejmują:
- 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, dołącz nazwę pliku z podwójnymi cudzysłowami.
Ta opcja ma zastosowanie tylko do pobierania obiektów blob.
Dotyczy: obiekty blob
/NC:"number-of-concurrent-operations"
Określa liczbę operacji współbieżnych.
Narzędzie AzCopy domyślnie uruchamia pewną liczbę operacji współbieżnych w celu zwiększenia przepływności transferu danych. Należy pamiętać, że duża liczba współbieżnych operacji w środowisku o niskiej przepustowości może przeciążyć połączenie sieciowe i uniemożliwić wykonywanie operacji w pełni. Ograniczanie współbieżnych operacji na podstawie rzeczywistej dostępnej przepustowości sieci.
Górny limit dla 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 programistycznym 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 programistycznym 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: tabele
/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: tabele
/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: tabele
/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: tabele
/SyncCopy
Wskazuje, czy należy synchronicznie kopiować obiekty blob lub pliki 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ć synchroniczną kopię, 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 magazynie plików lub z usługi Blob Storage do magazynu plików 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ć, określając jawnie 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 rozszerzeniem pliku.
Dotyczy: obiekty blob, pliki
/PayloadFormat:"JSON" | "CSV"
Określa format wyeksportowanego pliku danych tabeli.
Jeśli ta opcja nie zostanie określona, domyślnie narzędzie AzCopy eksportuje plik danych tabeli w formacie JSON.
Dotyczy: tabele
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 należy pamiętać, ż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żawienie 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 .NET MD5 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 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.
- False — 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 do szyfrowania, tworzenia skrótów i zasad podpisywania . 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:
- Wprowadzenie do usługi Azure Storage
- Jak używać usługi Blob Storage na platformie .NET
- Jak używać magazynu plików z platformy .NET
- Jak używać usługi Table Storage na platformie .NET
- Jak utworzyć konto magazynu, zarządzać nim lub usuwać je
- Transferowanie danych za pomocą narzędzia AzCopy w systemie Linux
Wpisy w blogu usługi Azure Storage:
- Wprowadzenie do wersji zapoznawczej biblioteki przenoszenia danych usługi Azure Storage
- AzCopy: wprowadzenie do synchronicznej kopii i dostosowanego typu zawartości
- AzCopy: ogłoszenie ogólnej dostępności narzędzia AzCopy 3.0 i wersji zapoznawczej narzędzia AzCopy 4.0 z obsługą tabel i plików
- AzCopy: zoptymalizowane pod kątem scenariuszy kopiowania na dużą skalę
- AzCopy: obsługa magazynu geograficznie nadmiarowego dostępnego do odczytu
- AzCopy: Transferowanie danych za pomocą trybu ponownego uruchomienia i tokenu SAS
- AzCopy: używanie obiektu blob kopiowania między kontami
- AzCopy: przekazywanie/pobieranie plików dla obiektów blob platformy Azure