Udostępnij przez


Co to jest Delta Sharing?

Na tej stronie przedstawiono udostępnianie funkcji delta w usłudze Azure Databricks— bezpieczną platformę do udostępniania danych i zasobów sztucznej inteligencji w usłudze Azure Databricks użytkownikom spoza organizacji, niezależnie od tego, czy korzystają z usługi Azure Databricks. Delta Sharing jest również podstawą witryny Databricks Marketplace, otwartego forum do wymiany produktów danych i Clean Rooms, bezpiecznego i chroniącego prywatność środowiska, w którym wiele stron może współpracować nad poufnymi danymi przedsiębiorstwa.

Delta Sharing jest również dostępne jako projekt typu open source, którego można użyć do udostępniania Tabel Delta z innych platform.

Jak działa Delta Sharing?

Usługa Delta Sharing to otwarty protokół opracowany przez usługę Databricks na potrzeby bezpiecznego udostępniania danych innym organizacjom niezależnie od używanych platform obliczeniowych.

Istnieje kilka sposobów udostępniania danych przy użyciu Delta Sharing:

  1. Protokół Databricks-to-Databricks, który umożliwia udostępnianie danych i zasobów AI z obszaru roboczego obsługiwanego przez Unity Catalog użytkownikom, posiadającym również dostęp do środowiska Databricks z obsługą Unity Catalog.

    To podejście korzysta z serwera Delta Sharing wbudowanego w Azure Databricks. Obsługuje niektóre funkcje udostępniania Delta, które nie są obsługiwane w innych protokołach, w tym udostępnianie notesów, udostępnianie woluminów Unity Catalog, udostępnianie modelu AI Unity Catalog, zarządzanie danymi w Unity Catalog, a także inspekcja i śledzenie użycia zarówno dla dostawców, jak i adresatów. Integracja z Unity Catalog upraszcza konfigurowanie i zarządzanie zarówno dla dostawców, jak i odbiorców oraz poprawia wydajność.

    Zobacz Udostępnianie danych przy użyciu protokołu Delta Sharing Databricks-to-Databricks (dla dostawców).

  2. Otwarty protokół udostępniania usługi Databricks, który umożliwia udostępnianie danych tabelarycznych, którymi zarządzasz w obszarze roboczym Databricks z włączonym Unity Catalog, użytkownikom na dowolnej platformie obliczeniowej.

    To podejście korzysta z serwera Delta Sharing wbudowanego w Azure Databricks i jest przydatne podczas zarządzania danymi za pomocą Unity Catalog oraz udostępniania ich użytkownikom, którzy nie korzystają z Databricks lub nie mają dostępu do obszaru roboczego Databricks z włączonym Unity Catalog. Integracja z Unity Catalog po stronie dostawcy upraszcza konfigurację i zarządzanie dla dostawców.

    Zobacz Protokoł Delta Sharing do otwartego udostępniania danych (dla dostawców).

  3. Implementacja zarządzana przez klienta serwera Delta Sharing typu open source, która umożliwia udostępnianie z dowolnej platformy na dowolną platformę, niezależnie od tego, czy jest to Databricks, czy nie.

    Dokumentacja usługi Azure Databricks nie obejmuje instrukcji dotyczących konfigurowania własnego serwera Delta Sharing. Zobacz github.com/delta-io/delta-sharing.

  4. Łącznik SAP Business Data Cloud (BDC) dla usługi Azure Databricks, który umożliwia udostępnianie danych między obszarem roboczym obsługującym Unity Catalog i kontem SAP BDC.

    Podejście to wykorzystuje łącznik SAP BDC, który używa funkcjonalności Delta Sharing dla dostępu na żywo, bez kopiowania do produktów danych SAP BDC.

    Zobacz Co to jest łącznik SAP BDC dla Azure Databricks?.

Architektura dostępu do danych Delta Sharing.

Zasoby, dostawcy i odbiorcy

Podstawowe pojęcia dotyczące Delta Sharing w usłudze Azure Databricks to udziały, dostawcy i odbiorcy.

Co to jest udział?

