Criar um lakehouse para Direct Lake

Este artigo descreve como criar um lakehouse, criar uma tabela Delta no lakehouse e, em seguida, criar um modelo semântico básico para o lakehouse em um espaço de trabalho do Microsoft Fabric.

Antes de começar a criar um lakehouse para Direct Lake, leia o artigo Visão geral do Direct Lake.

Criar um lakehouse

  1. No espaço de trabalho do Microsoft Fabric selecione Novo>Mais opções e, em seguida, em Engenharia de dados, selecione o bloco Lakehouse.

    Captura de tela mostrando ao bloco lakehouse em Engenharia de Dados.

  2. Na caixa de diálogo Novo lakehouse, insira um nome e selecione Criar. O nome pode conter somente caracteres alfanuméricos e sublinhados.

    Captura de tela mostrando a caixa de diálogo de Novo lakehouse.

  3. Verifique se o novo lakehouse foi criado e aberto com êxito.

    Captura de tela de lakehouse criado no espaço de trabalho.

Criar uma tabela Delta no lakehouse

Depois de criar um novo lakehouse, você deve criar pelo menos uma tabela Delta para que o Direct Lake possa acessar alguns dados. O Direct Lake pode ler arquivos formatados em parquet, mas para obter o melhor desempenho, é melhor compactar os dados usando o método de compactação VORDER. O VORDER compacta os dados usando o algoritmo de compactação nativo do mecanismo do Power BI. Dessa forma, o mecanismo pode carregar os dados na memória o mais rápido possível.

Há várias opções para carregar dados em um lakehouse, incluindo pipelines de dados e scripts. As etapas a seguir usam o PySpark para adicionar uma tabela Delta a um lakehouse com base em um conjunto de dados aberto do Azure:

  1. No lakehouse recém-criado, selecione Abrir notebook e, em seguida, selecione Novo notebook.

    Captura de tela mostrando o comando novo notebook.

  2. Copie e cole o snippet de código a seguir na primeira célula de código para permitir que o SPARK acesse o modelo aberto e pressione Shift + Enter para executar o código.

    # Azure storage access info
    blob_account_name = "azureopendatastorage"
    blob_container_name = "holidaydatacontainer"
    blob_relative_path = "Processed"
    blob_sas_token = r""
    
    # Allow SPARK to read from Blob remotely
    wasbs_path = 'wasbs://%s@%s.blob.core.windows.net/%s' % (blob_container_name, blob_account_name, blob_relative_path)
    spark.conf.set(
      'fs.azure.sas.%s.%s.blob.core.windows.net' % (blob_container_name, blob_account_name),
      blob_sas_token)
    print('Remote blob path: ' + wasbs_path)
    
    
  3. Verifique se o código gera com êxito um caminho de blob remoto.

    Captura de tela mostrando a saída do caminho do blob remoto.

  4. Copie e cole o código a seguir na próxima célula e pressione Shift + Enter.

    # Read Parquet file into a DataFrame.
    df = spark.read.parquet(wasbs_path)
    print(df.printSchema())
    
    
  5. Verifique se o código gera com êxito o esquema DataFrame.

    Captura de tela mostrando a saída do esquema do dataframe.

  6. Copie e cole as seguintes linhas na próxima célula e pressione Shift + Enter. A primeira instrução habilita o método de compactação VORDER e a próxima instrução salva o DataFrame como uma tabela Delta no lakehouse.

    # Save as delta table 
    spark.conf.set("spark.sql.parquet.vorder.enabled", "true")
    df.write.format("delta").saveAsTable("holidays")
    
    
  7. Verifique se todos os trabalhos do SPARK foram concluídos com êxito. Expanda a lista de trabalhos do SPARK para exibir mais detalhes.

    Captura de tela mostrando a lista expandida de trabalhos do SPARK.

  8. Para verificar se uma tabela foi criada com êxito, na área superior esquerda, ao lado de Tabelas, selecione as reticências (...), selecione Atualizar e, em seguida, expanda o nó Tabelas.

    Captura de tela mostrando o comando Atualizar próximo ao nó Tabelas.

  9. Usando o mesmo método acima ou outros métodos com suporte, adicione mais tabelas Delta para os dados que você deseja analisar.

Criar um modelo básico do Direct Lake para o lakehouse

  1. Em seu lakehouse, selecione Novo modelo semântico e, na caixa de diálogo, selecione as tabelas a serem incluídas.

    Captura de tela do diálogo para criar um novo modelo.

  2. Selecione Confirmar para gerar o modelo do Direct Lake. O modelo é salvo automaticamente no espaço de trabalho com base no nome do lakehouse e, em seguida, abre o modelo.

    Captura de tela mostrando o modelo aberto no Power BI.

  3. Selecione Abrir modelo de dados para abrir a experiência de modelagem da Web em que você pode adicionar relacionamentos de tabela e medidas DAX.

    Captura de tela mostrando a modelagem da Web no Power BI.

Ao terminar de adicionar relacionamentos e medidas DAX, você poderá criar relatórios, criar um modelo composto e consultar o modelo por meio de pontos de extremidade XMLA da mesma forma que qualquer outro modelo.