Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Importante
Este recurso está em versão Beta. Para o utilizar, um administrador de espaço de trabalho deve ativar o Workday Data Connect Connector a partir da página de Pré-visualizações . Ver Gerir as pré-visualizações de Azure Databricks.
Use a federação do catálogo Workday Data Connect para ler tabelas do Workday Data Connect diretamente a partir do armazenamento na cloud e adicioná-las ao Unity Catalog como tabelas estrangeiras. As consultas são executadas inteiramente nos recursos de computação do Azure Databricks, pelo que as equipas de dados podem descobrir, gerir e consultar estas tabelas no Azure Databricks sem criar pipelines de ETL. O acesso aos dados é apenas de leitura.
O Azure Databricks autentica-se ao catálogo Workday Data Connect como um Utilizador do Sistema de Integração Workday (ISU) que regista como principal, usando OAuth com chave privada.
A Workday chama a este produto Workday Data Lake. A documentação dos parceiros, incluindo esta página, chama-lhe Workday Data Connect.
Para saber mais sobre a federação de catálogos, consulte O que é federação de catálogo?.
Note
Este conector não ingere nem copia dados para o Azure Databricks, e não está relacionado com os conectores de ingestão do Lakeflow Connect para o 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 do espaço de trabalho:
- O espaço de trabalho deve estar habilitado para o Catálogo Unity. Consulte Introdução ao Catálogo Unity.
Requisitos de computação:
- O Azure Databricks compute deve usar Databricks Runtime 19.8 ou superior e o modo de acesso padrão. O modo de acesso dedicado não é suportado.
Requisitos de rede:
- Conectividade de rede a partir do Azure Databricks para o endpoint do seu catálogo do Workday Data Connect em
https://<workday-host>/api/catalog. Não precisas de permitir a lista de endereços IP do Azure Databricks no Workday.
Permissões necessárias:
- Para criar uma conexão, você deve ser um administrador de metastore ou um usuário com o privilégio de
CREATE CONNECTIONno metastore do Unity Catalog anexado ao espaço de trabalho. - 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égio deCREATE FOREIGN CATALOGna conexão.
Requisitos do dia de trabalho:
- Workday Data Connect ativado para a sua instância Workday, com as tabelas que pretende consultar partilhadas através do respetivo catálogo REST Iceberg. Veja Comece com o Workday Data Lake.
- Um Utilizador do Sistema de Integração Workday (ISU) registado como principal no catálogo do Workday Data Connect, uma função principal para esse ISU que concede acesso de leitura às tabelas partilhadas e um par de chaves RSA para esse principal. Para registar o cliente API, consulte Registar Cliente API para Data Lake (JWT Bearer Grant).
Passo 1: Criar uma ligação
Uma ligação especifica o endpoint e as credenciais que o Azure Databricks utiliza para comunicar com o catálogo Workday Data Connect.
Para criar uma ligação, use o Explorador de Catálogo ou o CREATE CONNECTION comando SQL:
Explorador de Catálogos
Para criar a ligação:
- No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
- No topo do painel Catálogo, clique no
e selecione Criar uma ligação no menu. - Na página de noções básicas da Ligação , introduza um nome da Ligação.
- Selecione um tipo de conexão de Workday Data Connect.
- Clique em Next.
- Na página de detalhes da ligação , introduza os seguintes valores:
-
Host: O nome do host do seu endpoint Workday Data Connect, por exemplo
mycompany.myworkday.com. - Tenant: O seu tenant do Workday.
- ID do cliente: ID do cliente da API Workday.
- Chave privada: Uma chave privada RSA em formato PEM.
- Nome da entidade principal: O nome da ISU que registou como entidade principal do catálogo.
-
Papel principal: O papel principal do Workday que gere o acesso de leitura às tabelas partilhadas. A predefinição é
ALL. Para reduzir o âmbito do acesso, defina um papel específico, por exemploall-reads-role.
-
Host: O nome do host do seu endpoint Workday Data Connect, por exemplo
SQL
Execute o seguinte comando em um bloco de anotações ou no editor de consultas Databricks SQL:
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 anfitrião do seu ponto final do Workday Data Connect, por exemplomycompany.myworkday.com. -
tenant: O teu inquilino Workday. -
client_id: ID do cliente da API Workday. -
private_key: Uma chave privada RSA em formato PEM. O Databricks recomenda que o guarde como segredo. -
principal_name: O nome da ISU que registou como entidade principal do catálogo. -
principal_role: A função principal do Workday que define o âmbito do acesso de leitura às tabelas partilhadas. A predefinição éALL. Para reduzir o âmbito do acesso, defina um papel específico, por exemploall-reads-role.
O Databricks recomenda que use segredos em vez de strings de texto simples para valores sensíveis como a chave privada. Para informações sobre como criar segredos, consulte Gestão de segredos.
Passo 2: Criar um catálogo estrangeiro
Um catálogo estrangeiro espelha o catálogo Workday Data Connect no Unity Catalog, para que possas usar o Unity Catalog para gerir o acesso às tabelas Workday e consultá-las a partir do Azure Databricks compute.
Para criar um catálogo estrangeiro, pode usar o Explorador de Catálogos, o CREATE FOREIGN CATALOG comando SQL num caderno ou o editor de consultas SQL do Databricks.
Explorador de Catálogos
- No seu espaço de trabalho do Azure Databricks, clique no
Catálogo.
- No topo do painel de Catálogo, clique no
e selecione Criar um catálogo no menu. - No diálogo Criar um novo catálogo , introduza um nome para o catálogo.
- Selecione um tipo de estrangeiro.
- Selecione a Ligação que criou no Passo 1.
- Para localização de armazenamento, introduza o caminho de armazenamento na cloud onde o Azure Databricks armazena metadados para as tabelas federadas.
- Clique em Criar.
SQL
Execute o seguinte comando em um bloco de anotações ou no editor de consultas Databricks SQL. Os itens entre parênteses 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 utiliza esta localização para armazenar metadados para as tabelas federadas. Os dados da tabela Workday não são copiados para este local.
O catálogo estrangeiro espelha sempre todo o catálogo do Workday Data Connect ao qual as suas credenciais dão acesso. Para restringir o que fica visível, define um principal_role que conceda acesso de leitura apenas às tabelas que pretendes ao criar a ligação.
Passo 3: Conceder permissões e consultar o catálogo
Depois de criar o catálogo estrangeiro, os utilizadores precisam das permissões apropriadas do Catálogo Unity para aceder às tabelas federadas:
- Todos os utilizadores precisam de permissões
USE CATALOGno catálogo eUSE SCHEMAno esquema, respetivamente. - Para ler a partir de uma tabela federada, os utilizadores precisam da
SELECTpermissão.
Para mais informações sobre privilégios do Catálogo Unity e como os conceder, consulte Gerir privilégios no Catálogo Unity.
Por exemplo, execute os seguintes comandos num caderno 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>`;
Os utilizadores com estas 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 espaços de nomes
O Unity Catalog espelha a hierarquia de objetos do Workday Data Connect da seguinte forma:
| Objeto Workday Data Connect | Objeto do Unity Catalog |
|---|---|
| Catalog | Catálogo estrangeiro |
| Namespace | Schema |
| Table | Tabela externa |
O Workday Data Connect expõe nomes planos de três níveis que correspondem diretamente à hierarquia do Unity Catalog catalog.schema.table . Não há nenhum aninhamento adicional de namespace.
Limitations
A federação do catálogo Workday Data Connect tem as seguintes limitações:
- O conector só pode aceder a tabelas Iceberg partilhadas através do catálogo Workday Data Connect.
- Os nomes de esquemas e tabelas seguem as limitações padrão de nomeação do Unity Catalog. O Azure Databricks não suporta nomes que contenham um ponto (
.), espaço () ou barra adicional (/). Consulte Requisitos de nomeação de objetos securáveis.