Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln visar hur du aktiverar Snowflake-federation med hjälp av katalogfederation. Med katalogfederation kan Unity Catalog-frågor köras direkt mot fillagring, vilket ger bättre prestanda och kostnadseffektivitet jämfört med frågefederation.
Med katalogfederation kommer Unity Catalog direkt åt den externa tabellen i objektlagring. Frågan körs endast med Databricks-beräkning, vilket är mer kostnadseffektivt och prestandaoptimerad.
Både katalogfederation och frågefederation förlitar sig på samma autentiseringsmetoder för att konfigurera anslutningen:
- Inbyggd OAuth i Snowflake
- OAuth med Microsoft Entra-ID
- OAuth med Okta
- OAuth-åtkomsttoken
- PRIVAT PEM-nyckel
- Grundläggande autentisering (användarnamn/lösenord)
Innan du börjar
Du måste uppfylla följande krav för att köra federerade frågor på Snowflake med hjälp av katalogfederation:
Krav för arbetsyta:
- Arbetsytan är aktiverad för Unity Catalog.
Beräkningskrav:
- Nätverksanslutning från beräkningsresursen till måldatabassystemen. Se Nätverksrekommendationer för Lakehouse Federation.
- Azure Databricks-beräkning måste använda Databricks Runtime 13.3 LTS eller senare och standard - eller dedikerat åtkomstläge.
- SQL-lager måste vara pro eller serverlösa och måste använda 2023.40 eller senare.
Behörigheter som krävs:
- Om du vill skapa en anslutning måste du vara metaarkivadministratör eller användare med
CREATE CONNECTIONbehörighet i Unity Catalog-metaarkivet som är kopplat till arbetsytan. - Om du vill skapa en extern katalog måste du ha behörigheten
CREATE CATALOGi metaarkivet och antingen vara ägare till anslutningen eller haCREATE FOREIGN CATALOGbehörighet för anslutningen.
Ytterligare tillståndskrav specificeras i varje uppgiftsbaserad sektion som följer.
- Använd Databricks Runtime 16.4 LTS eller senare eller Databricks SQL.
Konfigurera katalogfederation
De allmänna stegen för att konfigurera katalogfederation liknar konfigurationen av frågefederation: skapa en anslutning till Snowflake först och skapa och konfigurera sedan en sekundär katalog. Men du måste också skapa en lagringsautentiseringsuppgift och en extern plats för sökvägarna till Apache Iceberg-tabellerna som är registrerade i Snowflake.
Skapa en extern plats för Iceberg-tabeller.
Du måste konfigurera en extern plats i Unity Catalog för att styra åtkomsten till de molnlagringsplatser som innehåller isbergstabellerna som är registrerade i snowflake-databasen. Externa platser är skyddsbara objekt i Unity Catalog som associerar lagringsautentiseringsuppgifter med lagringsvägar för molnlagring. Se Översikt över externa platser.
Du kan skapa en extern plats med hjälp av följande gränssnitt:
Den externa platsen anges som en auktoriserad sökväg under konfigurationen av den externa katalogen.
Skapa en anslutning till Snowflake Horizon Catalog och skapa en sekundär katalog med någon av de autentiseringsmetoder som anges ovan. Du måste ange en plats i molnlagringen där metadata ska lagras för Iceberg-tabeller i den här katalogen.
Om du konfigurerar en lagringsplats i katalogen kan du läsa Iceberg-tabeller i en extern katalog via objektlagring. Läsning eller skrivning till Isbergstabeller via JDBC-protokollet kommer inte längre att vara tillgängligt (icke-isbergstabeller påverkas inte).
Du måste också lägga till auktoriserade sökvägar, de molnlagringssökvägar som kan nås via katalogen. Endast tabeller som faller under dessa sökvägar kan efterfrågas via den federerade katalogen. Sökvägar måste täckas av externa platser.
Begränsningar för katalogfederation
Att köra federerade frågor på Snowflake med hjälp av katalogfederationen har följande begränsningar:
- Vissa isbergstabeller kan endast läsas med hjälp av frågefederation.
- Tabeller med URI-inkompatibla platser (som innehåller specialtecken).
- Tabeller med metadataplats utanför tabellplatsen.
- Tabeller med platser som har scheman som inte stöds (endast
s3,s3a,s3n,abfs,abfss,gs,r2,wasbochwasbsstöds).
- Utländska isbergstabeller som nås från externa motorer måste uppdateras med hjälp av
REFRESH FOREIGN TABLE <table_name>för att säkerställa läs-/skrivkonsekvens mellan skrivningar till den externa katalogen och läsningar med Unity Catalog. - Tabeller med identiska namn, ignorera skiftläge, konflikt. Den första tabellen som ska läsas in är den som visas.
- För Azure kan Snowflake Iceberg-tabeller inte finnas på containerns rotplats.
Se Begränsningar för isbergstabeller för isbergsrelaterade begränsningar.
Avgöra om en utländsk Snowflake-tabell använder katalog- eller frågefederation
Utländska Snowflake-tabeller som läse med katalogfederation visar källformatet Iceberg i Katalogutforskaren. Isbergstabeller som läse med hjälp av frågefederation visar Snowflake-källformatet i Katalogutforskaren. Frågor som körs mot tabeller med båda lagringsformaten körs med hjälp av frågefederation, som använder Snowflake-beräkning.
Återställningsläge
När du kör frågor mot en tabell i en federerad Snowflake-katalog försöker Databricks automatiskt läsa tabellen Iceberg direkt från molnlagringen för optimal prestanda. Om tabellen inte uppfyller kriterierna för direkt åtkomst återgår Databricks till att federera frågan till Snowflake med JDBC. I följande tabell beskrivs frågematchningsflödet:
| Frågematchningssteg | Description |
|---|---|
| Katalogidentifiering | Under frågeplaneringen kontrollerar Databricks Runtime med Unity Catalog och identifierar att tabellen finns i en snowflake-federerad katalog. |
| Snowflake-metadatamatchning | Med anslutning till Unity Catalog utfärdar Databricks Runtime frågor till Snowflake för att:
|
| Direktåtkomstförsök | Om något av följande villkor misslyckas federerar Databricks Runtime frågan med hjälp av Snowflake JDBC-drivrutinen. Tabellen visar Snowflake-källformatet i Katalogutforskaren.
Om alla kriterier uppfylls kontrollerar Databricks Runtime de returnerade metadata och läser tabellen Iceberg direkt från objektlagringssökvägen. Tabellen visar iceberg-källformatet i Katalogutforskaren. |