Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Importante
Esse recurso está em Beta. Para usá-lo, um administrador de espaço de trabalho deve ativar o Workday Data Connect Connector na página de Prévias . Consulte Gerenciar visualizações do Azure Databricks.
Use a federação do catálogo do Workday Data Connect para ler tabelas do Workday Data Connect diretamente do armazenamento em nuvem e adicioná-las ao Unity Catalog como tabelas estrangeiras. As consultas são executadas inteiramente nos recursos computacionais do Azure Databricks, para que as equipes de dados possam descobrir, governar e consultar essas tabelas no Azure Databricks sem criar pipelines de ETL. O acesso a dados é somente leitura.
O Azure Databricks autentica no catálogo Workday Data Connect como um Usuário do Sistema de Integração Workday (ISU) que você registra como principal, usando OAuth com chave privada.
A Workday chama esse produto de Workday Data Lake. A documentação dos parceiros, incluindo esta página, é chamada de Workday Data Connect.
Para saber mais sobre a federação de catálogos, veja O que é federação de catálogo?.
Note
Esse conector não ingere nem copia dados no Azure Databricks e não está relacionado aos conectores de ingestão do Lakeflow Connect do Workday. Para ingerir dados do Workday no Azure Databricks em vez disso, consulte o conector Workday Reports ou o conector Workday HCM.
Requirements
Revise os seguintes requisitos antes de configurar a federação do catálogo Workday Data Connect.
Requisitos de área de trabalho:
- O workspace deve ser habilitado para o Unity Catalog. Consulte Introdução ao Catálogo do Unity.
Requisitos de computação:
- O computo do Azure Databricks deve usar Databricks Runtime 19.8 ou superior e o modo de acesso padrão. Não há suporte para o modo de acesso dedicado.
Requisitos de rede:
- Conectividade de rede do Azure Databricks para o ponto de extremidade do catálogo do Workday Data Connect em
https://<workday-host>/api/catalog. Você não precisa permitir listar endereços IP do Azure Databricks no Workday.
Permissões necessárias:
- Para criar uma conexão, você deve ser um administrador do metastore ou um usuário com o privilégio
CREATE CONNECTIONno metastore do Unity Catalog anexado ao workspace. - Para criar um catálogo estrangeiro, você deve ter a permissão
CREATE CATALOGno metastore e ser o proprietário da conexão ou ter o privilégioCREATE FOREIGN CATALOGna conexão.
Requisitos do dia de trabalho:
- Workday Data Connect habilitado para o seu tenant do Workday, com as tabelas que você deseja consultar compartilhadas por meio do catálogo REST do Iceberg. Veja Comece com o Workday Data Lake.
- Um Usuário do Sistema de Integração Workday (ISU) registrado como principal no catálogo Workday Data Connect, uma função principal para essa ISU que concede acesso de leitura às tabelas compartilhadas, e um par de chaves RSA para esse principal. Para registrar o cliente API, veja Registrar Cliente API para Data Lake (JWT Bearer Grant).
Passo 1: Criar uma conexão
Uma conexão especifica o endpoint e as credenciais que o Azure Databricks usa para se comunicar com o catálogo do Workday Data Connect.
Para criar uma conexão, use o Explorador de Catálogos ou o CREATE CONNECTION comando SQL:
Gerenciador de Catálogos
Para criar a conexão:
- No workspace Azure Databricks, clique em
Catalog.
- Na parte superior do painel Catálogo, clique no
e selecione Criar uma conexão no menu. - Na página de noções básicas da Conexão , insira um nome da Conexão.
- Selecione um tipo de conexão do Workday Data Connect.
- Clique em Próximo.
- Na página de detalhes da conexão , insira os seguintes valores:
-
Host: O nome do host do seu endpoint do Workday Data Connect, por exemplo
mycompany.myworkday.com. - Tenant: Seu tenant do Workday.
- ID do cliente: ID do cliente da API Workday.
- Chave privada: Uma chave privada RSA em formato PEM.
- Nome do principal: O nome da ISU que você registrou como nome principal do catálogo.
-
Papel principal: O papel principal do Workday que escopa o acesso de leitura às tabelas compartilhadas. O padrão é
ALL. Para restringir o acesso, defina uma função específica, por exemploall-reads-role.
-
Host: O nome do host do seu endpoint do Workday Data Connect, por exemplo
SQL
Execute o seguinte comando em um notebook ou no editor de consultas SQL do Databricks:
CREATE CONNECTION <connection-name> TYPE WORKDAY_DATA_CONNECT
OPTIONS (
host '<workday-host>',
tenant '<workday-tenant>',
client_id '<client-id>',
private_key secret('<secret-scope>','<secret-key>'),
principal_name '<isu-name>',
principal_role '<principal-role>'
);
-
host: O nome do host do seu endpoint do Workday Data Connect, por exemplo,mycompany.myworkday.com. -
tenant: Seu locatário do Workday. -
client_id: ID do cliente da API do Workday. -
private_key: Uma chave privada RSA no formato PEM. O Databricks recomenda que você armazene isso como segredo. -
principal_name: O nome da ISU que você registrou como principal do catálogo. -
principal_role: A função principal do Workday que define o acesso de leitura às tabelas compartilhadas. O padrão éALL. Para restringir o acesso, defina uma função específica, por exemploall-reads-role.
O Databricks recomenda que você use segredos em vez de strings de texto simples para valores sensíveis como a chave privada. Para informações sobre como criar segredos, veja Gestão de segredos.
Passo 2: Criar um catálogo estrangeiro
Um catálogo estrangeiro espelha o catálogo do Workday Data Connect no Unity Catalog, assim você pode usar o Unity Catalog para gerenciar o acesso às tabelas Workday e consultá-las a partir do cálculo do Azure Databricks.
Para criar um catálogo estrangeiro, você pode usar o Explorador de Catálogos, o CREATE FOREIGN CATALOG comando SQL em um caderno ou o editor de consultas SQL do Databricks.
Gerenciador de Catálogos
- No workspace Azure Databricks, clique em
Catalog.
- Na parte superior do painel Catálogo , clique no ícone
ícone e selecione Criar um catálogo no menu. - No diálogo Criar um novo catálogo , insira um nome para o catálogo.
- Selecione um tipo de estrangeiro.
- Selecione a Conexão que você criou no Passo 1.
- Para localização de armazenamento, insira o caminho de armazenamento em nuvem onde o Azure Databricks armazena metadados para as tabelas federadas.
- Clique em Criar.
SQL
Execute o comando a seguir em um notebook ou no editor de SQL do Databricks. Os itens entre colchetes são opcionais.
CREATE FOREIGN CATALOG [IF NOT EXISTS] <catalog-name>
USING CONNECTION <connection-name>
OPTIONS (storage_root '<storage-root-path>');
-
storage_root:Necessário. Um caminho de localização externo onde o Azure Databricks pode escrever. O Azure Databricks usa esse local para armazenar metadados das tabelas federadas. Os dados da tabela Workday não são copiados para esse local.
O catálogo estrangeiro sempre reflete todo o catálogo do Workday Data Connect ao qual suas credenciais concedem acesso. Para definir o que está visível, defina um principal_role que conceda acesso de leitura apenas às tabelas que você deseja ao criar a conexão.
Passo 3: Conceder permissões e consultar o catálogo
Após criar o catálogo estrangeiro, os usuários precisam das permissões apropriadas do Catálogo Unity para acessar as tabelas federadas:
- Todos os usuários precisam de permissões
USE CATALOGeUSE SCHEMAno catálogo e no esquema, respectivamente. - Para ler de uma tabela federada, os usuários precisam da
SELECTpermissão.
Para obter mais informações sobre privilégios do Catálogo do Unity e como concedê-los, consulte Gerenciar privilégios no Catálogo do Unity.
Por exemplo, execute os seguintes comandos em um notebook ou no editor de consultas SQL do Databricks:
GRANT USE CATALOG ON CATALOG <catalog-name> TO `<principal>`;
GRANT USE SCHEMA ON SCHEMA <catalog-name>.<schema-name> TO `<principal>`;
GRANT SELECT ON TABLE <catalog-name>.<schema-name>.<table-name> TO `<principal>`;
Usuários com essas permissões podem então consultar as tabelas federadas usando notação de namespace de três níveis:
SELECT * FROM <catalog-name>.<schema-name>.<table-name>;
Mapeamento de namespace
O Unity Catalog espelha a hierarquia de objetos do Workday Data Connect da seguinte forma:
| Objeto Workday Data Connect | Objeto do Catálogo do Unity |
|---|---|
| Catálogo | Catálogo externo |
| Namespace | Esquema |
| Tabela | Tabela externa |
O Workday Data Connect expõe nomes simples de três níveis que correspondem diretamente à hierarquia do Unity Catalog catalog.schema.table. Não há aninhamento adicional de namespace.
Limitações
A federação de catálogos Workday Data Connect possui as seguintes limitações:
- O conector só pode acessar tabelas Iceberg compartilhadas por meio do catálogo Workday Data Connect.
- Nomes de esquemas e tabelas seguem as limitações padrão de nomeação do Unity Catalog. Azure Databricks não suporta nomes que contenham ponto (
.), espaço () ou barra para frente (/). Consulte os requisitos de nomenclatura de objeto protegível.