Udostępnij za pośrednictwem


Monitorowanie i zarządzanie kosztami ruchu wychodzącego w Delta Sharing (dla dostawców)

W tym artykule opisano narzędzia, których można użyć do monitorowania kosztów ruchu wychodzącego dostawcy chmury i zarządzania nimi podczas udostępniania danych i zasobów sztucznej inteligencji przy użyciu funkcji udostępniania różnicowego.

W przeciwieństwie do innych platform udostępniania danych udostępnianie różnicowe nie wymaga replikacji danych. Ten model ma wiele zalet, ale oznacza to, że dostawca chmury może pobierać opłaty za ruch wychodzący podczas udostępniania danych w chmurach lub regionach. Jeśli używasz funkcji Delta Sharing do udostępniania danych i zasobów sztucznej inteligencji w regionie, nie ponosisz żadnych kosztów ruchu wychodzącego.

Aby monitorować opłaty za ruch wychodzący i zarządzać nimi, usługa Databricks zapewnia:

Replikowanie danych w celu uniknięcia kosztów ruchu wychodzącego

Jednym z podejść do unikania kosztów ruchu wychodzącego jest utworzenie i zsynchronizowanie lokalnych replik udostępnionych danych w regionach, z których korzystają ich adresaci. Innym podejściem jest sklonowanie udostępnionych danych do lokalnych regionów w celu aktywnego wykonywania zapytań oraz skonfigurowanie synchronizacji między udostępnioną tabelą a klonem lokalnym. W tej sekcji omówiono wiele wzorców replikacji.

Używanie głębokiego klonowania różnicowego na potrzeby replikacji przyrostowej

Dostawcy mogą używać DEEP CLONE do replikowania tabel Delta do lokalizacji zewnętrznych w regionach, które wspólnie udostępniają. Głębokie klony kopiują dane i metadane tabeli źródłowej do klonu docelowego. Głębokie klony umożliwiają również aktualizacje przyrostowe, identyfikując nowe dane w tabeli źródłowej i odświeżając odpowiednio obiekt docelowy.

CREATE TABLE [IF NOT EXISTS] table_name DEEP CLONE source_table_name
   [TBLPROPERTIES clause] [LOCATION path];

Można zaplanować zadanie Databricks, aby przyrostowo odświeżyć dane tabeli docelowej za pomocą najnowszych aktualizacji w tabeli udostępnionej przy użyciu następującego polecenia:

CREATE OR REPLACE TABLE table_name DEEP CLONE source_table_name;

Zobacz Jak sklonować tabelę w Azure Databricks oraz Przegląd orkiestracji w Databricks.

Włącz strumień danych zmian (CDF) w tabelach udostępnionych dla replikacji przyrostowej

Gdy tabela jest udostępniana wraz z jej CDF, odbiorca może uzyskać dostęp do zmian i scalić je z lokalną kopią tabeli, w której użytkownicy wykonują zapytania. W tym scenariuszu dostęp adresata do danych nie przekracza granic regionów, a ruch wychodzący jest ograniczony do odświeżania kopii lokalnej. Jeśli adresat znajduje się w usłudze Databricks, może użyć zadania przepływu pracy usługi Databricks, aby propagować zmiany do repliki lokalnej.

Aby udostępnić tabelę CDF, musisz włączyć usługę CDF w tabeli i udostępnić ją WITH HISTORY.

Aby uzyskać więcej informacji na temat korzystania z usługi CDF, zobacz Użyj kanału zmiany danych Delta Lake w Azure Databricks i Dodaj tabele do udostępnienia.

Używanie replik Cloudflare R2 lub migrowanie magazynu do wersji R2

Magazyn obiektów Cloudflare R2 nie ponosi opłat za ruch wychodzący. Replikowanie lub migrowanie danych udostępnianych w usłudze R2 umożliwia udostępnianie danych przy użyciu funkcji Delta Sharing bez ponoszenia opłat za ruch wychodzący. W tej sekcji opisano sposób replikowania danych do lokalizacji R2 i włączania aktualizacji przyrostowych z tabel źródłowych.