W systemie Delta Sharing, udostępniony zasób jest kolekcją tabel i partycji tabel tylko do odczytu, którą dostawca chce udostępnić jednemu lub większej liczbie odbiorców. Jeśli odbiorca korzysta z obszaru roboczego usługi Databricks z włączoną obsługą Unity Catalog, możesz również dołączyć pliki notesu, widoki (w tym widoki dynamiczne ograniczające dostęp na poziomie wiersza i kolumny), woluminy Unity Catalog i modele Unity Catalog w ramach udostępniania.

W dowolnym momencie można dodawać lub usuwać tabele, tabele przesyłania strumieniowego, zarządzane tabele Iceberg, widoki, zmaterializowane widoki, woluminy, modele i pliki notesów z udziału, a także przypisywać lub odwoływać dostęp dla odbiorców danych do udziału w dowolnym momencie.

W obszarze roboczym Azure Databricks obsługującym Unity Catalog, zasób jest obiektem zabezpieczonym zarejestrowanym w Unity Catalog. Jeśli usuniesz udostępnienie z metasklepu Unity Catalog, wszyscy jego odbiorcy utracą możliwość dostępu do niego.

Zobacz Tworzenie i zarządzanie udziałami dla Delta Sharing.

Co to jest dostawca?

Dostawca to jednostka, która udostępnia dane adresatowi. Jeśli jesteś dostawcą i chcesz korzystać z wbudowanego serwera Databricks Delta Sharing oraz zarządzać udziałami i adresatami przy użyciu Unity Catalog, potrzebujesz co najmniej jednego obszaru roboczego usługi Azure Databricks z włączoną obsługą Unity Catalog. Nie trzeba migrować wszystkich istniejących obszarów roboczych do Unity Catalogu. Możesz po prostu utworzyć nowy obszar roboczy z obsługą Unity Catalog dla potrzeb Delta Sharing.

Jeśli adresat znajduje się w obszarze roboczym usługi Databricks z obsługą Unity Catalog, dostawca jest również obiektem podlegającym zabezpieczeniu Unity Catalog, który reprezentuje organizację dostawcy i kojarzy tę organizację z zestawem udziałów.

Kim jest odbiorca?

Odbiorca to jednostka, która odbiera udziały od dostawcy. W Unity Catalogu, udział jest zabezpieczanym obiektem, który reprezentuje organizację i kojarzy ją z poświadczeniem lub bezpiecznym identyfikatorem udostępniania, umożliwiającym tej organizacji dostęp do jednego lub więcej udziałów.

Jako dostawca danych (udzielający dostępu), można zdefiniować wielu adresatów dla dowolnego magazynu metadanych Unity Catalog, ale jeśli chcesz udostępniać dane z wielu magazynów metadanych określonemu użytkownikowi lub grupie, musisz zdefiniować adresata oddzielnie dla każdego magazynu metadanych. Odbiorca może mieć dostęp do wielu udziałów.

Jeśli dostawca usunie adresata z metastore'u katalogu Unity, odbiorca utraci dostęp do wszystkich udziałów, do których wcześniej mógł uzyskać dostęp.

Zobacz Tworzenie adresatów danych i zarządzanie nimi na potrzeby udostępniania usługi Delta (udostępnianie usługi Databricks-to-Databricks).

Otwarte udostępnianie w porównaniu z udostępnianiem Databricks do Databricks

W tej sekcji opisano dwa protokoły udostępniania z obszaru roboczego usługi Databricks, w którym jest włączony Unity Catalog.

Note

W tej sekcji założono, że dostawca znajduje się w obszarze roboczym usługi Azure Databricks z włączoną obsługą Unity Catalog. Aby dowiedzieć się więcej na temat konfigurowania serwera Delta Sharing typu open-source do udostępniania z platformy innej niż Databricks lub obszaru roboczego nienależącego do Unity Catalog, zobacz github.com/delta-io/delta-sharing.

Sposób, w jaki dostawca korzysta z funkcji delta sharing w usłudze Azure Databricks, zależy od tego, z kim udostępniają dane:

  • Otwarte udostępnianie umożliwia udostępnianie danych dowolnego użytkownika, niezależnie od tego, czy mają dostęp do usługi Azure Databricks.
  • Udostępnianie Databricks-to-Databricks umożliwia udostępnianie danych użytkownikom Azure Databricks, których obszar roboczy jest połączony z katalogiem metadanych Unity Catalog innym niż Twój. Usługa Databricks-to-Databricks obsługuje również udostępnianie notesów, woluminów i modeli, co nie jest dostępne w udostępnianiu otwartym.

