Przechowywanie wersji obiektów blob

Możesz włączyć przechowywanie wersji usługi Blob Storage, aby automatycznie obsługiwać poprzednie wersje obiektu. Po włączeniu przechowywania wersji obiektów blob można uzyskać dostęp do wcześniejszych wersji obiektu blob, aby odzyskać dane, jeśli zostaną zmodyfikowane lub usunięte.

Przechowywanie wersji obiektów blob jest częścią kompleksowej strategii ochrony danych dla danych obiektów blob. Aby uzyskać optymalną ochronę danych obiektów blob, firma Microsoft zaleca włączenie wszystkich następujących funkcji ochrony danych:

  • Przechowywanie wersji obiektów blob w celu automatycznego obsługi poprzednich wersji obiektu blob. Po włączeniu przechowywania wersji obiektów blob można przywrócić starszą wersję obiektu blob w celu odzyskania danych, jeśli zostaną one błędnie zmodyfikowane lub usunięte. Aby dowiedzieć się, jak włączyć przechowywanie wersji obiektów blob, zobacz Włączanie przechowywania wersji obiektów blob i zarządzanie nimi.
  • Usuwanie nietrwałe kontenera w celu przywrócenia usuniętego kontenera. Aby dowiedzieć się, jak włączyć usuwanie nietrwałe kontenera, zobacz Włączanie usuwania nietrwałego i zarządzanie nim dla kontenerów.
  • Usuwanie nietrwałe obiektu blob w celu przywrócenia obiektu blob, migawki lub wersji, która została usunięta. Aby dowiedzieć się, jak włączyć usuwanie nietrwałe obiektów blob, zobacz Włączanie usuwania nietrwałego i zarządzanie nim dla obiektów blob.

Aby dowiedzieć się więcej na temat zaleceń firmy Microsoft dotyczących ochrony danych, zobacz Omówienie ochrony danych.

Uwaga

Po włączeniu przechowywania wersji obiektów blob dla konta magazynu każda operacja zapisu w obiekcie blob na tym koncie powoduje utworzenie nowej wersji. Z tego powodu włączenie przechowywania wersji obiektów blob może spowodować dodatkowe koszty. Aby zminimalizować koszty, użyj zasad zarządzania cyklem życia, aby automatycznie usunąć stare wersje. Aby uzyskać więcej informacji na temat zarządzania cyklem życia, zobacz Optymalizowanie kosztów przez automatyzację warstw dostępu usługi Azure Blob Storage.

Jak działa przechowywanie wersji obiektów blob

Wersja przechwytuje stan obiektu blob w danym punkcie w czasie. Każda wersja jest identyfikowana z identyfikatorem wersji. Gdy obsługa wersji obiektów blob jest włączona dla konta magazynu, usługa Azure Storage automatycznie tworzy nową wersję z unikatowym identyfikatorem podczas pierwszego tworzenia obiektu blob i za każdym razem, gdy obiekt blob jest następnie modyfikowany.

Identyfikator wersji może zidentyfikować bieżącą wersję lub poprzednią wersję. Obiekt blob może mieć tylko jedną bieżącą wersję naraz.

Podczas tworzenia nowego obiektu blob istnieje pojedyncza wersja, a ta wersja jest bieżącą wersją. Podczas modyfikowania istniejącego obiektu blob bieżąca wersja stanie się poprzednią wersją. Utworzono nową wersję w celu przechwycenia zaktualizowanego stanu, a nowa wersja jest bieżącą wersją. Po usunięciu obiektu blob bieżąca wersja obiektu blob stanie się poprzednią wersją i nie ma już bieżącej wersji. Wszystkie poprzednie wersje obiektu blob są utrwalane.

Na poniższym diagramie przedstawiono sposób tworzenia wersji w operacjach zapisu oraz sposobu podwyższenia poziomu poprzedniej wersji do bieżącej wersji:

Diagram showing how blob versioning works

Wersje obiektów blob są niezmienne. Nie można modyfikować zawartości ani metadanych istniejącej wersji obiektu blob.

Posiadanie dużej liczby wersji na obiekt blob może zwiększyć opóźnienie operacji wyświetlania listy obiektów blob. Firma Microsoft zaleca obsługę mniej niż 1000 wersji na obiekt blob. Zarządzanie cyklem życia umożliwia automatyczne usuwanie starych wersji. Aby uzyskać więcej informacji na temat zarządzania cyklem życia, zobacz Optymalizowanie kosztów przez automatyzację warstw dostępu usługi Azure Blob Storage.

