Övervaka och hantera utgående kostnader för deltadelning (för leverantörer)

Den här artikeln beskriver verktyg som du kan använda för att övervaka och hantera utgående kostnader för molnleverantörer när du delar data och AI-tillgångar med deltadelning.

Till skillnad från andra datadelningsplattformar kräver Delta-delning inte datareplikering. Den här modellen har många fördelar, men det innebär att molnleverantören kan ta ut avgifter för utgående data när du delar data mellan moln eller regioner. Om du använder DeltaDelning för att dela data och AI-tillgångar inom en region medför du ingen utgående kostnad.

För att övervaka och hantera utgående avgifter tillhandahåller Databricks:

Replikera data för att undvika utgående kostnader

En metod för att undvika utgående kostnader är att leverantören skapar och synkroniserar lokala repliker av delade data i regioner som mottagarna använder. En annan metod är att mottagare klonar delade data till lokala regioner för aktiv frågekörning och konfigurerar synkroniseringar mellan den delade tabellen och den lokala klonen. I det här avsnittet beskrivs ett antal replikeringsmönster.

Använda Delta deep clone för inkrementell replikering

Leverantörer kan använda DEEP CLONE för att replikera Delta-tabeller till externa platser i de regioner som de delar till. Djupa kloner kopierar källtabelldata och metadata till klonmålet. Djupa kloner möjliggör också inkrementella uppdateringar genom att identifiera nya data i källtabellen och uppdatera målet i enlighet med detta.

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

Du kan schemalägga ett Databricks-jobb för att uppdatera måltabelldata stegvis med de senaste uppdateringarna i den delade tabellen med hjälp av följande kommando:

CREATE OR REPLACE TABLE table_name DEEP CLONE source_table_name;

Se Klona en tabell i Azure Databricks och Schemalägg och samordna arbetsflöden.

Aktivera ändringsdataflöde (CDF) i delade tabeller för inkrementell replikering

När en tabell delas med dess CDF kan mottagaren komma åt ändringarna och sammanfoga dem till en lokal kopia av tabellen, där användarna utför frågor. I det här scenariot går mottagarens åtkomst till data inte över regiongränserna och utgående är begränsad till att uppdatera en lokal kopia. Om mottagaren finns på Databricks kan de använda ett Databricks-arbetsflödesjobb för att sprida ändringar till en lokal replik.

Om du vill dela en tabell med CDF måste du aktivera CDF i tabellen och dela den WITH HISTORY.

Mer information om hur du använder CDF finns i Använda Delta Lake-ändringsdataflöde i Azure Databricks och Lägg till tabeller i en resurs.

Använda Cloudflare R2-repliker eller migrera lagring till R2

Cloudflare R2-objektlagring medför inga utgående avgifter. Genom att replikera eller migrera data som du delar till R2 kan du dela data med deltadelning utan att behöva betala utgående avgifter. I det här avsnittet beskrivs hur du replikerar data till en R2-plats och aktiverar inkrementella uppdateringar från källtabeller.

Krav

  • Databricks-arbetsytan är aktiverad för Unity Catalog.
  • Databricks Runtime 14.3 eller senare eller SQL Warehouse 2024.15 eller senare.
  • Cloudflare-konto. Se https://dash.cloudflare.com/sign-up.
  • Cloudflare R2-administratörsroll. Se dokumentationen om Cloudflare-roller.
  • CREATE STORAGE CREDENTIAL behörighet på Unity Catalog-metaarkivet som är kopplat till arbetsytan. Kontoadministratörer och metaarkivadministratörer har den här behörigheten som standard.
  • CREATE EXTERNAL LOCATION behörighet för både metaarkivet och lagringsautentiseringsuppgifterna som refereras till på den externa platsen. Metaarkivadministratörer har den här behörigheten som standard.
  • CREATE MANAGED STORAGE behörighet på den externa platsen.
  • CREATE CATALOG på metaarkivet. Metaarkivadministratörer har den här behörigheten som standard.

Montera en R2-bucket som en extern plats i Azure Databricks

  1. Skapa en Cloudflare R2-bucket.

    Se Konfigurera en R2-bucket.

  2. Skapa en lagringsautentiseringsuppgift i Unity Catalog som ger åtkomst till R2-bucketen.

    Se Skapa lagringsautentiseringsuppgifterna.

  3. Använd lagringsautentiseringsuppgifterna för att skapa en extern plats i Unity Catalog.

    Se Skapa en extern plats för att ansluta molnlagring till Azure Databricks.

Skapa en ny katalog med hjälp av den externa platsen

Skapa en katalog som använder den nya externa platsen som sin hanterade lagringsplats.

Se Skapa kataloger.

Gör följande när du skapar katalogen:

Katalogutforskaren

  • Välj en standardkatalogtyp .
  • Under Lagringsplats väljer du Välj en lagringsplats och anger sökvägen till R2-bucketen som du definierade som en extern plats. Till exempel: r2://mybucket@my-account-id.r2.cloudflarestorage.com

SQL

Använd sökvägen till R2-bucketen som du definierade som en extern plats. Till exempel:

  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';

Klona de data som du vill dela till en tabell i den nya katalogen

Använd DEEP CLONE för att replikera tabeller i Azure Data Lake Storage Gen2 till den nya katalogen som använder R2 för hanterad lagring. Djupa kloner kopierar källtabelldata och metadata till klonmålet. Djupa kloner möjliggör också inkrementella uppdateringar genom att identifiera nya data i källtabellen och uppdatera målet i enlighet med detta.

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';

Du kan schemalägga ett Databricks-jobb för att uppdatera måltabelldata stegvis med de senaste uppdateringarna i källtabellen med hjälp av följande kommando:

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

Se Klona en tabell i Azure Databricks och Schemalägg och samordna arbetsflöden.

Dela den nya tabellen

När du skapar resursen lägger du till tabellerna som finns i den nya katalogen, lagrade i R2. Processen är densamma som att lägga till en tabell i en resurs.

Se Skapa och hantera resurser för deltadelning.