Co to jest otwarte Delta Sharing?

Jeśli chcesz udostępniać dane użytkownikom spoza obszaru roboczego usługi Azure Databricks, niezależnie od tego, czy korzystają z usługi Databricks, możesz bezpiecznie udostępniać dane za pomocą open Delta Sharing. Jako dostawca danych zarządzasz uwierzytelnianiem za pomocą adresata udostępniania przy użyciu jednej z następujących metod:

  • Generujesz długoterminowy token uwierzytelniający i bezpiecznie udostępniasz go odbiorcy. Używają tokenu do uwierzytelniania i uzyskiwania dostępu do odczytu do tabel uwzględnionych w udziałach, do których udzielono im dostępu.
  • Używasz federacji Open ID Connect (OIDC), przekazując krótkotrwałe tokeny OAuth usługi Databricks odbiorcy w zamian za tokeny JWT, które dostawca tożsamości odbiorcy przesyła do usługi Databricks.

Adresaci mogą uzyskiwać dostęp do udostępnionych danych przy użyciu wielu narzędzi obliczeniowych i platform, w tym:

  • Azure Databricks
  • Apache Spark
  • Pandas
  • Power BI

Pełną listę łączników Delta Sharing oraz informacje o sposobie ich użycia można znaleźć w dokumentacji.

Zobacz też Udostępnianie danych przy użyciu otwartego protokołu Delta Sharing (dla dostawców).

Czym jest Databricks-to-Databricks Delta Sharing?

Jeśli chcesz udostępnić dane użytkownikom, którzy mają obszar roboczy Databricks z włączoną funkcją Unity Catalog, możesz użyć Databricks-to-Databricks Delta Sharing. Udostępnianie danych z usługi Databricks do usługi Databricks umożliwia udostępnianie danych użytkownikom na innych kontach usługi Databricks, niezależnie od tego, czy są one na platformie AWS, platformie Azure, czy platformie GCP. Jest to również doskonały sposób bezpiecznego udostępniania danych w różnych metastorach Unity Catalog na własnym koncie Databricks. Należy pamiętać, że nie ma potrzeby używania Delta Sharing do udostępniania danych między obszarami roboczymi dołączonymi do tego samego metastore katalogu Unity, ponieważ w tym scenariuszu można użyć samego katalogu Unity do zarządzania dostępem do danych w obrębie obszarów roboczych.

Jedną z zalet udostępniania usługi Databricks-to-Databricks jest to, że odbiorca udziału nie potrzebuje tokenu dostępu do udziału, a dostawca nie musi zarządzać tokenami adresatów. Zabezpieczenie połączenia udostępniania — w tym wszystkie weryfikacje tożsamości, uwierzytelnianie i audyt — jest zarządzane całkowicie za pośrednictwem funkcji Delta Sharing i platformy Databricks. Kolejną zaletą jest możliwość udostępniania plików notesów Databricks, woluminów Unity Catalog i modeli Unity Catalog.

Zobacz również Udostępnianie danych przy użyciu protokołu Delta Sharing Databricks-to-Databricks (dla dostawców).

Jak administratorzy usługodawców ustawiają Delta Sharing?

Ta sekcja zawiera omówienie sposobu, w jaki dostawcy mogą włączać Delta Sharing i inicjować udostępnianie z obszaru roboczego Azure Databricks z włączonym katalogiem Unity. Aby uzyskać informacje na temat open-source Delta Sharing, zobacz github.com/delta-io/delta-sharing.

