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
No espaço de trabalho do Microsoft Fabric selecione Novo>Mais opções e, em seguida, em Engenharia de dados, selecione o bloco Lakehouse.
Na caixa de diálogo Novo lakehouse, insira um nome e selecione Criar. O nome pode conter somente caracteres alfanuméricos e sublinhados.
Verifique se o novo lakehouse foi criado e aberto com êxito.
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:
No lakehouse recém-criado, selecione Abrir notebook e, em seguida, selecione Novo notebook.
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)
Verifique se o código gera com êxito um caminho de blob remoto.
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())
Verifique se o código gera com êxito o esquema DataFrame.
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")
Verifique se todos os trabalhos do SPARK foram concluídos com êxito. Expanda a lista de trabalhos do SPARK para exibir mais detalhes.
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.
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
Em seu lakehouse, selecione Novo modelo semântico e, na caixa de diálogo, selecione as tabelas a serem incluídas.
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.
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.
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.