Przechowywanie wersji obiektów blob jest dostępne dla standardowych kont ogólnego przeznaczenia w wersji 2, blokowych obiektów blob w warstwie Premium i starszych kont usługi Blob Storage. Konta magazynu z hierarchiczną przestrzenią nazw włączoną do użytku z usługą Azure Data Lake Storage Gen2 nie są obecnie obsługiwane.

Wersja 2019-10-10 i nowsza interfejsu API REST usługi Azure Storage obsługuje przechowywanie wersji obiektów blob.

Ważne

Przechowywanie wersji obiektów blob nie może pomóc w odzyskaniu po przypadkowym usunięciu konta magazynu lub kontenera. Aby zapobiec przypadkowemu usunięciu konta magazynu, skonfiguruj blokadę zasobu konta magazynu. Aby uzyskać więcej informacji na temat blokowania konta magazynu, zobacz Stosowanie blokady usługi Azure Resource Manager do konta magazynu.

Identyfikator wersji

Każda wersja obiektu blob jest identyfikowana przez unikatowy identyfikator wersji. Wartość identyfikatora wersji to sygnatura czasowa, w której obiekt blob został zaktualizowany. Identyfikator wersji jest przypisywany w momencie utworzenia wersji.

Operacje odczytu lub usuwania można wykonać na określonej wersji obiektu blob, podając jego identyfikator wersji. Jeśli pominięto identyfikator wersji, operacja działa względem bieżącej wersji.

Podczas wywoływania operacji zapisu w celu utworzenia lub zmodyfikowania obiektu blob usługa Azure Storage zwraca nagłówek x-ms-version-id w odpowiedzi. Ten nagłówek zawiera identyfikator wersji bieżącej wersji obiektu blob, który został utworzony przez operację zapisu.

Identyfikator wersji pozostaje taki sam dla okresu istnienia wersji.

Przechowywanie wersji operacji zapisu

Po włączeniu przechowywania wersji obiektów blob każda operacja zapisu w obiekcie blob tworzy nową wersję. Operacje zapisu obejmują umieszczanie obiektów blob, umieszczanie listy bloków, kopiowanie obiektu blob i ustawianie metadanych obiektu blob.

Jeśli operacja zapisu tworzy nowy obiekt blob, wynikowy obiekt blob jest bieżącą wersją obiektu blob. Jeśli operacja zapisu modyfikuje istniejący obiekt blob, bieżąca wersja stanie się poprzednią wersją, a nowa bieżąca wersja zostanie utworzona w celu przechwycenia zaktualizowanego obiektu blob.

Na poniższym diagramie pokazano, jak operacje zapisu wpływają na wersje obiektów blob. Dla uproszczenia diagramy pokazane w tym artykule wyświetlają identyfikator wersji jako prostą wartość całkowitą. W rzeczywistości identyfikator wersji jest znacznikiem czasu. Bieżąca wersja jest wyświetlana na niebiesko, a poprzednie wersje są wyświetlane w kolorze szarym.

Diagram showing how write operations affect versioned blobs.

Uwaga

Obiekt blob utworzony przed włączeniem obsługi wersji dla konta magazynu nie ma identyfikatora wersji. Po zmodyfikowaniu tego obiektu blob zmodyfikowany obiekt blob staje się bieżącą wersją, a wersja jest tworzona w celu zapisania stanu obiektu blob przed aktualizacją. Wersja ma przypisany identyfikator wersji, który jest jego czasem tworzenia.

Gdy obsługa wersji obiektów blob jest włączona dla konta magazynu, wszystkie operacje zapisu w blokowych obiektach blob wyzwalają utworzenie nowej wersji, z wyjątkiem operacji Put Block .

W przypadku stronicowych obiektów blob i uzupełnialnych obiektów blob tylko podzbiór operacji zapisu wyzwala tworzenie wersji. Te operacje obejmują:

Następujące operacje nie wyzwalają tworzenia nowej wersji. Aby przechwycić zmiany z tych operacji, wykonaj ręczną migawkę:

  • Umieść stronę (stronicowy obiekt blob)
  • Blok dołączania (uzupełnialne obiekty blob)

