Consumir e Transformar Dados Usando um Fluxo de Dados

Fluxo de dados é um diagrama lógico que representa o fluxo de dados dos ativos de dados de origem, como um banco de dados ou um arquivo sem formatação, para ativos de dados de destino, como um data lake ou data warehouse.

O fluxo de dados da origem ao destino pode sofrer uma série de transformações para agregar, limpar e moldar os dados. Engenheiros de dados e desenvolvedores de ETL podem analisar ou reunir informações e usar esses dados para tomar decisões de negócios impactantes.

Neste tutorial, você:

  1. Crie um projeto no qual você possa salvar o fluxo de dados.
  2. Adicione os operadores de origem e selecione as entidades de dados a serem usadas no fluxo de dados.
  3. Use operadores de modelagem e aplique transformações.
  4. Identifique o ativo de dados de destino para carregar os dados.

Antes de Começar

Para consumir e transformar dados usando um fluxo de dados, você deve ter o seguinte:

1. Criando um Projeto e um Fluxo de Dados

No Oracle Cloud Infrastructure Data Integration, os fluxos de dados e tarefas só podem ser criados em um projeto ou pasta.

Para criar um projeto e um fluxo de dados:

  1. Na Home page do espaço de trabalho, selecione Projetos.
    Se precisar de ajuda para localizar o espaço de trabalho do Data Integration para trabalhar, consulte Criando e Acessando um Espaço de Trabalho.
  2. Na página Projetos, selecione Criar projeto e, em seguida, Criar novo.
  3. Na página Criar projeto, informe DI_Lab para Nome e, em seguida, selecione Criar.

    Depois de criar um projeto, crie um fluxo para ingerir dados de dois arquivos-fonte, contendo informações dos clientes (CUSTOMERS.json) e das ordens (REVENUE.csv).

  4. Na página DI_Lab de detalhes de projeto, selecione Fluxo de dados no submenu do lado esquerdo.
    Se estiver na página Projetos, selecione DI_Lab para abrir a página Detalhes do Projeto.
  5. Selecione Criar fluxo de dados.

    O designer de fluxo de dados é aberto em uma nova guia.

  6. No painel Propriedades, para Nome, digite Load Customers and Revenue Data.

    O valor do Identificador é gerado automaticamente com base no valor informado para o nome do fluxo de dados. Você pode alterar o valor gerado, mas depois de salvar o fluxo de dados, não terá permissão para atualizar o identificador.

  7. Selecione Criar.

    O designer permanece aberto para você continuar editando.

2. Adicionando Operadores de Origem

Adicione operadores de origem para identificar as entidades de dados a serem usadas para o fluxo de dados. Uma entidade de dados representa uma tabela de banco de dados neste tutorial.

  1. No painel Operadores, solte um operador de Origem na tela.
  2. Na tela, selecione SOURCE_1, se ainda não estiver selecionado.

    O painel Propriedades exibe os detalhes do operador em foco.

  3. Na guia Detalhes do painel Propriedades, clique em Selecionar ao lado de cada uma das seguintes opções para fazer as seleções:
    • Para Ativo de dados, selecione Data_Lake.
    • Para Conexão, selecione Conexão padrão.
    • Para Esquema, selecione o compartimento e, em seguida, o bucket. Para os fins deste tutorial, o Object Storage serve como ativo de dados de origem. É por isso que você seleciona o bucket aqui.
    • Para Entidade de Dados, selecione Procurar por nome e, em seguida, CUSTOMERS.json. Para Tipo de arquivo, selecione JSON.
  4. Quando você conclui as seleções para SOURCE_1, o nome do operador se torna CUSTOMERS_JSON, refletindo a seleção da entidade de dados. No campo Identificador, renomeie o operador de origem como CUSTOMERS.
  5. Repita as etapas de 1 a 3 para adicionar um segundo operador de origem com os seguintes valores:
    • Para Ativo de dados, selecione Data_Lake.
    • Para Conexão, selecione Conexão Padrão.
    • Para Esquema, selecione o compartimento e, em seguida, o bucket. Para os fins deste tutorial, o Object Storage serve como ativo de dados de origem. É por isso que você seleciona o bucket aqui.
    • Para Entidade de dados, selecione REVENUE.csv e, em seguida, selecione CSV para o tipo de arquivo. Aceite os valores padrão para os itens restantes.
  6. Quando você conclui as seleções do segundo operador de origem, o nome do operador torna-se REVENUE_CSV, refletindo a seleção da entidade de dados. No campo Identificador, renomeie o operador de origem como REVENUE.
  7. (Opcional) Selecione Designar parâmetro para impedir que os detalhes da origem sejam vinculados ao código compilado quando você publicar o fluxo de dados.
  8. (Opcional) Na guia Atributos, você pode exibir os atributos da entidade de dados e aplicar regras de exclusão ou renomeação aos atributos em seus respectivos menus de Ações (Menu Ações).
    Você também pode usar o ícone de filtro na coluna Nome ou Tipo para aplicar um ou mais filtros nos atributos a serem excluídos.
  9. (Opcional) Na guia Dados, você pode exibir uma amostra de dados da entidade de dados de origem e aplicar transformações aos dados ou selecionar atributos para exibir um perfil de dados.
  10. (Opcional) Na guia Validação, você pode verificar se há avisos ou erros com a configuração dos operadores de origem.
  11. Para salvar o fluxo de dados e continuar editando, selecione Salvar.

