Concetti relativi ai connettori di Lakeflow Connect

Annotazioni

I connettori Lakeflow Connect sono presenti in vari stati di rilascio.

Lakeflow Connect organizza i connettori per tipo di sorgente, inclusi database, SaaS, file e connettori di streaming, insieme a connettori comunitari e personalizzati per sorgenti senza opzione integrata. Questa pagina descrive i concetti condivisi dai connettori gestiti di Lakeflow Connect: i tipi di connettori disponibili, come è strutturato un connettore, come funziona e come assorbe dati in modo incrementale. I connettori gestiti producono pipeline di ingestione governate da Unity Catalog e alimentate da pipeline serverless di calcolo e Lakeflow, utilizzando letture e scritture incrementali efficienti per mantenere i dati freschi per il consumo a valle.

Se hai bisogno di un maggiore controllo sulle pipeline, puoi anche usare connettori standard, che offrono un supporto per un numero più ampio di sorgenti e maggiori possibilità di personalizzazione, a scapito di parte dell'automazione. Vedi Scegli un connettore standard.

Tipi di connettore

Tipo di connettore Descrizione
Connettori della comunità Inserire dati usando connettori open source e compilati dalla community.
Connettori di database (CDC) Inserire dati da database relazionali, tra cui MySQL, PostgreSQL e SQL Server usando Change Data Capture.
Connettori di origine dei file Inserire file non strutturati e strutturati da servizi di archiviazione file aziendali, tra cui Google Drive e SharePoint.
Connettori basati su query Inserire dati dai database eseguendo query direttamente sull'origine, senza richiedere la configurazione di Change Data Capture (CDC).
Connettori SaaS Inserire dati da applicazioni SaaS aziendali, tra cui Salesforce, HubSpot, Jira, Workday e altro ancora.
Connettori di streaming Acquisire continuamente dati da message bus e fonti di streaming di eventi, tra cui RabbitMQ.

Architettura

Ogni tipo di connettore ha un set distinto di componenti. I connettori SaaS e file utilizzano una connessione, una pipeline di ingestione e tabelle di destinazione. I connettori di database prevedono anche un gateway di inserimento e un'archiviazione temporanea per supportare l'acquisizione continua delle modifiche. I connettori basati su query e streaming utilizzano i componenti descritti nelle sezioni seguenti. Per dettagli su connettori SaaS e database, vedi Connettori SaaS gestiti e Connettori database gestiti.

Componenti del connettore basati su query

Un connettore basato su query esegue una query sul database di origine direttamente secondo una pianificazione, senza un gateway o un'area di staging. Per una panoramica del funzionamento dei connettori basati su query, vedere Connettori basati su query.

Componente Descrizione
Connessione Oggetto a protezione diretta di Unity Catalog che archivia i dettagli di autenticazione per il database di origine. Una connessione diretta al catalogo Unity (per l'inserimento di connessioni esterne) o un catalogo esterno del catalogo Unity (per l'inserimento di cataloghi stranieri tramite Lakehouse Federation).
Pipeline di inserimento Una pipeline che esegue direttamente una query sul database di origine e scrive i risultati nelle tabelle di streaming. La pipeline viene eseguita su un'infrastruttura serverless per impostazione predefinita.
Tabelle di destinazione Le tabelle di streaming in cui la pipeline di inserimento scrive i dati.

Componenti del connettore di streaming

Un connettore di streaming legge continuamente i messaggi da un bus di messaggio o da un'origine di streaming di eventi e li scrive in tabelle di streaming. Per una panoramica di come funzionano i connettori per lo streaming, vedi Connettori per streaming.

Componente Descrizione
Connessione Oggetto proteggibile di Unity Catalog che memorizza l'endpoint di origine e le credenziali di autenticazione dell'origine di streaming. Il connettore gestito usa questa connessione per l'autenticazione senza richiedere credenziali nella configurazione della pipeline.
Pipeline di inserimento Pipeline che legge continuamente i messaggi dall'origine di streaming e scrive i risultati nelle tabelle di streaming. La pipeline si basa su calcolo senza server (serverless).
Tabelle di destinazione Le tabelle di streaming in cui la pipeline di inserimento scrive i dati.

Orchestrazione

È possibile eseguire la pipeline di acquisizione secondo una o più pianificazioni personalizzate. Per ogni pianificazione aggiunta a una pipeline, Lakeflow Connect crea automaticamente un attività. La pipeline di inserimento è un'attività all'interno del processo. Facoltativamente, è possibile aggiungere altre attività al processo.

Diagramma di orchestrazione della pipeline per i connettori SaaS

Per i connettori di database, il gateway di inserimento opera nel proprio lavoro come attività continua.

Diagramma di orchestrazione della pipeline per i connettori di database

Inserimento incrementale

Lakeflow Connect usa l'inserimento incrementale per migliorare l'efficienza della pipeline. Nella prima esecuzione della pipeline inserisce tutti i dati selezionati dall'origine. In parallelo, tiene traccia delle modifiche apportate ai dati di origine. In ogni esecuzione successiva della pipeline, usa il rilevamento delle modifiche per inserire solo i dati modificati dall'esecuzione precedente, quando possibile.

