Partilhar via


Integre OneLake com Azure Synapse Analytics

O Azure Synapse é um serviço de análise ilimitada que reúne armazenamento de dados empresariais e análise de Big Data. Este tutorial mostra como se ligar ao OneLake usando Azure Synapse Analytics.

Pré-requisitos

Antes de começar, certifique-se de que tem os seguintes itens:

  • Acesso a um espaço de trabalho Synapse onde podes criar ou usar um pool Apache Spark e executar scripts SQL.
  • Acesso a uma casa no lago em Fabric.
  • O caminho ABFS para a pasta Lakehouse Tables ou para a tabela que queres consultar.

Escrever dados a partir do Synapse usando o Apache Spark

Siga estes passos para usar o Apache Spark para escrever dados de exemplo no OneLake a partir do Azure Synapse Analytics.

  1. Abre o teu espaço de trabalho Synapse e cria um pool Apache Spark com os parâmetros que preferes.

    Captura de ecrã a mostrar onde selecionar Novo no ecrã do pool do Apache Spark.

  2. Crie um novo bloco de anotações Apache Spark.

  3. Abre o caderno, define a linguagem para PySpark (Python) e liga-o ao teu pool Spark recém-criado.

  4. Numa aba separada, navegue até ao seu lakehouse do Microsoft Fabric e encontre a pasta Tables de nível superior.

  5. Clique com o botão direito na pasta Tabelas e selecione Propriedades.

    Captura de ecrã a mostrar onde abrir o painel de Propriedades no explorador de lakehouse.

  6. Copie o caminho ABFS do painel de propriedades.

    Captura de ecrã a mostrar onde copiar o caminho ABFS.

  7. De volta ao caderno do Azure Synapse, na primeira nova célula de código, forneça o caminho do lakehouse. Este caminho aponta para a pasta Tables na casa do lago, onde escreves os dados de exemplo mais tarde. Executar a célula.

    # Replace the path below with the ABFS path to your lakehouse Tables folder. 
    oneLakePath = 'abfss://WorkspaceName@onelake.dfs.fabric.microsoft.com/LakehouseName.lakehouse/Tables'
    
  8. Numa nova célula de código, carrega dados de um conjunto de dados aberto do Azure para um dataframe. Este conjunto de dados é o que carregas na tua casa do lago. Executar a célula.

    yellowTaxiDf = spark.read.parquet('wasbs://nyctlc@azureopendatastorage.blob.core.windows.net/yellow/puYear=2018/puMonth=2/*.parquet')
    display(yellowTaxiDf.limit(10))
    
  9. Numa nova célula de código, filtre, transforme ou prepare os seus dados. Para esse cenário, você pode reduzir seu conjunto de dados para carregamento mais rápido, unir com outros conjuntos de dados ou filtrar para resultados específicos. Executar a célula.

    filteredTaxiDf = yellowTaxiDf.where(yellowTaxiDf.tripDistance>2).where(yellowTaxiDf.passengerCount==1)
    display(filteredTaxiDf.limit(10))
    
  10. Numa nova célula de código, usando o seu caminho OneLake, escreva o seu dataframe filtrado para uma nova tabela Delta-Parquet na sua Fabric lakehouse. Executar a célula.

    filteredTaxiDf.write.format("delta").mode("overwrite").save(oneLakePath + '/Taxi/')
    
  11. Finalmente, numa nova célula de código, teste se os seus dados foram escritos com sucesso lendo a nova tabela Delta do OneLake. Executar a célula.

    lakehouseRead = spark.read.format('delta').load(oneLakePath + '/Taxi/')
    display(lakehouseRead.limit(10))
    

Parabéns! Agora pode ler e escrever dados no OneLake usando o Apache Spark no Azure Synapse Analytics.

Leia dados do Synapse usando SQL

Siga estes passos para usar SQL serverless para ler dados do OneLake do Azure Synapse Analytics.

  1. Abra uma Fabric lakehouse e identifique uma tabela que gostaria de consultar no Synapse.

  2. Clique com o botão direito na tabela e selecione Propriedades.

  3. Copie o caminho ABFS para a tabela.

    Captura de ecrã a mostrar onde copiar o caminho ABFS.

  4. Abra o seu espaço de trabalho Synapse em Synapse Studio.

  5. Crie um novo script SQL.

  6. No editor de consultas SQL, introduza a seguinte consulta, substituindo ABFS_PATH_HERE pelo caminho que copiou anteriormente.

    SELECT TOP 10 *
    FROM OPENROWSET(
    BULK 'ABFS_PATH_HERE',
    FORMAT = 'delta') as rows;
    
  7. Execute a consulta para ver as 10 primeiras linhas da sua tabela.

Parabéns! Agora pode ler dados do OneLake usando SQL serverless no Azure Synapse Analytics.