3. Filtrando e Transformando Dados

Filtrando Dados

O operador de Filtro produz um subconjunto de dados de um operador de upstream com base em uma condição.

  1. No painel Operadores, solte um operador de Filtro na tela.
  2. Conecte REVENUE a FILTER_1:
    • Coloque o cursor em REVENUE.
    • Arraste o círculo do conector ao lado de REVENUE.

      Conector para operadores

    • Solte o círculo do conector em FILTER_1.

      Ação de arrastar e soltar entre conectores

  3. Selecione FILTER_1.
  4. No painel Propriedades, selecione Criar ao lado de Condição de filtro.
  5. No painel Criar condição de filtro, digite STA no campo Pesquisar por nome.
  6. Clique duas vezes ou solte ORDER_STATUS para adicioná-lo ao editor de condições de filtro.
  7. No editor de condições, digite ='1-Booked', portanto, a condição é a seguinte:

    FILTER_1.REVENUE_CSV.ORDER_STATUS='1-Booked'

    Observação

    Para evitar problemas com as aspas, não copie e cole.
  8. Selecione Criar.
  9. No painel Operadores, solte um operador Filtro na tela, colocando-o depois de CUSTOMERS.
  10. Conecte CUSTOMERS a FILTER_2:
    • Coloque o cursor em CUSTOMERS.
    • Arraste o círculo do conector no lado direito de CUSTOMERS.
    • Solte o círculo do conector em FILTER_2.
  11. No painel Propriedades de FILTER_2, selecione Criar ao lado de Condição de filtro.
  12. No painel Criar condição de filtro, digite COU no campo Pesquisar por nome.
  13. Clique duas vezes em COUNTRY_CODE para adicioná-lo ao editor de condição.
  14. Informe ='US' para que a condição seja a seguinte:

    FILTER_2.CUSTOMERS_JSON.COUNTRY_CODE='US'

  15. Selecione Criar.
  16. Para salvar o fluxo de dados e continuar editando, selecione Salvar.
Transformando Dados

Usando o Data Xplorer, você pode explorar uma amostra de dados, revisar metadados de perfil e aplicar transformações na guia Dados do painel Propriedades. Os operadores de expressão são adicionados à tela para cada transformação aplicada.

  1. No painel Propriedades de FILTER_2, selecione a guia Dados.
    Todas as linhas de dados e atributos são exibidos. Você pode usar a barra de rolagem vertical para rolar as linhas e a barra de rolagem horizontal para rolar os atributos.
  2. No campo Pesquisar por padrão, digite STATE*.
    O número de atributos na tabela é filtrado. São exibidos somente os atributos correspondentes ao padrão.
  3. Selecione o menu de transformações (menu de transformações) para FILTER_2.CUSTOMERS_JSON.STATE_PROVINCE e selecione Alterar maiúsculas e minúsculas.

    Ícone do menu Transformação

  4. Na caixa de diálogo Change case, no menu Type, selecione Upper.
  5. Não marque a caixa de seleção Manter atributos de origem.
  6. Deixe o Nome como está.
  7. Selecione Aplicar.

    Um operador de expressão é adicionado ao fluxo de dados. No painel Propriedades, a guia Detalhes agora está em foco, mostrando os detalhes do operador de expressão.

    Na tabela Expressões, você pode ver a expressão gerada, UPPER(EXPRESSION_1.CUSTOMERS_JSON.STATE_PROVINCE).

  8. No painel Propriedades do operador de expressão, altere o nome no campo Identificador para CHANGE_CASE.
  9. Selecione a guia Dados e use a barra horizontal de rolagem para rolar até o final.

    CHANGE_CASE.STATE_PROVINCE é adicionado ao final do conjunto de dados. Você pode visualizar os dados transformados para CHANGE_CASE.STATE_PROVINCE na guia Dados.

  10. No painel Operadores, solte o operador de Expressão na tela, colocando-o após CHANGE_CASE.
  11. Conecte CHANGE_CASE ao novo operador EXPRESSION_1.
  12. No painel Propriedades de EXPRESSION_1, selecione Adicionar expressão na tabela Expressões.
  13. No painel Adicionar expressão:
    1. No campo Identificador, renomeie a expressão para FULLNAME.
    2. Mantenha Tipo de dados como VARCHAR.
    3. Defina Comprimento como 200.
    4. Em Construtor de expressão, alterne da lista Entrada para a lista Funções.
    5. No campo Pesquisar por Nome, digite CON. Em seguida, localize CONCAT em String.
    6. Digite CONCAT(CONCAT(EXPRESSION_1.CUSTOMERS_JSON.FIRST_NAME, ' '),EXPRESSION_1.CUSTOMERS_JSON.LAST_NAME)

      Você também pode destacar os placeholders de uma função e clicar duas vezes ou eliminar atributos da lista Entrada para criar uma expressão.

    7. Selecione Adicionar.

    A expressão CONCAT agora é listada na tabela Expressões do operador EXPRESSION_1. Você pode adicionar quantas expressões desejar.

  14. Para salvar o fluxo de dados e continuar editando, selecione Salvar.