Udostępnianie Databricks-do-Databricks między magazynami metadanych Unity Catalog w tym samym koncie jest zawsze włączone. Jeśli jesteś dostawcą, który chce włączyć Delta Sharing w celu udostępnienia danych w obszarach roboczych Databricks na innych kontach lub klientom spoza Databricks, administrator konta Azure Databricks lub administrator metastore wykonuje następujące kroki konfiguracji (na wysokim poziomie):

  1. Włącz funkcję Delta Sharing dla magazynu metadanych Unity Catalog, który zarządza danymi, jakie chcesz współdzielić.

    Note

    Nie musisz włączać funkcji Delta Sharing w swoim magazynie metadanych, jeśli zamierzasz używać Delta Sharing do udostępniania danych wyłącznie użytkownikom innych magazynów metadanych Unity Catalog na swoim koncie. Udostępnianie między magazynami metadanych w ramach jednego konta Azure Databricks jest włączone domyślnie.

    Zobacz Włączanie udostępniania różnicowego w magazynie metadanych.

  2. Utwórz zasób współdzielony, który zawiera zasoby danych zarejestrowane w metastore Unity Catalog.

    Jeśli udostępniasz adresaci spoza usługi Databricks (nazywanej otwartym udostępnianiem), możesz dołączyć tabele w formacie delty. Jeśli planujesz używać udostępniania usługi Databricks do usługi Databricks, możesz również dodawać widoki, wolumeny katalogu Unity, modele katalogu Unity i pliki notatnika do udostępniania.

    Zobacz Tworzenie i zarządzanie udziałami dla Delta Sharing.

  3. Utwórz adresata.

    Zobacz Tworzenie adresatów danych i zarządzanie nimi na potrzeby udostępniania usługi Delta (udostępnianie usługi Databricks-to-Databricks).

    Jeśli adresat nie jest użytkownikiem usługi Databricks lub nie ma dostępu do obszaru roboczego usługi Databricks, który ma włączony Unity Catalog, musisz użyć otwartego udostępniania. Możesz wygenerować poświadczenia oparte na tokenie nosiciela dla tego adresata lub użyć federacji OIDC.

    Jeśli odbiorca ma dostęp do obszaru roboczego Databricks z włączonym Unity Catalog, możesz użyć funkcji udostępniania Databricks i nie są wymagane poświadczenia oparte na tokenach. Zażądasz identyfikatora udostępniania od adresata i użyjesz go do nawiązania bezpiecznego połączenia.

    Tip

    Użyj siebie jako adresata testowego, aby wypróbować proces instalacji.

  4. Udziel odbiorcy dostępu do co najmniej jednego udziału.

    Zobacz Zarządzanie dostępem do udziałów danych usługi Delta Sharing (dla dostawców).

    Note

    Ten krok można również wykonać przez użytkownika niebędącego administratorem z uprawnieniami USE SHAREUSE RECIPIENT i SET SHARE PERMISSION . Zobacz Uprawnienia Unity Catalog i obiekty zabezpieczalne.

  5. Wyślij adresatowi informacje potrzebne do połączenia się z zasobem (tylko w przypadku otwartego udostępniania).

    Aby otworzyć udostępnianie przy użyciu tokenów dostępu, użyj bezpiecznego kanału, aby wysłać odbiorcy link aktywacyjny, który umożliwia pobranie poświadczeń opartych na tokenach. Zobacz Wyślij odbiorcy informacje o połączeniu.

    Aby otworzyć udostępnianie przy użyciu federacji tokenów OIDC, wyślij wygenerowany adres URL portalu. Zobacz Użycie federacji OpenID Connect (OIDC), aby włączyć uwierzytelnianie w udziałach Delta Sharing (otwarte udostępnianie).

    W przypadku współdzielenia danych Databricks-to-Databricks, dane zawarte we współdzielonym zasobie staną się dostępne w obszarze roboczym Databricks odbiorcy, jak tylko przyznasz im uprawnienia do tej współdzielonej usługi.

Odbiorca może teraz uzyskiwać dostęp do udostępnionych danych.

Jak adresaci uzyskują dostęp do udostępnionych danych?

Adresaci uzyskują dostęp do udostępnionych zasobów danych w formacie tylko do odczytu. Udostępnione pliki notesu są tylko do odczytu, ale można je sklonować, a następnie zmodyfikować i uruchomić w obszarze roboczym adresata tak samo jak w przypadku każdego innego notesu.

Bezpieczny dostęp zależy od modelu udostępniania:

Za każdym razem, gdy dostawca danych aktualizuje tabele danych lub woluminy na swoim koncie usługi Databricks, aktualizacje są wyświetlane niemal w czasie rzeczywistym w systemie odbiorcy. Aby dowiedzieć się, jak uzyskiwać dostęp do danych, które zostały Ci udostępnione przy użyciu Delta Sharing, zobacz Uzyskiwanie dostępu do danych udostępnianych za pomocą Delta Sharing (dla odbiorców).

