Transformar dados com Apache Spark e consultar com SQL
Neste guia, você vai:
Carregue dados no OneLake com o explorador de arquivos do OneLake.
Use um notebook do Fabric para ler dados no OneLake e fazer write-back como uma tabela Delta.
Analisar e transformar dados com o Spark usando um notebook do Fabric.
Consultar uma cópia de dados no OneLake com SQL.
Pré-requisitos
Antes de começar, faça o seguinte:
Baixe e instale o explorador de arquivos do OneLake.
Crie um workspace com um item do Lakehouse.
Baixe o conjunto de dados WideWorldImportersDW. Você pode usar o Gerenciador de Armazenamento do Microsoft Azure para se conectar a
https://fabrictutorialdata.blob.core.windows.net/sampledata/WideWorldImportersDW/csv/full/dimension_city
e baixar o conjunto de arquivos csv. Ou você pode usar seus próprios dados csv e atualizar os detalhes conforme necessário.
Observação
Sempre crie, carregue ou crie um atalho para os dados Delta-Parquet diretamente na seção Tabelas do Lakehouse. Não aninhe as tabelas em subpastas na seção Tabelas, pois o lakehouse não as reconhecerá como tabelas e as rotulará como Não Identificadas.
Carregar, ler, analisar e consultar dados
No explorador de arquivos do OneLake, navegue até o lakehouse e, no diretório
/Files
, crie um subdiretório chamadodimension_city
.Copie seus arquivos csv de amostra para o diretório
/Files/dimension_city
usando o explorador de arquivos do OneLake.Navegue até o lakehouse no serviço do Power BI e exiba seus arquivos.
Selecione Abrir notebook e, em seguida , Novo notebook para criar um notebook.
Usando o notebook do Fabric, converta os arquivos CSV para o formato Delta. O snippet de código a seguir lê dados do diretório
/Files/dimension_city
criado pelo usuário e os converte em uma tabela Deltadim_city
.import os from pyspark.sql.types import * for filename in os.listdir("/lakehouse/default/Files/<replace with your folder path>"): df=spark.read.format('csv').options(header="true",inferSchema="true").load("abfss://<replace with workspace name>@onelake.dfs.fabric.microsoft.com/<replace with item name>.Lakehouse/Files/<folder name>/"+filename,on_bad_lines="skip") df.write.mode("overwrite").format("delta").save("Tables/<name of delta table>")
Para ver sua nova tabela, atualize sua exibição do diretório
/Tables
.Consulte sua tabela com SparkSQL no mesmo notebook do Fabric.
%%sql SELECT * from <replace with item name>.dim_city LIMIT 10;
Modifique a tabela Delta adicionando uma nova coluna chamada newColumn com um inteiro de tipo de dados. Defina o valor de 9 para todos os registros dessa coluna recém-adicionada.
%%sql ALTER TABLE <replace with item name>.dim_city ADD COLUMN newColumn int; UPDATE <replace with item name>.dim_city SET newColumn = 9; SELECT City,newColumn FROM <replace with item name>.dim_city LIMIT 10;
Você também pode acessar qualquer tabela Delta no OneLake por meio de um ponto de extremidade de análise do SQL. Um ponto de extremidade de análise do SQL faz referência à mesma cópia física da tabela Delta no OneLake e oferece a experiência T-SQL. Selecione o ponto de extremidade de análise do SQL para lakehouse1 e, em seguida, selecione Nova Consulta SQL para consultar a tabela usando T-SQL.
SELECT TOP (100) * FROM [<replace with item name>].[dbo].[dim_city];