Pular para o conteúdo principal

Importar dados do HubSpot para o Databricks

info

Beta

Este recurso está em versão Beta. Os administradores do espaço de trabalho podem controlar o acesso a este recurso na página de Pré-visualizações . Veja as prévias do Gerenciador Databricks.

Aprenda como criar um pipeline de ingestão gerenciado para importar dados do HubSpot para o Databricks.

Requisitos

Para criar um pipeline de ingestão, você deve atender aos seguintes requisitos:

  • Seu workspace deve estar habilitado para o Unity Catalog.

  • compute sem servidor (serverless compute) deve estar habilitado para seu workspace. Consulte os requisitos compute sem servidor.

  • Se você planeja criar uma nova conexão: Você deve ter privilégios CREATE CONNECTION no metastore.

    Se o conector suportar a criação pipeline baseada em interface de usuário, um administrador poderá criar a conexão e o pipeline simultaneamente, concluindo os passos desta página. No entanto, se os usuários que criam pipelines utilizarem a criação pipeline baseada em API ou não forem administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Consulte Conectar para gerenciar fontes de ingestão.

  • Se você planeja usar uma conexão existente: Você deve ter privilégios USE CONNECTION ou ALL PRIVILEGES no objeto de conexão.

  • Você deve ter privilégios USE CATALOG no catálogo de destino.

  • Você deve ter privilégios USE SCHEMA e CREATE TABLE em um esquema existente ou privilégios CREATE SCHEMA no catálogo de destino.

Para importar dados do HubSpot, você deve concluir os passos descritos em Configurar OAuth para importação de dados do HubSpot.

Crie um pipeline de ingestão.

Você pode implantar um pipeline de ingestão usando Databricks ativo Bundles. Os pacotes podem conter definições YAML de Job e tarefa, são gerenciados usando a CLI Databricks e podem ser compartilhados e executados em diferentes espaços de trabalho de destino (como desenvolvimento, teste e produção). Para mais informações, consulte O que são pacotes Databricks ativos?.

  1. Crie um novo pacote usando a CLI do Databricks:

    Bash
    databricks bundle init
  2. Adicione dois novos arquivos de recursos ao pacote:

    • Um arquivo de definição de pipeline (resources/hubspot_pipeline.yml).
    • Um arquivo de fluxo de trabalho que controla a frequência de ingestão de dados (resources/hubspot_job.yml).

    Consulte Valores a serem modificados e definição de pipeline padrão.

  3. Implante o pipeline usando a CLI Databricks :

    Bash
    databricks bundle deploy

Valores a serem modificados

Valor

Descrição

name

Um nome único para o pipeline.

connection_name

O nome da conexão do Unity Catalog que armazena os detalhes de autenticação do HubSpot.

source_schema

O nome do esquema que contém os dados que você deseja importar.

source_table

O nome da tabela que você deseja importar.

destination_catalog

O nome do catálogo no qual você deseja escrever no Databricks.

destination_schema

O nome do esquema no qual você deseja gravar no Databricks.

destination_table

Opcional. Um nome único para a tabela na qual você deseja gravar dados no Databricks. Caso você não forneça essa informação, o conector usará automaticamente o nome da tabela de origem.

definição de dutos

Estes são os padrões para uso com pacotes ativos Databricks . Segue abaixo um exemplo de arquivo resources/hubspot_pipeline.yml :

YAML
resources:
pipelines:
pipeline_hubspot:
name: <pipeline>
catalog: <destination-catalog>
target: <destination-schema>
ingestion_definition:
connection_name: <connection>
objects:
- table:
source_schema: <source-schema>
source_table: <source-table>
destination_catalog: <destination-catalog>
destination_schema: <destination-schema>
destination_table: <destination-table>

Segue abaixo um exemplo de arquivo resources/hubspot_job.yml :

YAML
resources:
jobs:
hubspot_dab_job:
name: hubspot_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: <pipeline-id>

Padrões comuns

Para obter detalhes sobre configurações avançadas pipeline , consulte Padrões comuns para gerenciar pipeline de ingestão.

Recursos adicionais