Uaktualnianie usługi Azure Blob Storage za pomocą funkcji usługi Azure Data Lake Storage
Ten artykuł pomaga włączyć hierarchiczną przestrzeń nazw i odblokować funkcje, takie jak zabezpieczenia na poziomie plików i katalogów oraz szybsze operacje. Te możliwości są powszechnie używane przez obciążenia analizy danych big data i są określane zbiorczo jako usługa Azure Data Lake Storage. Najbardziej popularne możliwości to:
Większa przepływność, operacje wejścia/wyjścia na sekundę (IOPS) i limity pojemności magazynu.
Szybsze operacje (takie jak operacje zmiany nazwy), ponieważ można wykonywać operacje na poszczególnych identyfikatorach URI węzłów.
Wydajny aparat zapytań, który przesyła tylko dane wymagane do wykonania danej operacji.
Zabezpieczenia na poziomie kontenera, katalogu i pliku.
Aby dowiedzieć się więcej o nich, zobacz Wprowadzenie do usługi Azure Data Lake Storage.
Ten artykuł ułatwia ocenę wpływu obciążeń, aplikacji, kosztów, integracji usług, narzędzi, funkcji i dokumentacji. Pamiętaj, aby dokładnie przejrzeć te wpływy. Gdy wszystko będzie gotowe do uaktualnienia konta, zobacz ten przewodnik krok po kroku: Uaktualnianie usługi Azure Blob Storage przy użyciu funkcji usługi Azure Data Lake Storage.
Ważne
Uaktualnienie jest jednokierunkowe. Nie ma możliwości przywrócenia konta po wykonaniu uaktualnienia. Zalecamy zweryfikowanie uaktualnienia w środowisku nieprodukcyjnym.
Wpływ na dostępność
Pamiętaj, aby zaplanować pewien przestój na koncie podczas procesu uaktualniania. Operacje zapisu są wyłączone podczas uaktualniania konta. Operacje odczytu nie są wyłączone, ale zdecydowanie zalecamy wstrzymanie operacji odczytu, ponieważ te operacje mogą zdestabilizować proces uaktualniania.
Wpływ na obciążenia i aplikacje
Interfejsy API obiektów blob działają z kontami, które mają hierarchiczną przestrzeń nazw, więc większość aplikacji, które wchodzą w interakcję z kontem przy użyciu tych interfejsów API, nadal działa bez modyfikacji.
Aby uzyskać pełną listę problemów i obejść, zobacz Znane problemy z interfejsami API usługi Blob Storage.
Wszelkie obciążenia usługi Hadoop korzystające ze sterownika windows Azure Storage Blob Driver (WASB) należy zmodyfikować, aby używać sterownika systemu plików obiektów blob platformy Azure (ABFS). W przeciwieństwie do sterownika WASB, który wysyła żądania do punktu końcowego usługi Blob Service , sterownik ABFS wysyła żądania do punktu końcowego usługi Data Lake Storage twojego konta.
Punkt końcowy usługi Data Lake Storage
Uaktualnione konto będzie mieć punkt końcowy magazynu usługi Data Lake. Adres URL tego punktu końcowego można znaleźć w witrynie Azure Portal, otwierając stronę Właściwości konta.
Nie musisz modyfikować istniejących aplikacji i obciążeń w celu korzystania z tego punktu końcowego. Dostęp wieloprotokolowy w usłudze Data Lake Storage umożliwia korzystanie z punktu końcowego usługi Blob Service lub punktu końcowego usługi Data Lake Storage w celu interakcji z danymi.
Usługi i narzędzia platformy Azure (takie jak Narzędzie AzCopy) mogą używać punktu końcowego usługi Data Lake Storage do interakcji z danymi na koncie magazynu. Ponadto należy użyć tego nowego punktu końcowego dla wszystkich operacji wykonywanych przy użyciu zestawów SDK usługi Data Lake Storage, poleceń programu PowerShell lub poleceń interfejsu wiersza polecenia platformy Azure.
Directories
Konto usługi Blob Storage, które nie ma hierarchicznej przestrzeni nazw, organizuje pliki w modelu płaskim, a nie hierarchicznym. Obiekty blob są zorganizowane w katalogi wirtualne, aby naśladować strukturę folderów. Katalog wirtualny stanowi część nazwy obiektu blob i jest wskazywany przez znak ogranicznika. Ponieważ katalog wirtualny jest częścią nazwy obiektu blob, w rzeczywistości nie istnieje jako niezależny obiekt.
Nowe konto ma hierarchiczną przestrzeń nazw. Oznacza to, że katalogi nie są wirtualne. Są to betonowe, niezależne obiekty, na których można pracować bezpośrednio. Katalog może istnieć bez zawierania żadnych plików. Po usunięciu katalogu wszystkie pliki w tym katalogu zostaną usunięte. Nie trzeba już usuwać każdego pojedynczego obiektu blob przed zniknięciem katalogu.
Metadane obiektu blob
Przed migracją metadane obiektu blob są skojarzone z nazwą obiektu blob wraz z całą ścieżką wirtualną. Po migracji metadane są skojarzone tylko z obiektem blob. Ścieżka wirtualna do obiektu blob staje się kolekcją katalogów. Metadane obiektu blob nie są stosowane do żadnego z tych katalogów.
Operacje umieszczania
Po przekazaniu obiektu blob i określonej ścieżce znajduje się katalog, który nie istnieje, operacja tworzy ten katalog, a następnie dodaje do niego obiekt blob. To zachowanie jest logiczne w kontekście struktury folderów hierarchicznych. Na koncie usługi Blob Storage, które nie ma hierarchicznej przestrzeni nazw, operacja nie tworzy katalogu. Zamiast tego nazwa katalogu jest dodawana do nazwy obiektu blob.
Wyświetlanie listy operacji
Operacja Wyświetlanie listy obiektów blob zwraca zarówno katalogi, jak i pliki. Każda z nich jest wymieniona oddzielnie. Katalogi są wyświetlane na liście jako obiekty blob o zerowej długości. Na koncie usługi Blob Storage, które nie ma hierarchicznej przestrzeni nazw, operacja List Blobs zwraca tylko obiekty blob, a nie katalogi. Jeśli używasz operacji Ścieżka usługi Data Lake Storage — lista , katalogi będą wyświetlane jako wpisy katalogu, a nie jako obiekty blob o zerowej długości.
Kolejność listy jest również inna. Katalogi i pliki są wyświetlane w kolejności wyszukiwania w pierwszej kolejności. Konto usługi Blob Storage, które nie ma hierarchicznej przestrzeni nazw, wyświetla listę obiektów blob w kolejności leksykograficznej .
Operacje zmiany nazwy obiektów blob
Zmiana nazwy obiektu blob jest znacznie wydajniejsza, ponieważ aplikacje klienckie mogą zmienić nazwę obiektu blob w ramach jednej operacji. Na kontach, które nie mają hierarchicznej przestrzeni nazw, narzędzia i aplikacje muszą skopiować obiekt blob, a następnie usunąć źródłowy obiekt blob.
Uwaga
Podczas zmieniania nazwy obiektu blob czas ostatniej modyfikacji obiektu blob nie jest aktualizowany. Dzieje się tak, ponieważ zawartość obiektu blob pozostaje niezmieniona.
Wpływ na koszty
Uaktualnienie nie wiąże się z żadnymi kosztami. Po uaktualnieniu koszt przechowywania danych nie ulega zmianie, ale koszt transakcji się zmienia. Użyj tych stron, aby ocenić koszty porównania.
Możesz również użyć opcji Konta magazynu w kalkulatorze cen platformy Azure, aby oszacować wpływ kosztów po uaktualnieniu.
Oprócz zmian cen należy wziąć pod uwagę oszczędności kosztów związane z możliwościami usługi Data Lake Storage. Łączny całkowity koszt posiadania zwykle spada z powodu większej przepływności i zoptymalizowanych operacji. Większa przepływność umożliwia transfer większej ilości danych w krótszym czasie. Hierarchiczna przestrzeń nazw zwiększa wydajność operacji.
Wpływ na integracje usług
Chociaż większość integracji usług platformy Azure będzie nadal działać po włączeniu tych funkcji, niektóre z nich pozostają w wersji zapoznawczej lub nie są jeszcze obsługiwane. Zobacz Usługi platformy Azure, które obsługują usługę Azure Data Lake Storage , aby zrozumieć bieżącą obsługę integracji usług platformy Azure z usługą Data Lake Storage.
Wpływ na narzędzia, funkcje i dokumentację
Po uaktualnieniu zmieni się sposób interakcji z niektórymi funkcjami. W tej sekcji opisano te zmiany.
Obsługa funkcji usługi Blob Storage
Chociaż większość funkcji usługi Blob Storage będzie nadal działać po włączeniu tych funkcji, niektóre z nich pozostają w wersji zapoznawczej lub nie są jeszcze obsługiwane.
Zobacz Funkcje usługi Blob Storage dostępne w usłudze Azure Data Lake Storage, aby poznać bieżącą obsługę funkcji usługi Blob Storage w usłudze Data Lake Storage.
Dzienniki diagnostyczne
Jeśli włączysz rejestrowanie analizy magazynu, możesz teraz użyć formatu dziennika w wersji 2.0.
Nie musisz używać tej nowej wersji. Jednak wszystkie operacje stosowane do punktu końcowego magazynu usługi Data Lake są rejestrowane tylko w dziennikach wersji 2.0. Niektóre używane usługi i narzędzia (takie jak Narzędzie AzCopy) będą używać tego punktu końcowego do wykonywania operacji na twoim koncie. Aby upewnić się, że przechwytujesz informacje rejestrowania ze wszystkich działań, rozważ użycie formatu dziennika w wersji 2.0.
Zarządzanie cyklem życia platformy Azure
W rzeczywistości wyjaśniono, że zasady przenoszenia lub usuwania wszystkich obiektów blob w katalogu nie spowodują usunięcia samego katalogu, dopóki wszystkie w nim obiekty blob nie zostaną usunięte, a katalog zostanie usunięty następnego dnia.
Event Grid
Nowe konto ma dwa punkty końcowe: punkt końcowy usługi Data Lake Storage i punkt końcowy usługi Blob Service. Usługi, narzędzia i aplikacje mogą używać dowolnego punktu końcowego do obsługi danych. W związku z tym odpowiedź zdarzenia zwrócona przez usługę Event Grid może wyświetlić jeden z tych dwóch punktów końcowych w polu adresu URL , który opisuje dotknięty obiekt blob.
Poniższy kod JSON przedstawia adres URL obiektu blob, który pojawia się w odpowiedzi zdarzenia podczas tworzenia obiektu blob przy użyciu punktu końcowego usługi Blob Service.
{
"topic": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/test-container/blobs/new-file.txt",
"eventType": "Microsoft.Storage.BlobCreated",
"eventTime": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "PutBlockList",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "\"0x8D4BCC2E4835CD0\"",
"contentType": "text/plain",
"contentLength": 524288,
"blobType": "BlockBlob",
"url": "https://my-storage-account.blob.core.windows.net/testcontainer/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"dataVersion": "",
"metadataVersion": "1"
}
Poniższy kod JSON przedstawia adres URL obiektu blob wyświetlanego w odpowiedzi zdarzenia podczas tworzenia obiektu blob przy użyciu punktu końcowego usługi Data Lake Storage.
{
"topic": "/subscriptions/{subscription-id}/resourceGroups/Storage/providers/Microsoft.Storage/storageAccounts/my-storage-account",
"subject": "/blobServices/default/containers/my-file-system/blobs/new-file.txt",
"eventType": "Microsoft.Storage.BlobCreated",
"eventTime": "2017-06-26T18:41:00.9584103Z",
"id": "831e1650-001e-001b-66ab-eeb76e069631",
"data": {
"api": "CreateFile",
"clientRequestId": "6d79dbfb-0e37-4fc4-981f-442c9ca65760",
"requestId": "831e1650-001e-001b-66ab-eeb76e000000",
"eTag": "\"0x8D4BCC2E4835CD0\"",
"contentType": "text/plain",
"contentLength": 0,
"contentOffset": 0,
"blobType": "BlockBlob",
"url": "https://my-storage-account.dfs.core.windows.net/my-file-system/new-file.txt",
"sequencer": "00000000000004420000000000028963",
"storageDiagnostics": {
"batchId": "b68529f3-68cd-4744-baa4-3c0498ec19f0"
}
},
"dataVersion": "2",
"metadataVersion": "1"
}
Jeśli aplikacje korzystają z usługi Event Grid, może być konieczne zmodyfikowanie tych aplikacji, aby je uwzględnić.
Eksplorator usługi Storage
Następujące przyciski nie są jeszcze wyświetlane na wstążce Eksplorator usługi Azure Storage:
Przycisk | Przyczyna |
---|---|
Kopiowanie adresu URL | Jeszcze nie zaimplementowano |
Zarządzanie migawkami | Jeszcze nie zaimplementowano |
Cofnij usunięcie | Zależy od funkcji usługi Blob Storage, które nie są jeszcze obsługiwane w usłudze Data Lake Storage |
Następujące przyciski zachowują się inaczej na nowym koncie.
Przycisk | Zachowanie magazynu obiektów blob | Zachowanie usługi Data Lake Storage |
---|---|---|
Folder | Folder jest wirtualny i zniknie, jeśli nie dodasz do niego plików. | Folder istnieje nawet bez dodanych do niego plików. |
Zmień nazwę | Powoduje skopiowanie, a następnie usunięcie źródłowego obiektu blob | Zmienia nazwę tego samego obiektu blob. Znacznie bardziej wydajne. |
Dokumentacja
Wskazówki dotyczące korzystania z funkcji usługi Data Lake Storage można znaleźć tutaj: Wprowadzenie do usługi Azure Data Lake Storage.
Nic się nie zmieniło w odniesieniu do tego, gdzie znajdziesz wskazówki dotyczące wszystkich istniejących funkcji usługi Blob Storage. Te wskazówki dotyczą: Wprowadzenie do usługi Azure Blob Storage.
Podczas przechodzenia między zestawami zawartości zauważysz niewielkie różnice w terminologii. Na przykład zawartość polecana w zawartości usługi Data Lake Storage może używać terminu plik i system plików zamiast obiektu blob i kontenera. Terminy file and file system są głęboko zakorzenione w świecie analizy danych big data, gdzie usługa Data Lake Storage miała długą historię. Zawartość zawiera te terminy, aby zachować ich związek z tymi odbiorcami. Te terminy nie opisują oddzielnych rzeczy.
Następne kroki
Gdy wszystko będzie gotowe do uaktualnienia konta magazynu w celu uwzględnienia możliwości usługi Data Lake Storage, zobacz ten przewodnik krok po kroku.