O Alibaba Cloud Data Lake Formation (DLF) é uma plataforma totalmente gerenciada que oferece serviços unificados de gerenciamento de metadados, armazenamento, permissões, análise e otimização. O DataWorks Data Integration permite gravar dados em fontes de dados do DLF. Este tópico explica como configurar e usar uma fonte de dados do Data Lake Formation no DataWorks.
Limitações
Use a fonte de dados do Data Lake Formation apenas no Data Integration e com grupos de recursos serverless.
Crie uma fonte de dados
-
Acesse o console do DataWorks. Na região de destino, clique em no painel de navegação à esquerda. Selecione um workspace na lista suspensa e clique em Go to Management Center.
Na página Workspace Management, clique em Data Sources no painel de navegação à esquerda para abrir a página de fontes de dados.
-
Clique em Add Data Source. Na caixa de diálogo exibida, pesquise e selecione DLF. Configure os parâmetros conforme a tabela a seguir.
Parâmetro
Descrição
Data Source Name
Insira um nome personalizado para a fonte de dados. O nome deve ser exclusivo no workspace, conter apenas letras, dígitos e underscores (_), e não pode começar com dígito ou underscore.
Configuration Mode
Há suporte apenas para o Alibaba Cloud Instance Mode.
Endpoint
Selecione o endpoint da instância do mecanismo DLF na lista suspensa.
Access identity
Selecione uma das opções a seguir:
-
Alibaba Cloud Account
-
Alibaba Cloud RAM User
-
Alibaba Cloud RAM Role
NotaSe você selecionar RAM user ou RAM role como identidade de acesso, conceda as seguintes permissões ao usuário ou função RAM:
-
No RAM console, anexe a política de sistema AliyunDataWorksDIAccessDLF ao RAM user ou RAM role para conceder permissões de acesso aos metadados do DLF. Para obter mais informações, consulte Conceder permissões a um usuário RAM.
-
No console do Data Lake Formation, conceda a permissão Data Editor ao RAM role ou RAM user nas tabelas a serem sincronizadas.
DLF data catalog
Selecione um catálogo de dados do DLF na mesma região do seu workspace do DataWorks.
Database Name
Selecione um banco de dados no catálogo de dados.
Após configurar os parâmetros, teste a conectividade com o grupo de recursos serverless. Se o teste for bem-sucedido, clique em Complete Modification. Em caso de falha, consulte Configuração de conectividade de rede para solucionar o problema.
-
Crie uma tarefa do Data Integration
Use uma fonte de dados do Data Lake Formation em tarefas do DataWorks Data Integration. Para obter mais informações, consulte Sincronizar dados para o Data Lake Formation.
Apêndice: Exemplos de scripts e parâmetros
Configuração de script para tarefas offline
Ao configurar uma tarefa offline no editor de código, adicione os parâmetros ao script da tarefa no formato exigido. Para obter mais informações, consulte Configurar uma tarefa no editor de código. As seções a seguir descrevem os parâmetros de fonte de dados disponíveis no editor de código.
Exemplo de script do Reader
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "dlf",
"parameter": {
"datasource": "guxuan_dlf",
"table": "auto_ob_3088545_0523",
"column": [
"id",
"col1",
"col2",
"col3"
],
"tableType": "table",
"where": "id > 1"
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "stream",
"parameter": {
"print": false
},
"name": "Writer",
"category": "writer"
}
],
"setting": {
"errorLimit": {
"record": "" // The number of error records that are allowed.
},
"speed": {
"throttle": true, // Set to true to enable rate limiting. If set to false, rate limiting is disabled and the mbps parameter is ignored.
"concurrent": 20, // The number of concurrent threads.
"mbps": "12" // The maximum data transfer rate. Unit: MB/s.
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}
Parâmetros do script do Reader
|
Parâmetro |
Descrição |
Obrigatório |
Padrão |
|
datasource |
Nome da fonte de dados DLF. |
Sim |
N/A |
|
table |
Nome da tabela de origem. |
Sim |
N/A |
|
tableType |
Tipo da tabela. Valores válidos: |
Não |
table |
|
column |
Nomes das colunas a serem lidas da tabela de origem. |
Sim |
N/A |
|
where |
Condição de filtro. |
Não |
N/A |
Exemplo de script do Writer
{
"type": "job",
"version": "2.0",
"steps": [
{
"stepType": "stream",
"parameter": {
},
"name": "Reader",
"category": "reader"
},
{
"stepType": "dlf",
"parameter": {
"datasource": "guxuan_dlf",
"column": [
"id",
"col1",
"col2",
"col3"
],
"tableType": "table",
"table": "auto_ob_3088545_0523"
},
"name": "Writer",
"category": "writer"
}
],
"setting": {
"errorLimit": {
"record": "" // The number of error records that are allowed.
},
"speed": {
"throttle": true, // Set to true to enable rate limiting. If set to false, rate limiting is disabled and the mbps parameter is ignored.
"concurrent": 20, // The number of concurrent threads.
"mbps": "12" // The maximum data transfer rate. Unit: MB/s.
}
},
"order": {
"hops": [
{
"from": "Reader",
"to": "Writer"
}
]
}
}
Parâmetros do script do Writer
|
Parâmetro |
Descrição |
Obrigatório |
Padrão |
|
datasource |
Nome da fonte de dados DLF. |
Sim |
N/A |
|
table |
Nome da tabela de destino. |
Sim |
N/A |
|
tableType |
Tipo da tabela. Valores válidos: |
Não |
table |
|
column |
Colunas na tabela de destino. |
Sim |
N/A |