Wszystkie wersje obiektu blob muszą mieć ten sam typ obiektu blob. Jeśli obiekt blob ma poprzednie wersje, nie można zastąpić obiektu blob jednego typu innym typem, chyba że najpierw usuniesz obiekt blob i wszystkie jego wersje.

Przechowywanie wersji operacji usuwania

Po wywołaniu operacji Usuń obiekt blob bez określenia identyfikatora wersji bieżąca wersja stanie się poprzednią wersją i nie ma już bieżącej wersji. Wszystkie istniejące poprzednie wersje obiektu blob są zachowywane.

Na poniższym diagramie przedstawiono wpływ operacji usuwania na wersję obiektu blob:

Diagram showing deletion of versioned blob.

Aby usunąć określoną wersję obiektu blob, podaj identyfikator tej wersji operacji usuwania. Jeśli dla konta magazynu włączono również usuwanie nietrwałe obiektu blob, wersja jest utrzymywana w systemie do czasu upływu okresu przechowywania usuwania nietrwałego.

Zapisywanie nowych danych w obiekcie blob powoduje utworzenie nowej bieżącej wersji obiektu blob. Nie ma to wpływu na wszystkie istniejące wersje, jak pokazano na poniższym diagramie.

Diagram showing re-creation of versioned blob after deletion.

Poziomy dostępu

Możesz przenieść dowolną wersję blokowego obiektu blob, w tym bieżącą wersję, do innej warstwy dostępu do obiektu blob, wywołując operację Ustaw warstwę obiektu blob. Możesz skorzystać z niższych cen pojemności, przenosząc starsze wersje obiektu blob do warstwy Chłodna lub Archiwum. Aby uzyskać więcej informacji, zobacz Warstwy dostępu Gorąca, Chłodna, Zimna i Archiwum dla danych obiektów blob.

Aby zautomatyzować proces przenoszenia blokowych obiektów blob do odpowiedniej warstwy, użyj zarządzania cyklem życia obiektów blob. Aby uzyskać więcej informacji na temat zarządzania cyklem życia, zobacz Zarządzanie cyklem życia usługi Azure Blob Storage.

Włączanie lub wyłączanie przechowywania wersji obiektów blob

Aby dowiedzieć się, jak włączyć lub wyłączyć przechowywanie wersji obiektów blob, zobacz Włączanie przechowywania wersji obiektów blob i zarządzanie nimi.

Wyłączenie przechowywania wersji obiektów blob nie powoduje usunięcia istniejących obiektów blob, wersji ani migawek. Po wyłączeniu przechowywania wersji obiektów blob wszystkie istniejące wersje pozostają dostępne na koncie magazynu. Nowe wersje nie są następnie tworzone.

Po wyłączeniu przechowywania wersji modyfikowanie bieżącej wersji powoduje utworzenie obiektu blob, który nie jest wersją. Wszystkie kolejne aktualizacje obiektu blob zastępują jego dane bez zapisywania poprzedniego stanu. Wszystkie istniejące wersje są utrwalane jako poprzednie wersje.

Wersje można odczytywać lub usuwać przy użyciu identyfikatora wersji po wyłączeniu wersji. Można również wyświetlić listę wersji obiektu blob po wyłączeniu przechowywania wersji.

Replikacja obiektów zależy od przechowywania wersji obiektów blob. Aby można było wyłączyć przechowywanie wersji obiektów blob, należy usunąć wszystkie zasady replikacji obiektów na koncie. Aby uzyskać więcej informacji na temat replikacji obiektów, zobacz Replikacja obiektów dla blokowych obiektów blob.

Na poniższym diagramie pokazano, jak modyfikowanie obiektu blob po wyłączeniu wersji powoduje utworzenie obiektu blob, który nie jest w wersji. Wszystkie istniejące wersje skojarzone z obiektem blob są utrwalane.

Diagram showing that modification of a current version after versioning is disabled creates a blob that isn't a version.

Przechowywanie wersji obiektów blob i usuwanie nietrwałe

Przechowywanie wersji obiektów blob i usuwanie nietrwałe obiektów blob są częścią zalecanej konfiguracji ochrony danych dla kont magazynu. Aby uzyskać więcej informacji na temat zaleceń firmy Microsoft dotyczących ochrony danych, zobacz Zalecana konfiguracja ochrony danych w tym artykule i Omówienie ochrony danych.

Zastępowanie obiektu blob

