Ingestování dat ze Salesforce
Důležité
LakeFlow Connect je ve verzi Public Preview. Pokud se chcete zúčastnit verze Preview, obraťte se na tým účtu Databricks.
Tento článek popisuje, jak ingestovat data ze Salesforce a načíst je do Azure Databricks pomocí LakeFlow Connect. Výsledný kanál příjmu dat se řídí Unity Catalog a využívá bezserverové výpočetní prostředky a Delta Live Tables.
Konektor pro příjem dat Salesforce podporuje následující zdroj:
- Salesforce Sales Cloud
Než začnete
Pokud chcete vytvořit kanál příjmu dat, musíte splňovat následující požadavky:
Váš pracovní prostor je nakonfigurován pro Unity Catalog.
Bezserverové výpočty jsou k dispozici pro poznámkové bloky, pracovní postupy a Delta Live Tables. Viz Povolení výpočetních prostředků bez serveru.
Vytvoření připojení: Máte
CREATE CONNECTION
na metastoru.Chcete-li použít existující připojení: Máte
USE CONNECTION
neboALL PRIVILEGES
v objektu připojení.USE CATALOG
na cílovém catalog.USE SCHEMA
aCREATE TABLE
na existujícím schema neboCREATE SCHEMA
v cílovém catalog.(Doporučeno) Vytvořte uživatele Salesforce, kterého může Databricks použít k načtení dat. Ujistěte se, že má uživatel přístup k rozhraní API a přístup ke všem objektům, které plánujete ingestovat.
Vytvoření připojení Salesforce
Požadovaná oprávnění:CREATE CONNECTION
v metastoru. Obraťte se na správce metastoru a grant to.
Pokud chcete vytvořit kanál příjmu dat pomocí existujícího připojení, přejděte do následující části. Potřebujete USE CONNECTION
nebo ALL PRIVILEGES
na připojení.
Pokud chcete vytvořit připojení Salesforce, postupujte takto:
V pracovním prostoru Azure Databricks klikněte na Catalog> Externí umístění >Connections> Vytvořit připojení.
Jako název připojení zadejte jedinečný název pro připojení Salesforce.
U typu připojení klikněte na Salesforce.
Pokud ingestujete z účtu sandboxu Salesforce, setje sandbox do
true
.Klikněte na Přihlásit se pomocí Salesforce.
Pokud ingestujete z sandboxu Salesforce, klikněte na Použít vlastní doménu. Zadejte adresu URL sandboxu a pokračujte přihlášením. Databricks doporučuje přihlášení jako uživatel Salesforce, který je vyhrazený pro příjem dat Databricks.
Po návratu na stránku Vytvořit připojení klikněte na Vytvořit.
Vytvoření kanálu příjmu dat
Požadovaná oprávnění:USE CONNECTION
nebo ALL PRIVILEGES
připojení.
Tento krok popisuje, jak vytvořit kanál příjmu dat. Každý přijatý table odpovídá streamovanému table se stejným názvem (ale malými písmeny) v cíli ve výchozím nastavení, pokud ho explicitně nejmenujete.
Uživatelské rozhraní Databricks
Na bočním panelu pracovního prostoru Azure Databricks klikněte na Příjem dat.
Na stránce Přidat data v části Konektory Databricks klikněte na Salesforce.
Otevře se průvodce příjmem dat Salesforce.
Na stránce Kanálu průvodce zadejte jedinečný název kanálu příjmu dat.
V rozevíracím seznamu Cíl catalog je selectcatalog. Ingestované data a protokoly událostí budou zapsány do tohoto catalog.
Select připojení Unity Catalog, které ukládá credentials vyžadované pro přístup k datům Salesforce.
Pokud neexistuje connectionsSalesforce, klikněte na Vytvořit připojení. Musíte mít
CREATE CONNECTION
oprávnění k metastoru.Klikněte na Vytvořit kanál a pokračujte.
Na stránce Zdrojselect Salesforce tables ingestovat do Databricks a potom klikněte na Další.
Pokud selectschema, konektor pro příjem dat Salesforce uloží všechna aktuální a budoucí tables ze zdrojového schema do tablesspravovaného službou Unity Catalog.
Na stránce Cíl se píše do select Unity Catalogcatalog a schema.
Pokud nechcete používat existující schema, klikněte na Vytvořit schema. Musíte mít práva
USE CATALOG
aCREATE SCHEMA
pro nadřazené catalog.Klikněte na Uložit kanál a pokračujte.
Na stránce Nastavení klikněte na Vytvořit plán. Set frekvenci do refresh cíle tables.
Volitelně můžete set e-mailová oznámení o úspěchu nebo selhání operace kanálu.
Klikněte na Uložit a spustit kanál.
Sady prostředků Databricks
Tato karta popisuje, jak nasadit kanál příjmu dat pomocí sad prostředků Databricks (DABs). Sady můžou obsahovat definice YAML úloh a úkolů, spravují se pomocí rozhraní příkazového řádku Databricks a můžou se sdílet a spouštět v různých cílových pracovních prostorech (jako je vývoj, příprava a produkční prostředí). Další informace najdete v tématu Sady prostředků Databricks.
Vytvořte novou sadu pomocí rozhraní příkazového řádku Databricks:
databricks bundle init
Přidejte do sady dva nové soubory prostředků:
- Soubor definice kanálu (
resources/sfdc_pipeline.yml
). - Soubor pracovního postupu, který řídí frekvenci příjmu dat (
resources/sfdc_job.yml
).
Následuje příklad
resources/sfdc_pipeline.yml
souboru:variables: dest_catalog: default: main dest_schema: default: ingest_destination_schema # The main pipeline for sfdc_dab resources: pipelines: pipeline_sfdc: name: salesforce_pipeline ingestion_definition: connection_name: <salesforce-connection> objects: # An array of objects to ingest from Salesforce. This example # ingests the AccountShare, AccountPartner, and ApexPage objects. - table: source_schema: objects source_table: AccountShare destination_catalog: ${var.dest_catalog} destination_schema: ${var.dest_schema} - table: source_schema: objects source_table: AccountPartner destination_catalog: ${var.dest_catalog} destination_schema: ${var.dest_schema} - table: source_schema: objects source_table: ApexPage destination_catalog: ${var.dest_catalog} destination_schema: ${var.dest_schema} channel: "preview"
Následuje příklad
resources/sfdc_job.yml
souboru:resources: jobs: sfdc_dab_job: name: sfdc_dab_job trigger: # Run this job every day, exactly one day from the last run # See https://docs.databricks.com/api/workspace/jobs/create#trigger periodic: interval: 1 unit: DAYS email_notifications: on_failure: - <email-address> tasks: - task_key: refresh_pipeline pipeline_task: pipeline_id: ${resources.pipelines.pipeline_sfdc.id}
- Soubor definice kanálu (
Nasaďte kanál pomocí rozhraní příkazového řádku Databricks:
databricks bundle deploy
Databricks CLI
Vytvoření kanálu:
databricks pipelines create --json "<pipeline-definition | json-file-path>"
Postup update kanálu:
databricks pipelines update --json "<<pipeline-definition | json-file-path>"
K definici kanálu get:
databricks pipelines get "<pipeline-id>"
Odstranění kanálu:
databricks pipelines delete "<pipeline-id>"
Další informace získáte spuštěním:
databricks pipelines --help
databricks pipelines <create|update|get|delete|...> --help
Spuštění, plánování a set upozornění na vašem pipeline
Po vytvoření pipeline se vraťte do pracovního prostoru Databricks a klikněte na Delta Live Tables.
Nové potrubí se zobrazí v potrubí list.
Pokud chcete zobrazit podrobnosti kanálu, klikněte na název kanálu.
Na stránce podrobností kanálu spusťte kanál kliknutím na Start. Kanál můžete naplánovat kliknutím na Plán.
Chcete-li set výstrahy na pipeline, klikněte na Plán, klikněte na Další možnostia pak přidejte oznámení.
Po dokončení příjmu dat můžete provádět dotazy na tables.
Poznámka:
Při běhu potrubí se můžou zobrazit dva zdroje views pro danou table. Jedno zobrazení obsahuje snímky polí vzorců. Druhé zobrazení obsahuje přírůstkové načítání dat pro pole, která neobsahují vzorce. Tyto views jsou připojeny v cílovém místě table.