Criar um pipeline de ingestão do ServiceNow
Este artigo descreve como criar uma ingestão do ServiceNow pipeline usando Databricks LakeFlow Connect.
Antes de começar
Para criar um pipeline de ingestão, o senhor deve atender aos seguintes requisitos:
- 
Seu workspace deve estar habilitado para o Unity Catalog. 
- 
O compute sem servidor deve estar habilitado para o seu workspace. Consulte os requisitos do compute sem servidor. 
- 
Se você planeja criar uma nova conexão: você deve ter privilégios CREATE CONNECTIONna metastore.Se o conector oferecer suporte à criação pipeline baseada em interface de usuário, um administrador poderá criar a conexão e o pipeline ao mesmo tempo, concluindo os passos nesta página. No entanto, se os usuários que criam o pipeline usarem a criação pipeline baseada em API ou não forem usuários administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Veja Conectar às fontes de ingestão de gerenciar. 
- 
Se você planeja usar uma conexão existente: você deve ter privilégios USE CONNECTIONouALL PRIVILEGESno objeto de conexão.
- 
Você deve ter privilégios USE CATALOGno catálogo de destino.
- 
Você deve ter privilégios USE SCHEMAeCREATE TABLEem um esquema existente ou privilégiosCREATE SCHEMAno catálogo de destino.
Para ingerir a partir do ServiceNow, consulte Configurar o ServiceNow para ingestão do Databricks.
Criar o pipeline de ingestão
Permissões necessárias: USE CONNECTION ou ALL PRIVILEGES em uma conexão.
Esta etapa descreve como criar o pipeline de ingestão. Cada tabela ingerida é gravada em uma tabela de transmissão com o mesmo nome.
- Databricks UI
- Databricks notebook
- Databricks CLI
- 
Na barra lateral do site Databricks workspace, clique em ingestão de dados . 
- 
Na página Adicionar dados , em Conectores do Databricks , clique em ServiceNow . O assistente de ingestão é aberto. 
- 
Na página Ingestion pipeline (Pipeline de ingestão ) do assistente, digite um nome exclusivo para o pipeline. 
- 
No menu suspenso Catálogo de destino , selecione um catálogo. Os dados ingeridos e o evento logs serão gravados nesse catálogo. Você selecionará um esquema de destino posteriormente. 
- 
Selecione a conexão do Unity Catalog que armazena as credenciais necessárias para acessar os dados de origem. Se não houver conexões existentes com a origem, clique em Create connection (Criar conexão ) e insira os detalhes de autenticação que o senhor obteve em Configure ServiceNow for Databricks ingestion (Configurar ingestão do ServiceNow para Databricks). Você deve ter privilégios CREATE CONNECTIONna metastore.
- 
Clique em Create pipeline (Criar pipeline) e continue . 
- 
Na página Origem , selecione as tabelas a serem ingeridas e clique em Avançar . Se você selecionar Todas as tabelas , o conector gravará todas as tabelas existentes e futuras no esquema de origem no esquema de destino. Há um máximo de 250 mesas por pipeline. 
- 
Na página Destination (Destino ), selecione o catálogo e o esquema do Unity Catalog para gravar. Se você não quiser usar um esquema existente, clique em Criar esquema . Você deve ter privilégios USE CATALOGeCREATE SCHEMAno catálogo principal.
- 
Clique em Save pipeline (Salvar pipeline) e continue . 
- 
(Opcional) Na página Settings (Configurações ), clique em Create programar (Criar programa ). Defina a frequência para refresh as tabelas de destino. 
- 
(Opcional) Defina as notificações do site email para o sucesso ou fracasso das operações do pipeline. 
- 
Clique em Save e execute pipeline . 
- 
Gere um access token pessoal e copie os tokens para poder colá-los em um Notebook mais tarde. Consulte Criar access tokens pessoais para usuários workspace. 
- 
Importe o seguinte Notebook para o site workspace: 
Criar um pipeline de ingestão do ServiceNow
- 
Modifique os seguintes valores no Notebook: Célula 1: - api_token: Os tokens de acesso pessoal que o senhor gerou
 Célula 3: - 
name: Um nome para o pipeline
- 
connection_name: O nome da conexão do Unity Catalog que o senhor criou no Catalog Explorer (Catalog > External data > Connections ). Se você não tiver uma conexão existente com a fonte, poderá criar uma. Você deve ter o privilégioCREATE CONNECTIONna metastore.
- 
source_table: O nome da tabela de origem
- 
destination_catalog: um nome para o catálogo de destino que conterá os dados ingeridos
- 
destination_schema: um nome para o esquema de destino que conterá os dados ingeridos
- 
scd_type: O método SCD a ser usado:SCD_TYPE_1ouSCD_TYPE_2.
- 
include_columns: opcionalmente, especifique uma lista de colunas a serem incluídas para ingestão. Se o senhor usar essa opção para incluir colunas explicitamente, o pipeline excluirá automaticamente as colunas que forem adicionadas à origem no futuro. Para ingerir as colunas futuras, você precisará adicioná-las à lista.
- 
exclude_columns: opcionalmente, especifique uma lista de colunas a serem excluídas da ingestão. Se o senhor usar essa opção para excluir explicitamente as colunas, o pipeline incluirá automaticamente as colunas que forem adicionadas à origem no futuro. Para ingerir as colunas futuras, você precisará adicioná-las à lista.Para obter mais informações, consulte Enable história acompanhamento (SCD type 2). 
 
- 
Clique em Executar tudo . 
O senhor pode usar as seguintes propriedades de configuração de tabela na definição do pipeline para selecionar ou desmarcar colunas específicas para ingestão:
- include_columns: opcionalmente, especifique uma lista de colunas a serem incluídas para ingestão. Se o senhor usar essa opção para incluir colunas explicitamente, o pipeline excluirá automaticamente as colunas que forem adicionadas à origem no futuro. Para ingerir as colunas futuras, você precisará adicioná-las à lista.
- exclude_columns: opcionalmente, especifique uma lista de colunas a serem excluídas da ingestão. Se o senhor usar essa opção para excluir explicitamente as colunas, o pipeline incluirá automaticamente as colunas que forem adicionadas à origem no futuro. Para ingerir as colunas futuras, você precisará adicioná-las à lista.
Para criar o pipeline:
databricks pipelines create --json "<pipeline definition or json file path>"
Para editar o pipeline:
databricks pipelines update --json "<pipeline definition or json file path>"
Para obter a definição do pipeline:
databricks pipelines get "<pipeline-id>"
Para excluir o pipeline:
databricks pipelines delete "<pipeline-id>"
Para obter mais informações, execute:
databricks pipelines --help
databricks pipelines <create|update|get|delete|...> --help
Exemplo de definição de pipeline JSON:
"ingestion_definition": {
     "connection_name": "<connection-name>",
     "objects": [
       {
         "table": {
           "source_schema": "<source-schema>",
           "source_table": "<source-table>",
           "destination_catalog": "<destination-catalog>",
           "destination_schema": "<destination-schema>",
           "table_configuration": {
              "scd_type": "SCD_TYPE_2",
              "include_columns": ["<column-a>", "<column-b>", "<column-c>"]
           }
         }
       }
     ]
 }