Jak śledzić, kto udostępnia i uzyskuje dostęp do udostępnionych danych?

Dostawcy danych w przestrzeniach roboczych usługi Azure Databricks z włączonym Unity Catalog mogą używać rejestrowania inspekcji i tabel systemowych usługi Azure Databricks do monitorowania tworzenia i modyfikowania udziałów i odbiorców oraz monitorować aktywność odbiorców na udziałach. Zobacz Inspekcja i monitorowanie udostępniania danych.

Adresaci danych korzystający z udostępnionych danych w obszarze roboczym usługi Databricks mogą używać rejestrowania inspekcji usługi Databricks i tabel systemowych, aby zrozumieć, kto uzyskuje dostęp do jakich danych. Zobacz Inspekcja i monitorowanie udostępniania danych.

Udostępnianie woluminów

Można udostępniać woluminy przy użyciu przepływu udostępniania Databricks do Databricks. Zobacz Dodawanie woluminów do udziału (dla dostawców) i Odczyt danych udostępnionych przy użyciu Databricks-to-Databricks Delta Sharing (dla adresatów).

Udostępnianie modeli

Modele można udostępniać przy użyciu przepływu udostępniania Databricks do Databricks. Zobacz Dodawanie modeli do współdzielenia (dla dostawców) i Odczyt danych udostępnionych za pomocą funkcji Databricks-to-Databricks Delta Sharing (dla adresatów).

Udostępnianie notesów

Udostępnianie Delta pozwala na udostępnianie plików notatnika przy użyciu Databricks-to-Databricks. Zobacz Dodawanie plików notesu do zasobów współdzielonych (dla dostawców) i Odczyt udostępnionych notesów (dla odbiorców).

Ograniczanie dostępu na poziomie wiersza i kolumny podczas udostępniania widoków

Możesz udostępniać widoki dynamiczne, które ograniczają dostęp do określonych danych tabeli na podstawie właściwości adresata. Zobacz Dodawanie widoków dynamicznych do udziału w celu filtrowania wierszy i kolumn.

Udostępnianie i przesyłanie strumieniowe Delta

Delta Sharing obsługuje strumieniowanie strukturalne w Apache Spark. Dostawca może udostępnić tabelę z historią lub tabelę przesyłania strumieniowego, aby odbiorca mógł ją wykorzystać jako źródło strukturalnego przesyłania strumieniowego, przetwarzając udostępnione dane przyrostowo z małym opóźnieniem. Adresaci mogą również wykonywać zapytania podróży w czasie Delta Lake na tabelach udostępnionych z historią.

Aby dowiedzieć się, jak udostępniać tabele z historią, zobacz Dodawanie tabel do udziału. Aby dowiedzieć się, jak używać tabel udostępnionych jako źródeł przesyłania strumieniowego, zobacz Wykonywanie zapytań w tabeli przy użyciu przesyłania strumieniowego ze strukturą platformy Apache Spark (dla adresatów udostępniania danych usługi Databricks-to-Databricks) lub Uzyskiwanie dostępu do udostępnionej tabeli przy użyciu przesyłania strumieniowego ze strukturą platformy Spark (dla adresatów otwartych danych udostępniania).

Aby dowiedzieć się, jak udostępniać tabele strumieniowe, zobacz Dodawanie tabel strumieniowych do udziału.

Zobacz również Strukturalne przesyłanie strumieniowe.

Macierz obsługi funkcji usługi Delta Lake

Delta Sharing obsługuje większość funkcji Delta Lake podczas udostępniania tabeli. Ta macierz wsparcia wymienia:

  • Funkcje Delta, które wymagają określonych wersji narzędzia Databricks Runtime, otwartoźródłowego łącznika Delta Sharing Spark lub otwartoźródłowego łącznika języka Python Delta Sharing.
  • Funkcje obsługiwane częściowo.
