Udostępnij za pośrednictwem


Integrowanie usługi OneLake z usługą Azure Synapse Analytics

Azure Synapse to nieograniczona usługa analizy, która łączy magazynowanie danych przedsiębiorstwa i analizę danych big data. W tym samouczku pokazano, jak nawiązać połączenie z usługą OneLake przy użyciu Azure Synapse Analytics.

Wymagania wstępne

Przed rozpoczęciem upewnij się, że masz następujące elementy:

  • Dostęp do obszaru roboczego usługi Synapse, w którym można utworzyć pulę platformy Apache Spark lub użyć jej i uruchomić skrypty SQL.
  • Dostęp do lakehouse w Fabric.
  • Ścieżka ABFS do folderu Tabele w Lakehouse lub tabel, które chcesz zapytować.

Zapisywanie danych z usługi Synapse przy użyciu platformy Apache Spark

Wykonaj następujące kroki, aby użyć platformy Apache Spark do zapisania przykładowych danych w usłudze OneLake z Azure Synapse Analytics.

  1. Otwórz obszar roboczy Synapse i utwórz pulę Apache Spark z preferowanymi parametrami.

    Zrzut ekranu pokazujący, gdzie wybrać opcję Nowy na ekranie puli Apache Spark.

  2. Utwórz nowy notebook Apache Spark.

  3. Otwórz notes, ustaw język na PySpark (Python) i połącz go z nowo utworzoną pulą Spark.

  4. Na osobnej karcie przejdź do swojego jeziora danych Microsoft Fabric i znajdź folder główny Tables.

  5. Kliknij prawym przyciskiem myszy folder Tables i wybierz polecenie Właściwości.

    Zrzut ekranu pokazujący, gdzie otworzyć okienko Właściwości w eksploratorze lakehouse.

  6. Skopiuj ścieżkę ABFS z okienka właściwości.

    Zrzut ekranu przedstawiający miejsce kopiowania ścieżki ABFS.

  7. Po powrocie do notebooka Azure Synapse w nowej, pierwszej komórce kodu podaj ścieżkę lakehouse. Ta ścieżka wskazuje folder Tables w lakehouse, w którym później zapisujesz przykładowe dane. Uruchom komórkę.

    # 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. W nowej komórce kodu, załaduj dane z otwartego zestawu danych Azure do ramki danych. Ten zestaw danych to ten, który ładujesz do lakehouse. Uruchom komórkę.

    yellowTaxiDf = spark.read.parquet('wasbs://nyctlc@azureopendatastorage.blob.core.windows.net/yellow/puYear=2018/puMonth=2/*.parquet')
    display(yellowTaxiDf.limit(10))
    
  9. W nowej komórce kodu, filtruj, przekształć lub przygotuj dane. W tym scenariuszu możesz przyciąć zestaw danych w celu szybszego ładowania, dołączania do innych zestawów danych lub filtrowania do określonych wyników. Uruchom komórkę.

    filteredTaxiDf = yellowTaxiDf.where(yellowTaxiDf.tripDistance>2).where(yellowTaxiDf.passengerCount==1)
    display(filteredTaxiDf.limit(10))
    
  10. W nowej komórce kodu przy użyciu ścieżki OneLake zapisz przefiltrowaną ramkę danych w nowej tabeli Delta-Parquet w Fabric lakehouse. Uruchom komórkę.

    filteredTaxiDf.write.format("delta").mode("overwrite").save(oneLakePath + '/Taxi/')
    
  11. Na koniec w nowej komórce kodu przetestuj, czy dane zostały pomyślnie zapisane, odczytując nową tabelę delty z usługi OneLake. Uruchom komórkę.

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

Gratulacje. Teraz możesz odczytywać i zapisywać dane w usłudze OneLake przy użyciu platformy Apache Spark w Azure Synapse Analytics.

Odczytywanie danych z usługi Synapse przy użyciu języka SQL

Wykonaj następujące kroki, aby używać bezserwerowego programu SQL do odczytywania danych z usługi OneLake z Azure Synapse Analytics.

  1. Otwórz Fabric lakehouse i zidentyfikuj tabelę, na której chcesz wykonać zapytanie przy użyciu Synapse.

  2. Kliknij prawym przyciskiem myszy tabelę i wybierz polecenie Właściwości.

  3. Skopiuj ścieżkę ABFS dla tabeli.

    Zrzut ekranu przedstawiający miejsce kopiowania ścieżki ABFS.

  4. Otwórz obszar roboczy usługi Synapse w Synapse Studio.

  5. Utwórz nowy skrypt SQL.

  6. W edytorze zapytań SQL wprowadź następujące zapytanie, zastępując ABFS_PATH_HERE ścieżką skopiowaną wcześniej.

    SELECT TOP 10 *
    FROM OPENROWSET(
    BULK 'ABFS_PATH_HERE',
    FORMAT = 'delta') as rows;
    
  7. Uruchom zapytanie, aby wyświetlić 10 pierwszych wierszy tabeli.

Gratulacje. Teraz możesz odczytywać dane z usługi OneLake przy użyciu bezserwerowej bazy danych SQL w Azure Synapse Analytics.