4. Associando Dados

Depois de aplicar filtros e transformações, você poderá juntar as entidades de dados de origem usando um identificador de cliente exclusivo e, em seguida, carregar os dados em uma entidade de dados de destino.

  1. Para juntar os dados de EXPRESSION_1 com os dados de FILTER_1, solte um operador de Junção no painel Operadores na tela, colocando-o depois em EXPRESSION_1 e FILTER_1.
  2. Conecte EXPRESSION_1 a JOIN_1. Em seguida, conecte FILTER_1 a JOIN_1.
  3. Com a opção JOIN_1 selecionada, na guia Detalhes do painel Propriedades, selecione Criar ao lado de Condição de associação.
  4. No painel Criar condição de junção, digite CUST no campo Pesquisar por Nome.
    Você deseja unir as entidades usando CUST_ID e CUST_KEY.
  5. No editor, digite JOIN_1_1.CUSTOMERS_JSON.CUST_ID=JOIN_1_2.REVENUE_CSV.CUST_KEY.
  6. Selecione Criar.
  7. Para salvar o fluxo de dados e continuar editando, selecione Salvar.

5. Adicionando um Operador de Destino

  1. No painel Operadores, solte um operador de Alvo na tela.
  2. Conecte JOIN_1 a TARGET_1.
  3. Selecione TARGET_1 na tela, se ela ainda não estiver selecionada.
  4. Na guia Detalhes do painel Propriedades, não marque a caixa de seleção Criar nova entidade de dados.
  5. Em seguida, clique em Selecionar para cada uma das seguintes opções para fazer as seleções de uma entidade de dados:
    • Para Ativo de dados, selecione Data_Warehouse.
    • Para Conexão, selecione Conexão Padrão.
    • Para Esquema, selecione BETA.
    • Para Entidade de dados, selecione CUSTOMERS_TARGET.
  6. Para Local de preparação, selecione o ativo de dados Data Lake, a conexão padrão e o compartimento. Em seguida, para Schema, selecione o bucket do Object Storage que você usou para importar os dados de amostra.
  7. Deixe o valor para Estratégia de integração como Inserir.
  8. Para revisar o mapeamento de Atributos, selecione a guia Mapear.

    Por padrão, todos os atributos são mapeados por nome.

    Por exemplo, CUST_ID de JOIN_1 é mapeado para CUST_ID na entidade de dados de destino.

  9. Para mapear manualmente os atributos que ainda não foram mapeados, selecione o menu Todos na tabela Atributos de destino e selecione Atributos não mapeados.

    Você pode fazer o mesmo na tabela Atributos de origem (para os campos de entrada.

  10. Agora elimine FULLNAME de Atributos de origem para FULL_NAME em Atributos de destino.
  11. Na tabela Atributos de destino, selecione Atributos não mapeados e Todos.

    Todos os atributos agora estão mapeados.

  12. (Opcional) Selecione Ações para revisar as várias opções de mapeamento disponíveis.
  13. (Opcional) Selecione Exibir regras para exibir as Regras aplicadas.
  14. Para salvar o fluxo de dados e sair do designer, selecione Salvar e fechar.