Jeśli obsługa wersji obiektów blob i usuwanie nietrwałe obiektów blob są włączone dla konta magazynu, zastępowanie obiektu blob automatycznie tworzy nową wersję. Nowa wersja nie jest usuwana nietrwale i nie jest usuwana po wygaśnięciu okresu przechowywania usuwania nietrwałego. Nie są tworzone żadne nietrwałe migawki.

Usuwanie obiektu blob lub wersji

Jeśli obsługa wersji i usuwanie nietrwałe są włączone dla konta magazynu, po usunięciu obiektu blob bieżąca wersja obiektu blob stanie się poprzednią wersją. Nie jest tworzona żadna nowa wersja i nie są tworzone migawki usunięte nietrwale. Okres przechowywania usuwania nietrwałego nie jest w mocy dla usuniętego obiektu blob.

Usuwanie nietrwałe zapewnia dodatkową ochronę przed usuwaniem wersji obiektów blob. Po usunięciu poprzedniej wersji obiektu blob ta wersja jest usuwana nietrwale. Wersja usunięta nietrwale jest zachowywana do czasu wygaśnięcia okresu przechowywania usuwania nietrwałego, w którym momencie zostanie trwale usunięta.

Aby usunąć poprzednią wersję obiektu blob, wywołaj operację Usuń obiekt blob i określ identyfikator wersji.

Na poniższym diagramie przedstawiono, co się stanie po usunięciu obiektu blob lub wersji obiektu blob.

Diagram showing deletion of a version with soft delete enabled.

Przywracanie nietrwałej wersji

Za pomocą operacji Cofania usuwania obiektu blob można przywrócić wersje usunięte nietrwale w okresie przechowywania usuwania nietrwałego. Operacja Cofania usuwania obiektu blob zawsze przywraca wszystkie nietrwałe wersje obiektu blob. Nie można przywrócić tylko jednej nietrwałej wersji.

Przywracanie wersji usuniętych nietrwale przy użyciu operacji cofania usuwania obiektu blob nie powoduje podwyższenia poziomu żadnej wersji jako bieżącej wersji. Aby przywrócić bieżącą wersję, najpierw przywróć wszystkie wersje usunięte nietrwale, a następnie użyj operacji kopiowania obiektu blob , aby skopiować poprzednią wersję do nowej bieżącej wersji.

Na poniższym diagramie pokazano, jak przywrócić wersje obiektów blob usuniętych nietrwale za pomocą operacji Cofania obiektu blob oraz jak przywrócić bieżącą wersję obiektu blob za pomocą operacji kopiowania obiektu blob .

Diagram showing how to restore soft-deleted versions.

Po upływie okresu przechowywania usuwania nietrwałego wszystkie nietrwałe wersje obiektów blob zostaną trwale usunięte.

Przechowywanie wersji obiektów blob i migawki obiektów blob

Migawka obiektu blob to kopia obiektu blob tylko do odczytu wykonywana w określonym punkcie w czasie. Migawki obiektów blob i wersje obiektów blob są podobne, ale migawka jest tworzona ręcznie przez Ciebie lub twoją aplikację, podczas gdy wersja obiektu blob jest tworzona automatycznie podczas operacji zapisu lub usuwania po włączeniu obsługi wersji obiektów blob dla konta magazynu.

Ważne

Firma Microsoft zaleca, aby po włączeniu przechowywania wersji obiektów blob zaktualizowała również aplikację, aby zatrzymać tworzenie migawek blokowych obiektów blob. Jeśli dla konta magazynu włączono przechowywanie wersji, wszystkie blokowe aktualizacje i usunięcia obiektów blob są przechwytywane i zachowywane przez wersje. Tworzenie migawek nie oferuje żadnych dodatkowych zabezpieczeń dla danych blokowych obiektów blob, jeśli włączono przechowywanie wersji obiektów blob i może zwiększyć koszty i złożoność aplikacji.

Tworzenie migawki obiektu blob po włączeniu obsługi wersji

Chociaż nie jest to zalecane, można utworzyć migawkę obiektu blob, który jest również w wersji. Jeśli nie możesz zaktualizować aplikacji, aby zatrzymać tworzenie migawek obiektów blob podczas włączania przechowywania wersji, aplikacja może obsługiwać zarówno migawki, jak i wersje.

Podczas tworzenia migawki z wersją obiektu blob tworzona jest nowa wersja, która jest tworzona. Nowa bieżąca wersja jest również tworzona po utworzeniu migawki.