Feature Provider Odbiorca usługi Databricks Odbiorca open source
Wektory usuwania
  • Udostępnianie tabel za pomocą tej funkcji jest dostępne w publicznej wersji zapoznawczej.
  • Tabele muszą być udostępniane razem z historią.
  • Wersja Databricks Runtime 14.1 lub nowsza dla zapytań wsadowych
  • Środowisko Databricks Runtime 14.2 lub nowsze dla zapytań CDF i zapytań strumieniowych
  • Delta Sharing Spark konektor 3.1+
  • Delta Sharing Python Connector 1.1.0+
  • Power BI w wersji 2.132.908.0+
Mapowanie kolumn
  • Udostępnianie tabel za pomocą tej funkcji jest dostępne w publicznej wersji zapoznawczej.
  • Tabele muszą być udostępniane razem z historią.
  • Wersja Databricks Runtime 14.1 lub nowsza dla zapytań wsadowych
  • Środowisko Databricks Runtime 14.2 lub nowsze dla zapytań CDF i zapytań strumieniowych
  • Delta Sharing Spark konektor 3.1+
  • Obsługiwane z ograniczeniami w łączniku Delta Sharing dla Pythona
  • Power BI w wersji 2.132.908.0+
Jednolity format
  • Udostępnianie tabel za pomocą tej funkcji jest dostępne w publicznej wersji zapoznawczej.
  • Tabele muszą być udostępniane razem z historią.
  • Wersja Databricks Runtime 14.1 lub nowsza dla zapytań wsadowych
  • Środowisko Databricks Runtime 14.2 lub nowsze dla zapytań CDF i zapytań strumieniowych
  • Delta Sharing Spark konektor 3.1+
  • Delta Sharing Python Connector 1.1.0+
  • Power BI w wersji 2.132.908.0+
Punkt kontrolny V2 Obsługiwane z ograniczeniami Obsługiwane z ograniczeniami Obsługiwane z ograniczeniami
TimestampNTZ Supported Databricks Runtime 14.1+ Delta Sharing Spark Łącznik 3.3+
Klastrowanie cieczy Obsługiwane z ograniczeniami Obsługiwane z ograniczeniami Obsługiwane z ograniczeniami

Delta Sharing (udostępnianie różnicowe) — często zadawane pytania (FAQs)

Poniżej przedstawiono często zadawane pytania dotyczące Delta Sharing.

Czy do korzystania z funkcji Delta Sharing potrzebuję Unity Catalog?

Nie, nie potrzebujesz Unity Catalog, aby udostępniać dane (jako dostawca) ani korzystać z udostępnionych danych (jako odbiorca). Jednak Katalog Unity zapewnia korzyści, takie jak obsługa danych nietabelarycznych i udostępnianie zasobów AI, gotowe do użycia zarządzanie danymi, prostota oraz wydajność zapytań.

Dostawcy mogą udostępniać dane na dwa sposoby:

  • Umieść zasoby do udostępniania w ramach zarządzania katalogiem Unity i udostępnij je przy użyciu wbudowanego serwera Delta Sharing usługi Azure Databricks.

    Nie trzeba migrować wszystkich zasobów do Unity Catalog. Potrzebujesz tylko jednego obszaru roboczego usługi Azure Databricks, w którym włączono Unity Catalog, aby zarządzać zasobami, które chcesz udostępnić. W niektórych kontach nowe obszary robocze są automatycznie aktywowane dla Unity Catalog. Zobacz Automatyczne włączanie Unity Catalog.

  • Zaimplementuj serwer Delta Sharing o otwartym kodzie źródłowym, aby udostępniać dane bez konieczności używania konta usługi Azure Databricks.

Adresaci mogą korzystać z danych na dwa sposoby:

Zobacz Odczytywanie danych udostępnionych przy użyciu Delta Sharing z użyciem tokenów uwierzytelniających (dla adresatów) i Odczyt danych udostępnionych pomiędzy kontami Databricks przy użyciu Delta Sharing (dla adresatów).

Czy muszę być klientem Databricks, aby korzystać z Delta Sharing?

Nie, Delta Sharing jest protokołem otwartym. Możesz udostępniać dane spoza usługi Databricks adresatom na dowolnej platformie danych. Dostawcy mogą skonfigurować otwarty serwer Delta Sharing do udostępniania z dowolnej platformy informatycznej. Adresaci mogą korzystać z udostępnionych danych przy użyciu łączników Delta Sharing z otwartym kodem źródłowym dla wielu produktów danych, w tym Power BI, biblioteki pandas i platformy Spark.