L'approccio esatto dipende da ciò che è disponibile nell'origine dati. Ad esempio, è possibile usare sia il rilevamento delle modifiche che change data capture (CDC) con SQL Server. Al contrario, il connettore Salesforce seleziona una colonna di cursore da un elenco di opzioni impostato.

Alcune origini o tabelle specifiche non supportano attualmente l'inserimento incrementale. Databricks prevede di espandere la copertura per il supporto incrementale.

Rete

Sono disponibili diverse opzioni per la connessione a un'applicazione o a un database SaaS.

  • I connettori per le applicazioni SaaS raggiungono le API di origine. Sono anche automaticamente compatibili con i controlli in uscita serverless.
  • I connettori per database cloud possono collegarsi alla sorgente tramite collegamento privato. In alternativa, se l'area di lavoro ha un Rete virtuale (VNet) o un Virtual Private Cloud (VPC) che effettua il peering con la rete virtuale o il VPC che ospita il database, è possibile distribuire il gateway all'interno di esso.
  • I connettori per i database locali possono connettersi usando servizi come AWS Direct Connect e Azure ExpressRoute.

Distribuzione

È possibile distribuire pipeline di inserimento usando bundle di automazione dichiarativa, che consentono procedure consigliate come il controllo del codice sorgente, la revisione del codice, il test e l'integrazione e il recapito continui (CI/CD). I bundle vengono gestiti tramite l'interfaccia della riga di comando di Databricks e possono essere eseguiti in aree di lavoro di destinazione diverse, ad esempio sviluppo, gestione temporanea e produzione.

Creare connessioni tramite codice

Per i connettori che utilizzano l'autenticazione esclusivamente tramite API (tutti i connettori di database e la maggior parte dei connettori SaaS), è possibile creare connessioni in modo programmatico usando notebook, Databricks CLI o Bundle di automazione dichiarativa anziché l'interfaccia utente di Catalog Explorer.

  • Notebook: usare l'API Connessioni da un notebook per creare una connessione e passarla alla pipeline.
  • Interfaccia della riga di comando di Databricks: eseguire databricks connections create con --json per passare il tipo di connessione e le credenziali. Il corpo JSON segue lo stesso schema dell'API REST Connections.
  • Pacchetti di automazione dichiarativa: Usa uno script o un'attività del processo di pre-distribuzione per chiamare databricks connections create come parte del flusso di lavoro del pacchetto prima di distribuire la pipeline.

Annotazioni

I connettori che usano OAuth basato su browser (OAuth U2M) come unica opzione di autenticazione non possono essere creati a livello di codice. Questi connettori richiedono l'accesso interattivo per ottenere il token OAuth iniziale. Sono inclusi: Confluence, Google Ads, HubSpot, Jira, Meta Ads, Slack, Slack Audit Logs, TikTok Ads e Zendesk Support.

Ripristino da errore

Come servizio completamente gestito, Lakeflow Connect mira a ripristinare automaticamente i problemi quando possibile. Ad esempio, quando un connettore ha esito negativo, viene eseguito automaticamente un nuovo tentativo con backoff esponenziale.

Tuttavia, è possibile che un errore richieda l'intervento dell'utente, ad esempio quando le credenziali scadono. In questi casi, il connettore tenta di evitare dati mancanti archiviando l'ultima posizione del cursore. Può quindi riprendere da quella posizione alla prossima esecuzione della pipeline, quando possibile.

Monitoraggio

Lakeflow Connect offre avvisi e monitoraggio affidabili per gestire le pipeline. Sono inclusi i log eventi, i log del cluster, le metriche di integrità della pipeline e le metriche di qualità dei dati. È anche possibile usare la system.billing.usage tabella per tenere traccia dei costi e monitorare l'utilizzo della pipeline. Vedere Monitorare il costo della pipeline di inserimento gestito.

Per i connettori di database, è possibile monitorare lo stato del gateway in tempo reale usando i log eventi. Consulta Monitorare lo stato del gateway di inserimento con i log degli eventi.

Connettori della comunità

I connettori della community estendono Lakeflow Connect alle origini senza il supporto di connettore gestito. Sono costruiti e gestiti dalla comunità. Consulta i Connettori della community in Lakeflow Connect.

Connettori personalizzati

Se nessun connettore gestito o comunitario supporta la tua sorgente, puoi costruire un tuo connettore personalizzato ed eseguirlo nel tuo workspace. Vedi Costruire un connettore personalizzato per Lakeflow Connect.

Dipendenza da servizi esterni

Databricks SaaS, database e altri connettori completamente gestiti dipendono dall'accessibilità, dalla compatibilità e dalla stabilità dell'applicazione, del database o del servizio esterno a cui si connettono. Databricks non controlla questi servizi esterni e, pertanto, ha un'influenza limitata (se disponibile) sulle modifiche, sugli aggiornamenti e sulla manutenzione.

Se le modifiche, le interruzioni o le circostanze correlate a un servizio esterno impediscono o rendono poco pratico il funzionamento di un connettore, Databricks può interrompere o interrompere la manutenzione di tale connettore. Databricks farà sforzi ragionevoli per notificare ai clienti la sospensione o la cessazione della manutenzione, inclusi gli aggiornamenti alla documentazione applicabile.