Ingerir dados do Okta
Beta
Esse recurso está em Beta. Para usá-lo, um administrador do workspace deve ativar Lakeflow Connect para logs de sistema do Okta na página Pré-visualizações . Consulte Gerenciar prévias do Databricks.
Use Declarative Automation Bundles or a Databricks notebook to create a managed Okta System Logs pipeline for the system_logs source table.
Requisitos
-
Para criar um pipeline de ingestão, primeiro atenda aos seguintes requisitos:
-
Seu workspace deve estar habilitado para o Unity Catalog.
-
O compute Serverless deve estar habilitado para o seu workspace. Consulte Serverless compute requirements.
-
Para criar uma nova conexão, você deve ter privilégios
CREATE CONNECTIONno metastore. Consulte Gerenciar privilégios no Unity Catalog.Se o conector for compatível com a criação de pipeline baseada em interface do usuário, um administrador poderá criar a conexão e o pipeline ao mesmo tempo executando os passos desta página. No entanto, se os usuários que criam pipelines usarem a criação de pipeline baseada em API ou forem usuários não administradores, um administrador deverá primeiro criar a conexão no Catalog Explorer. Consulte Conectar-se a fontes de ingestão gerenciadas.
-
Para usar uma conexão existente, você deve ter os privilégios
USE CONNECTIONouALL PRIVILEGESno objeto de conexão. -
Você deve ter privilégios
USE CATALOGno catálogo de destino. -
You must have
USE SCHEMAandCREATE TABLEprivileges on an existing schema orCREATE SCHEMAprivileges on the target catalog.
-
-
Configure authentication from Databricks and create a connection. See Configure authentication to Okta and Create an Okta System Logs connection.
-
Use
default.system_logsas the source object. For details, see Supported source tables.
Connector options
O conector Okta System Logs não define opções de pipeline específicas do conector. Para obter configurações de conexão, consulte Connection options.
Criar um pipeline de ingestão
Crie o pipeline com os Pacotes de Automação Declarativa ou um notebook do Databricks. Enquanto o conector estiver em Beta, defina o canal do pipeline como PREVIEW.
- Declarative Automation Bundles
- Databricks notebook
Use Declarative Automation Bundles to gerenciar Okta System Logs pipelines as code. Bundles can contain YAML definitions of pipelines and jobs, are gerenciados using the Databricks CLI, and can be shared across development, staging, and production workspaces. For more information, see What are Declarative Automation Bundles?.
-
Crie um pacote usando a CLI do Databricks:
Bashdatabricks bundle init -
Adicione um arquivo de definição de pipeline, como o
resources/okta_system_logs_pipeline.yml. Veja pipeline.ingestion_definition e Exemplos. -
Adicione um arquivo de definição de job, como
resources/okta_system_logs_job.yml, para programar o pipeline. -
Implante o pipeline usando a CLI do Databricks:
Bashdatabricks bundle deploy
- Importe o seguinte notebook para o seu workspace do Databricks:
-
Não edite as células de configuração. Edite apenas a última célula, que cria o pipeline. Consulte pipeline.ingestion_definition e Exemplos.
-
Opcionalmente, configure as configurações avançadas do pipeline. Veja Padrões comuns para pipelines de ingestão gerenciados.
-
Clique em Executar tudo .
Exemplos
O conector Okta System Logs disponibiliza a tabela de origem system_logs no esquema de origem default.
- Declarative Automation Bundles
- Databricks notebook
O seguinte arquivo de definição de pipeline ingere a tabela system_logs:
resources:
pipelines:
okta_system_logs_pipeline:
name: okta_system_logs_pipeline
channel: PREVIEW
catalog: 'main'
target: 'okta_system_logs_pipeline'
ingestion_definition:
connection_name: okta_system_logs_connection
objects:
- table:
source_schema: 'default'
source_table: 'system_logs'
destination_catalog: 'main'
destination_schema: 'okta_system_logs_data'
destination_table: 'system_logs'
A seguinte especificação de pipeline ingere a tabela system_logs:
pipeline_name = "okta_system_logs_pipeline"
connection_name = "<okta-system-logs-connection>"
pipeline_spec = {
"name": pipeline_name,
"channel": "PREVIEW",
"catalog": "main",
"schema": "okta_system_logs_pipeline",
"ingestion_definition": {
"connection_name": connection_name,
"objects": [
{
"table": {
"source_schema": "default",
"source_table": "system_logs",
"destination_catalog": "main",
"destination_schema": "okta_system_logs_data",
"destination_table": "system_logs",
}
}
],
},
}
json_payload = json.dumps(pipeline_spec, indent=2)
create_pipeline(json_payload)
Arquivo de definição de job dos Pacotes de Automação Declarativa
A seguinte definição de job executa o pipeline de ingestão diariamente:
- Declarative Automation Bundles
resources:
jobs:
okta_system_logs_job:
name: okta_system_logs_job
schedule:
quartz_cron_expression: '0 0 0 * * ?'
timezone_id: 'UTC'
tasks:
- task_key: okta_system_logs_ingestion
pipeline_task:
pipeline_id: ${resources.pipelines.okta_system_logs_pipeline.id}
Padrões comuns
Para configurações de pipeline avançadas, consulte Padrões comuns para pipelines de ingestão gerenciados.
Passos seguintes
Inicie, programe e defina alertas em seu pipeline. Consulte Common pipeline maintenance tarefas.