Jednak korzystanie z Delta Sharing w usłudze Azure Databricks, szczególnie udostępniania z obszaru roboczego obsługiwanego przez Unity Catalog, ma wiele zalet.

Aby uzyskać szczegółowe informacje, zobacz pierwsze pytanie w tym często zadawanych pytaniach.

Jak mogę sprawdzić, jakie koszty są związane z Delta Sharing?

Koszty korzystania z Delta Sharing powstają podczas udostępniania oraz dostępu do widoków, widoków materializowanych i tabel strumieniowych. Są to potencjalne źródła kosztów udostępniania:

  • Koszt obliczeń naliczany przez usługę Azure Databricks.
  • Koszt przechowywania i transferu sieciowego (transferu wychodzącego), naliczany przez dostawcę pamięci masowej.
  • Koszt obcego źródła obliczeniowego podczas udostępniania obcych schematów i tabel.

Metoda, za pomocą której jest wykonywane obliczenia i kto za to płaci, zależy od kilku czynników:

  • Typ obliczeń adresata
  • Czy udostępnianie odbywa się w ramach tego samego konta usługi Azure Databricks, czy między kontami

W poniższej tabeli opisano metodę rozliczeń udostępniania widoków i uzyskiwania do nich dostępu przy użyciu Delta Sharing:

Obliczenia odbiorcy Powiązanie konta Kto płaci Jednostka SKU używana do rozliczeń Metoda dostępu
Databricks Serverless Any Recipient* Bezserwerowa odbiorca Odbiorca otrzymuje bezpośredni dostęp do danych bazowych
Databricks Classic To samo konto Recipient* Klasyk odbiorcy Odbiorca otrzymuje bezpośredni dostęp do danych bazowych
Databricks Classic Różne konto Recipient Interaktywna usługa bezserwerowa dostawcy Dostawca wykonuje filtrowanie
Otwieranie łączników Delta Sharing Any Provider Interaktywna usługa bezserwerowa dostawcy Dostawca wykonuje filtrowanie

* W przypadku korzystania z funkcji Delta Sharing z odbiorcą, który używa obliczeń bezserwerowych na innym koncie, lub z odbiorcą na tym samym koncie, nie są naliczane dodatkowe opłaty. Oznacza to, że nie ma dodatkowych kosztów materializowania zasobu danych.

Podczas udostępniania tabel obcych (beta) filtrowanie jest zawsze wykonywane i przechowywane po stronie dostawcy. Dostawcy mogą zobaczyć dodatkową opłatę przypisaną domyślnemu magazynowi używanemu do materializacji danych. Podczas beta nie ma żadnych kosztów filtrowania zasobów obliczeniowych.

Przypisanie rozliczeń można również wykonywać zapytania przy użyciu odwołania do tabeli systemu użycia rozliczanego i odwołania do systemowej tabeli historii materializacji Delta Sharing. Jeśli odbiorca płaci za przypisanie, tylko odbiorca może zobaczyć skojarzony rekord w tabeli systemowej. Przykładowe zapytania można znaleźć w temacie Przykładowe zapytania.

Czy Delta Sharing powoduje naliczanie kosztów wychodzących?

Udostępnianie Delta w regionie nie wiąże się z żadnymi kosztami wyjścia. 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. Usługa Azure Databricks obsługuje udostępnianie z usługi Cloudflare R2, która nie wiąże się z opłatami za ruch wychodzący oraz udostępnia inne narzędzia i zalecenia do monitorowania i unikania opłat za ruch wychodzący. Zobacz Monitorowanie i zarządzanie kosztami wychodzącymi Delta Sharing (dla dostawców).

Czy adresaci mają bezpośredni dostęp do danych bazowych w widokach udostępnionych, zmaterializowanych widokach i tabelach przesyłania strumieniowego?

W przypadku widoków udostępnionych, tabel przesyłania strumieniowego i zmaterializowanych widoków adresat danych ma bezpośredni dostęp, jeśli spełniony jest jeden z następujących warunków:

  • Odbiorca używa obliczeń bezserwerowych lub klasycznych obliczeń w trybie współdzielonym na tym samym koncie usługi Azure Databricks.
  • Odbiorca używa bezserwerowych obliczeń na innym koncie usługi Azure Databricks.