Na poniższym diagramie przedstawiono, co się stanie po utworzeniu migawki z wersjonowanego obiektu blob. Na diagramie wersje obiektów blob i migawki z identyfikatorem 2 i 3 zawierają identyczne dane.

Diagram showing snapshots of a versioned blob.

Autoryzacja operacji na wersjach obiektów blob

Dostęp do wersji obiektów blob można autoryzować przy użyciu jednej z następujących metod:

  • Za pomocą kontroli dostępu opartej na rolach (RBAC) platformy Azure w celu udzielenia uprawnień podmiotowi zabezpieczeń firmy Microsoft Entra. Firma Microsoft zaleca korzystanie z identyfikatora Entra firmy Microsoft w celu zapewnienia doskonałego bezpieczeństwa i łatwości użycia. Aby uzyskać więcej informacji na temat korzystania z identyfikatora Entra firmy Microsoft z operacjami obiektów blob, zobacz Autoryzowanie dostępu do danych w usłudze Azure Storage.
  • Za pomocą sygnatury dostępu współdzielonego (SAS) do delegowania dostępu do wersji obiektów blob. Określ identyfikator wersji dla podpisanego typu bvzasobu , reprezentującą wersję obiektu blob, aby utworzyć token SAS dla operacji w określonej wersji. Aby uzyskać więcej informacji na temat sygnatur dostępu współdzielonego, zobacz Udzielanie ograniczonego dostępu do zasobów usługi Azure Storage przy użyciu sygnatur dostępu współdzielonego (SAS).
  • Za pomocą kluczy dostępu konta do autoryzowania operacji względem wersji obiektów blob z kluczem udostępnionym. Aby uzyskać więcej informacji, zobacz Autoryzowanie za pomocą klucza wspólnego.

Przechowywanie wersji obiektów blob jest przeznaczone do ochrony danych przed przypadkowym lub złośliwym usunięciem. Aby zwiększyć ochronę, usunięcie wersji obiektu blob wymaga specjalnych uprawnień. W poniższych sekcjach opisano uprawnienia wymagane do usunięcia wersji obiektu blob.

Akcja RBAC platformy Azure w celu usunięcia wersji obiektu blob

W poniższej tabeli przedstawiono, które akcje kontroli dostępu opartej na rolach platformy Azure obsługują usuwanie obiektu blob lub wersji obiektu blob.

opis Operacja usługi Blob Service Wymagana akcja danych RBAC platformy Azure Wbudowana obsługa ról platformy Azure
Usuwanie bieżącej wersji Usuwanie obiektu blob Microsoft.Storage/storageAccounts/blobServices/containers/blobs/delete Współautor danych w usłudze Blob Storage
Usuwanie poprzedniej wersji Usuwanie obiektu blob Microsoft.Storage/storageAccounts/blobServices/containers/blobs/deleteBlobVersion/action Właściciel danych obiektu BLOB usługi Storage

Parametry sygnatury dostępu współdzielonego (SAS)

Podpisany zasób dla wersji obiektu blob to bv. Aby uzyskać więcej informacji, zobacz Tworzenie sygnatury dostępu współdzielonego usługi lub Tworzenie sygnatury dostępu współdzielonego delegowania użytkownika.

W poniższej tabeli przedstawiono uprawnienia wymagane dla sygnatury dostępu współdzielonego do usunięcia wersji obiektu blob.

Uprawnienie Symbol identyfikatora URI Dozwolone operacje
Delete x Usuń wersję obiektu blob.

Ceny i rozliczenia

Włączenie obsługi wersji obiektów blob może spowodować naliczanie dodatkowych opłat za magazyn danych na koncie. Podczas projektowania aplikacji należy pamiętać o tym, jak te opłaty mogą być naliczane, aby zminimalizować koszty.

Wersje obiektów blob, takie jak migawki obiektów blob, są rozliczane z taką samą szybkością jak aktywne dane. Sposób naliczania opłat za wersje zależy od tego, czy jawnie ustawiono warstwę dla bieżących lub poprzednich wersji obiektu blob (lub migawek). Aby uzyskać więcej informacji na temat warstw obiektów blob, zobacz Warstwy dostępu Gorąca, Chłodna, Zimna i Archiwum dla danych obiektów blob.

