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óre można wykorzystać do monitorowania i zarządzania kosztami ruchu wychodzącego dostawcy chmury podczas udostępniania danych i zasobów AI za pomocą funkcji Delta Sharing.

W przeciwieństwie do innych platform udostępniania danych, Delta Sharing 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ć i zarządzać opłatami za ruch wychodzący, Databricks oferuje:

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 Delta do replikacji przyrostowej

Dostawcy mogą używać DEEP CLONE do replikowania tabel Delta do lokalizacji zewnętrznych w regionach, które wspólnie wykorzystują. 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 Klonowanie tabeli w Azure Databricks oraz Przegląd orkiestracji na 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 w Databricks, aby propagować zmiany do repliki lokalnej.

Aby udostępnić tabelę z CDF, musisz włączyć usługę CDF w tabeli i ją udostępnić 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żyj replik Cloudflare R2 lub zmigruj magazyn do R2

Magazyn obiektów Cloudflare R2 nie nalicza opłat za ruch wychodzący. Replikowanie lub migrowanie danych, które udostępniasz do R2, umożliwia udostępnianie danych za pomocą Delta Sharing bez ponoszenia opłat za ruch wychodzący. Nie dotyczy to jednak udostępniania widoku, co może nadal wiązać się z kosztami przesyłu danych. 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 do magazynu metadanych, jak i do poświadczenia magazynu, na które referuje lokalizacja zewnętrzna. Administratorzy magazynu metadanych mają domyślnie te uprawnienia.
  • CREATE MANAGED STORAGE uprawnienia dotyczące 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 Utwórz poświadczenie magazynu.

  3. Użyj poświadczeń magazynowania, 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, który zdefiniowałeś jako lokalizację zewnętrzną. 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 Jak sklonować tabelę w Azure Databricks oraz Przegląd orkiestracji w Databricks.

Udostępnianie nowej tabeli

Podczas tworzenia udostępnienia dodaj tabele, które znajdują się w nowym katalogu i są 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.