W przeciwnym razie dane są zmaterializowane i filtrowane po stronie dostawcy.

Materializacja danych jest przechowywana w nadrzędnym miejscu przechowywania wspólnej jednostki danych.

W przypadku udostępniania zmaterializowanych zasobów proces obliczeniowy przetwarza żądanie, stosując niezbędne filtry i tworząc tymczasowo zbuforowaną materializację w magazynie pamięci dostawcy. Te przefiltrowane dane są dostarczane do adresatów przy użyciu wstępnie podpisanych krótkoterminowych adresów URL, zapewniając bezpieczny dostęp przy zachowaniu kontroli dostępu od dostawcy do adresata.

Zmaterializowana architektura dostępu do danych.

Czy dostawcy mogą odwołać dostęp adresata?

Tak, dostęp adresata można odwołać na żądanie i na określonych poziomach szczegółowości. Możesz odmówić adresatowi dostępu do określonych udziałów i określonych adresów IP, filtrować dane tabelaryczne adresata, odwoływać tokeny adresata i całkowicie usuwać adresatów. Zobacz Odwołaj dostęp adresata do udziału oraz Tworzenie adresatów danych i zarządzanie nimi na potrzeby udostępniania usługi Delta (udostępnianie danych w usłudze Databricks-to-Databricks).

Czy nie jest to niezabezpieczone, aby używać wstępnie podpisanych adresów URL?

Funkcja Delta Sharing używa wstępnie podpisanych adresów URL w celu zapewnienia tymczasowego dostępu do pliku w magazynie obiektów. Są one przekazywane tylko adresatom, którzy mają już dostęp do udostępnionych danych. Są one bezpieczne, ponieważ są krótkotrwałe i nie rozszerzają poziomu dostępu poza to, co zostało już przyznane odbiorcom.

Czy tokeny używane w otwartym protokole udostępniania Delta Sharing są bezpieczne?

Delta Sharing umożliwia udostępnianie międzyplatformowe, w przeciwieństwie do innych dostępnych platform udostępniania danych, dlatego protokół wymaga otwartego tokenu. Dostawcy mogą zapewnić bezpieczeństwo tokenów, konfigurując okres istnienia tokenu, ustawiając mechanizmy kontroli sieci i odwołując dostęp na żądanie. Ponadto token nie rozszerza poziomu dostępu poza tym, co już otrzymali adresaci. Zobacz Zagadnienia dotyczące zabezpieczeń dotyczące tokenów.

Jeśli wolisz nie używać tokenów do zarządzania dostępem do udziałów adresatów, powinieneś skorzystać z opcji udostępniania Databricks do Databricks lub skontaktować się z zespołem obsługującym konta w Databricks, aby poznać inne możliwości.

Jaka jest różnica między usługą Lakeflow Connect i funkcją delta sharing?

Delta Sharing pozwala na bezpieczne udostępnianie danych na żywo między platformami, chmurami i regionami. Usługa Databricks zaleca pozyskiwanie przy użyciu łączników zarządzanych, ponieważ są skalowane w celu uwzględnienia dużych ilości danych, zapytań o małych opóźnieniach i limitów interfejsu API innych firm. Jednak możesz chcieć wykonać zapytanie dotyczące danych bez ich przenoszenia.

Jeśli masz wybór między łącznikami zarządzanymi a Delta Sharing, wybierz Delta Sharing w następujących scenariuszach:

  • Ograniczanie duplikowania danych.
  • Wykonywanie zapytań dotyczących najświeższych możliwych danych.

Ograniczenia

Zobacz również macierz obsługi funkcji Delta Lake.

Przydziały zasobów

Usługa Azure Databricks wymusza limity przydziału zasobów dla wszystkich zabezpieczanych obiektów funkcji Delta Sharing. Te limity przydziału są wymienione w temacie Limity zasobów. Jeśli spodziewasz się przekroczyć te limity zasobów, skontaktuj się z zespołem konta usługi Azure Databricks.

Można monitorować zużycie limitu przydziałów za pomocą zasobów API Unity Catalog. Sprawdź Monitoruj użycie przydziałów zasobów w Unity Catalog.

Dalsze kroki