Pozyskiwanie za pomocą interfejsów API SQL i Spark

Ta strona opisuje, jak ładować dane do Databricks Lakeflow Connect za pomocą API SQL i Spark, które oferują wyższy poziom personalizacji pipeline'ów w porównaniu do zarządzanych konektorów. Użyj go do wyboru podejścia do pozyskiwania danych według źródła danych i poziomu personalizacji pipeline.

Warstwy stosu ETL

Niektóre łączniki działają na jednym poziomie stosu ETL. Na przykład usługa Databricks oferuje w pełni zarządzane łączniki dla aplikacji dla przedsiębiorstw, takich jak Salesforce i bazy danych, takie jak SQL Server. Inne łączniki działają w wielu warstwach stosu ETL. Na przykład możesz używać API SQL i Spark zarówno w Structured Streaming, aby mieć pełną personalizację, jak i w pipeline'ach Lakeflow dla bardziej zarządzanego środowiska.

Diagram stosu ETL

Usługa Databricks zaleca rozpoczęcie od najbardziej zarządzanej warstwy. Jeśli nie spełnia Twoich wymagań (na przykład, jeśli nie obsługuje Twojego źródła danych), przejdź do następnej warstwy.

W poniższej tabeli opisano trzy warstwy produktów integracji, uporządkowane od najbardziej dostosowywalnych do najbardziej zarządzanych.

Warstwa Opis
Przesyłanie strumieniowe ze strukturą Strukturalne Przesyłanie Strumieniowe Apache Spark to silnik przesyłania strumieniowego, który oferuje kompleksową odporność na uszkodzenia oraz gwarantowane dokładnie jednokrotne przetwarzanie przy użyciu interfejsów API Spark.
Potoki Lakeflow Lakeflow Pipelines rozszerza Structured Streaming, oferując deklaratywne środowisko do tworzenia potoków danych. Możesz zdefiniować przekształcenia wykonywane na danych, a potoki Lakeflow zarządzają orkiestracją, monitorowaniem, jakością danych, błędami i nie tylko. Oferują one większą automatyzację i mniejsze obciążenie niż przesyłanie strumieniowe ze strukturą.
Łączniki zarządzane W pełni zarządzane łączniki opierają się na potokach Lakeflow, zapewniając jeszcze wyższy poziom automatyzacji dla najpopularniejszych źródeł danych. Rozszerzają one funkcjonalność potoków Lakeflow o uwierzytelnianie specyficzne dla źródła, obsługę CDC, obsługę sytuacji wyjątkowych, długoterminowe utrzymanie interfejsu API, automatyczne ponawianie prób, automatyczną ewolucję schematu itd. W związku z tym oferują jeszcze większą automatyzację dla wszystkich obsługiwanych źródeł danych.

Wybierz opcję

Poniższa tabela przedstawia opcje ładowania danych SQL i Spark według źródła danych oraz poziomu personalizacji potoku. Dla w pełni zautomatyzowanego procesu pozyskiwania danych używaj zarządzanych łączników.

Przykłady sql dotyczące przyrostowego pozyskiwania z magazynu obiektów w chmurze używają CREATE STREAMING TABLE składni. Oferuje użytkownikom SQL skalowalny proces pozyskiwania danych, dlatego jest to zalecana alternatywa dla COPY INTO.

Źródło Więcej dostosowywania Niektóre dostosowania Więcej automatyzacji
Magazyn obiektów w chmurze Automatyczne ładowanie za pomocą przesyłania strumieniowego ze strukturą
(Python, Scala)
Automatyczne ładowanie przy użyciu potoków lakeflow
(Python, SQL)
Automatyczne ładowanie przy użyciu usługi Databricks SQL
(SQL)
Serwery SFTP Pozyskiwanie plików z serwerów SFTP
(Python, SQL)
N/A N/A
Apache Kafka Przesyłanie strumieniowe ze strukturą za pomocą źródła platformy Kafka
(Python, Scala)
Potoki Lakeflow ze źródłem Kafka
(Python, SQL)
Usługa Databricks SQL ze źródłem platformy Kafka
(SQL)
Google Pub/Sub (usługa przesyłania wiadomości) Strumieniowanie ustrukturyzowane z wykorzystaniem źródła Pub/Sub
(Python, Scala)
Potoki Lakeflow ze źródłem Pub/Sub
(Python, SQL)
Usługa Databricks SQL ze źródłem Pub/Sub
(SQL)
Apache Pulsar Strukturalne przesyłanie strumieniowe z źródłem Pulsar
(Python, Scala)
Potoki Lakeflow ze źródłem Pulsar
(Python, SQL)
Usługa Databricks SQL ze źródłem Pulsar
(SQL)

harmonogramy przyjmowania

Potoki przetwarzania danych można skonfigurować tak, aby działały według harmonogramu okresowego lub stale.

Przypadek użycia Tryb potokowy
Pozyskiwanie wsadowe Wyzwalane: przetwarza nowe dane zgodnie z harmonogramem lub po ręcznym wyzwoleniu.
Strumieniowe pobieranie danych Ciągły: przetwarza nowe dane w miarę ich nadejścia w źródle.