Jeśli nie zmieniono warstwy obiektu blob lub wersji, opłaty są naliczane za unikatowe bloki danych w tym obiekcie blob, jego wersjach i wszystkich migawek, które mogą mieć. Aby uzyskać więcej informacji, zobacz Rozliczenia, gdy warstwa obiektu blob nie została jawnie ustawiona.

Jeśli zmieniono warstwę obiektu blob lub wersji, opłaty są naliczane za cały obiekt, niezależnie od tego, czy obiekt blob i wersja są ostatecznie w tej samej warstwie ponownie. Aby uzyskać więcej informacji, zobacz Rozliczenia, gdy warstwa obiektu blob została jawnie ustawiona.

Uwaga

Włączenie przechowywania wersji dla danych, które są często zastępowane, może spowodować zwiększenie opłat za pojemność magazynu i zwiększone opóźnienie podczas wyświetlania listy operacji. Aby rozwiązać te problemy, należy przechowywać często zastępowane dane na osobnym koncie magazynu z wyłączoną obsługą wersji.

Aby uzyskać więcej informacji na temat szczegółów rozliczeń migawek obiektów blob, zobacz Migawki obiektów blob.

Rozliczenia, gdy warstwa obiektu blob nie została jawnie ustawiona

Jeśli nie ustawiono jawnie warstwy obiektu blob dla dowolnych wersji obiektu blob, opłaty są naliczane za unikatowe bloki lub strony we wszystkich wersjach i wszystkie migawki, które mogą mieć. Opłaty za dane współużytkowane w wersjach obiektów blob są naliczane tylko raz. Po zaktualizowaniu obiektu blob dane w nowej bieżącej wersji różnią się od danych przechowywanych w poprzednich wersjach, a unikatowe dane są naliczane za blok lub stronę.

Po zastąpieniu bloku w blokowym obiekcie blob ten blok jest następnie obciążany jako unikatowy blok. Jest to prawdą, nawet jeśli blok ma ten sam identyfikator bloku i te same dane, co w poprzedniej wersji. Po ponownym zatwierdzeniu bloku różni się on od jego odpowiednika w poprzedniej wersji i zostanie naliczona opłata za jego dane. To samo dotyczy strony w stronicowym obiekcie blob, który jest aktualizowany przy użyciu identycznych danych.

Usługa Blob Storage nie ma środków do określenia, czy dwa bloki zawierają identyczne dane. Każdy blok przekazany i zatwierdzony jest traktowany jako unikatowy, nawet jeśli ma te same dane i ten sam identyfikator bloku. Ponieważ opłaty są naliczane dla unikatowych bloków, ważne jest, aby pamiętać, że aktualizowanie obiektu blob podczas włączania przechowywania wersji spowoduje dodatkowe unikatowe bloki i dodatkowe opłaty.

Po włączeniu obsługi wersji obiektów blob wywołaj operacje aktualizacji blokowych obiektów blob, aby zaktualizować najmniej możliwą liczbę bloków. Operacje zapisu, które zezwalają na precyzyjną kontrolę nad blokami, to Put Block i Put Block List. Z drugiej strony operacja Put Blob zastępuje całą zawartość obiektu blob i może prowadzić do dodatkowych opłat.

W poniższych scenariuszach pokazano, jak naliczane są opłaty za blokowy obiekt blob i jego wersje, gdy warstwa obiektu blob nie została jawnie ustawiona.

Scenariusz 1

W scenariuszu 1 obiekt blob ma poprzednią wersję. Obiekt blob nie został zaktualizowany od momentu utworzenia wersji, więc opłaty są naliczane tylko dla unikatowych bloków 1, 2 i 3.

Diagram 1 showing billing for unique blocks in base blob and previous version.

Scenariusz 2

W scenariuszu 2 zaktualizowano jeden blok (blok 3 na diagramie) w obiekcie blob. Mimo że zaktualizowany blok zawiera te same dane i ten sam identyfikator, nie jest taki sam jak blok 3 w poprzedniej wersji. W związku z tym opłaty za konto są naliczane za cztery bloki.

Diagram 2 showing billing for unique blocks in base blob and previous version.

Scenariusz 3

W scenariuszu 3 obiekt blob został zaktualizowany, ale wersja nie została zaktualizowana. Blok 3 został zastąpiony blokiem 4 w bieżącym obiekcie blob, ale poprzednia wersja nadal odzwierciedla blok 3. W związku z tym opłaty za konto są naliczane za cztery bloki.