Wymagania

  • Obszar roboczy usługi Databricks jest włączony do Unity Catalog.
  • Databricks Runtime 14.3 lub nowszy albo SQL Warehouse 2024.15 lub nowszy.
  • Konto cloudflare. Zobacz: https://dash.cloudflare.com/sign-up.
  • Rola administratora cloudflare R2. Zapoznaj się z dokumentacją ról cloudflare.
  • CREATE STORAGE CREDENTIAL uprawnienie do repozytorium metadanych Unity Catalog przypisanego do obszaru roboczego. Administratorzy kont i administratorzy magazynu metadanych mają domyślnie te uprawnienia.
  • CREATE EXTERNAL LOCATION uprawnienie zarówno w magazynie metadanych, jak i poświadczeniu magazynu, do którego odwołuje się lokalizacja zewnętrzna. Administratorzy magazynu metadanych mają domyślnie te uprawnienia.
  • CREATE MANAGED STORAGE uprawnienia w lokalizacji zewnętrznej.
  • CREATE CATALOG w magazynie metadanych. Administratorzy magazynu metadanych mają domyślnie te uprawnienia.

Ograniczenia dotyczące platformy Cloudflare R2

Dostawcy nie mogą udostępniać tabel R2, które wykorzystują klastrowanie płynne i punkt kontrolny V2.

Instalowanie zasobnika R2 jako lokalizacji zewnętrznej w usłudze Azure Databricks

  1. Utwórz zasobnik Cloudflare R2.

    Zobacz Konfigurowanie zasobnika R2.

  2. Utwórz dane uwierzytelniające w Unity Catalog, które uprawniają do dostępu do kubełka R2.

    Zobacz Tworzenie poświadczeń magazynu.

  3. Użyj poświadczeń danych, aby utworzyć lokalizację zewnętrzną w Unity Catalog.

    Zobacz Tworzenie lokalizacji zewnętrznej w celu połączenia magazynu w chmurze z usługą Azure Databricks.

Tworzenie nowego wykazu przy użyciu lokalizacji zewnętrznej

Utwórz wykaz, który używa nowej lokalizacji zewnętrznej jako zarządzanej lokalizacji magazynu.

Zobacz Tworzenie katalogów.

Podczas tworzenia wykazu wykonaj następujące czynności:

Eksplorator wykazu

  • Wybierz typ wykazu Standard.
  • W obszarze Lokalizacja przechowywaniawybierz pozycję Wybierz lokalizację przechowywania i wprowadź ścieżkę do zasobnika R2 zdefiniowanego jako lokalizacja zewnętrzna. Na przykład r2://mybucket@my-account-id.r2.cloudflarestorage.com

SQL

Użyj ścieżki do zasobnika R2 zdefiniowanego jako lokalizacja zewnętrzna. Na przykład:

  CREATE CATALOG IF NOT EXISTS my-r2-catalog
    MANAGED LOCATION 'r2://mybucket@my-account-id.r2.cloudflarestorage.com'
    COMMENT 'Location for managed tables and volumes to share using Delta Sharing';

Sklonuj dane, które chcesz udostępnić do tabeli w nowym wykazie

Użyj DEEP CLONE, aby replikować tabele w Azure Data Lake Storage Gen2 do nowego katalogu, który używa R2 do zarządzanego przechowywania. Głębokie klony kopiują dane i metadane tabeli źródłowej do klonu docelowego. Głębokie klony umożliwiają również aktualizacje przyrostowe, identyfikując nowe dane w tabeli źródłowej i odświeżając odpowiednio obiekt docelowy.

CREATE TABLE IF NOT EXISTS new_catalog.schema1.new_table DEEP CLONE old_catalog.schema1.source_table
  LOCATION 'r2://mybucket@my-account-id.r2.cloudflarestorage.com';

Zadanie usługi Databricks można zaplanować w celu przyrostowego odświeżania danych tabeli docelowej przy użyciu ostatnich aktualizacji w tabeli źródłowej przy użyciu następującego polecenia:

CREATE OR REPLACE TABLE new_catalog.schema1.new_table DEEP CLONE old_catalog.schema1.source_table;

Zobacz Klonowanie tabeli w Azure Databricks oraz Omówienie orkiestracji na platformie Databricks.

Udostępnianie nowej tabeli

Podczas tworzenia udostępnienia dodaj tabele, które znajdują się w nowym katalogu, przechowywane w R2. Proces jest taki sam jak dodawanie dowolnej tabeli do zasobu.

Zobacz Tworzenie udziałów i zarządzanie nimi w ramach Delta Sharing.