Diagram 3 showing billing for unique blocks in base blob and previous version.

Scenariusz 4

W scenariuszu 4 bieżąca wersja została całkowicie zaktualizowana i nie zawiera żadnych oryginalnych bloków. W związku z tym opłaty są naliczane za wszystkie osiem unikatowych bloków — cztery w bieżącej wersji i cztery połączone w dwóch poprzednich wersjach. Ten scenariusz może wystąpić, jeśli zapisujesz w obiekcie blob operację Put Blob , ponieważ zastępuje całą zawartość obiektu blob.

Diagram 4 showing billing for unique blocks in base blob and previous version.

Rozliczenia, gdy warstwa obiektu blob została jawnie ustawiona

Jeśli jawnie ustawiono warstwę obiektu blob dla obiektu blob lub wersji (lub migawki), opłata jest naliczana za pełną długość zawartości obiektu w nowej warstwie, niezależnie od tego, czy współużytkuje bloki z obiektem w oryginalnej warstwie. Opłata jest również naliczana za pełną długość zawartości najstarszej wersji w oryginalnej warstwie. Wszelkie inne poprzednie wersje lub migawki, które pozostają w oryginalnej warstwie, są naliczane opłaty za unikatowe bloki, które mogą być udostępniane, zgodnie z opisem w temacie Rozliczenia, gdy warstwa obiektu blob nie została jawnie ustawiona.

Przenoszenie obiektu blob do nowej warstwy

W poniższej tabeli opisano zachowanie rozliczeń dla obiektu blob lub wersji po przeniesieniu do nowej warstwy.

Po ustawieniu warstwy obiektów blob... Następnie są naliczane opłaty za...
Jawnie w wersji, niezależnie od tego, czy jest to bieżąca, czy poprzednia Pełna długość zawartości tej wersji. Wersje, które nie mają jawnie ustawionej warstwy, są rozliczane tylko dla unikatowych bloków.1
Aby zarchiwizować Pełna długość zawartości wszystkich wersji i migawek.1.

1Jeśli istnieją inne poprzednie wersje lub migawki, które nie zostały przeniesione z oryginalnej warstwy, te wersje lub migawki są naliczane na podstawie liczby unikatowych bloków, które zawierają, zgodnie z opisem w sekcji Rozliczenia, gdy warstwa obiektu blob nie została jawnie ustawiona.

Na poniższym diagramie pokazano, jak obiekty są rozliczane po przeniesieniu wersji obiektu blob do innej warstwy.

Diagram showing how objects are billed when a versioned blob is explicitly tiered.

Jawne ustawienie warstwy dla obiektu blob, wersji lub migawki nie może zostać cofnięte. Jeśli przeniesiesz obiekt blob do nowej warstwy, a następnie przeniesiesz go z powrotem do oryginalnej warstwy, opłata jest naliczana za pełną długość zawartości obiektu, nawet jeśli współużytkuje bloki z innymi obiektami w oryginalnej warstwie.

Operacje, które jawnie ustawiają warstwę obiektu blob, wersji lub migawki, obejmują:

Usuwanie obiektu blob po włączeniu usuwania nietrwałego

Po włączeniu usuwania nietrwałego obiektu blob wszystkie jednostki usunięte nietrwale są rozliczane przy pełnej długości zawartości. Jeśli usuniesz lub zastąpisz bieżącą wersję, która ma jawnie ustawioną warstwę, wszystkie poprzednie wersje nietrwałego obiektu blob będą rozliczane przy pełnej długości zawartości. Aby uzyskać więcej informacji na temat współdziałania wersji obiektów blob i usuwania nietrwałego, zobacz Przechowywanie wersji obiektów blob i usuwanie nietrwałe.

Obsługa funkcji

Może to mieć wpływ na obsługę tej funkcji przez włączenie protokołu Data Lake Storage Gen2, sieciowego systemu plików (NFS) 3.0 lub protokołu SSH File Transfer Protocol (SFTP). Jeśli włączono dowolną z tych funkcji, zobacz Obsługa funkcji usługi Blob Storage na kontach usługi Azure Storage, aby ocenić obsługę tej funkcji.

Przechowywanie wersji nie jest obsługiwane w przypadku obiektów blob przekazywanych przy użyciu interfejsów API usługi Data Lake Storage Gen2 .

Zobacz też