Analizowanie za pomocą platformy Apache Spark

W tym samouczku poznasz podstawowe kroki ładowania i analizowania danych za pomocą platformy Apache Spark na potrzeby Azure Synapse.

Tworzenie bezserwerowej puli platformy Apache Spark

  1. W Synapse Studio w okienku po lewej stronie wybierz pozycję Zarządzaj pulami>platformy Apache Spark.
  2. Wybierz pozycję Nowy
  3. W polu Nazwa puli platformy Apache Spark wprowadź wartość Spark1.
  4. W polu Rozmiar węzła wprowadź wartość Mała.
  5. W polu Liczba węzłów ustaw wartość minimalną na 3 i maksymalną wartość 3
  6. Wybierz pozycję Przeglądanie + tworzenie>Utwórz. Pula platformy Apache Spark będzie gotowa w ciągu kilku sekund.

Opis bezserwerowych pul platformy Apache Spark

Bezserwerowa pula Spark to sposób wskazywania, jak użytkownik chce pracować z platformą Spark. Po rozpoczęciu korzystania z puli sesja platformy Spark jest tworzona w razie potrzeby. Pula określa, ile zasobów platformy Spark będzie używanych przez tę sesję i jak długo sesja będzie trwać, zanim zostanie automatycznie wstrzymana. Płacisz za zasoby platformy Spark używane podczas tej sesji, a nie za samą pulę. Dzięki temu pula Spark umożliwia korzystanie z platformy Apache Spark bez zarządzania klastrami. Jest to podobne do działania bezserwerowej puli SQL.

Analizowanie danych taksówek NYC za pomocą puli spark

  1. W Synapse Studio przejdź do centrum Programowanie.

  2. Utwórz nowy notes.

  3. Utwórz nową komórkę kodu i wklej następujący kod w tej komórce:

    %%pyspark
    df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet')
    display(df.limit(10))
    
  4. Zmodyfikuj identyfikator URI ładowania, aby odwoływać się do przykładowego pliku na koncie magazynu zgodnie ze schematem identyfikatora URI abfss.

  5. W notesie w menu Dołącz do wybierz utworzoną wcześniej pulę Spark1 bezserwerową platformę Spark.

  6. Wybierz pozycję Uruchom w komórce. Usługa Synapse uruchomi nową sesję platformy Spark, aby uruchomić tę komórkę w razie potrzeby. Jeśli potrzebna jest nowa sesja platformy Spark, początkowo utworzenie jej potrwa od około 2 do 5 minut. Po utworzeniu sesji wykonanie komórki potrwa około 2 sekund.

  7. Jeśli chcesz wyświetlić schemat ramki danych, uruchom komórkę z następującym kodem:

    %%pyspark
    df.printSchema()
    

Ładowanie danych taksówek NYC do bazy danych Spark nyctaxi

Dane są dostępne za pośrednictwem ramki danych o nazwie df. Załaduj ją do bazy danych Spark o nazwie nyctaxi.

  1. Dodaj nową komórkę kodu do notesu, a następnie wprowadź następujący kod:

    %%pyspark
    spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi")
    df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
    

Analizowanie danych taksówek NYC przy użyciu platformy Spark i notesów

  1. Utwórz nową komórkę kodu i wprowadź następujący kod.

    %%pyspark
    df = spark.sql("SELECT * FROM nyctaxi.trip") 
    display(df)
    
  2. Uruchom komórkę, aby wyświetlić dane taksówki NYC załadowane do bazy danych nyctaxi Spark.

  3. Utwórz nową komórkę kodu i wprowadź następujący kod. Przeanalizujemy te dane i zapiszemy wyniki w tabeli o nazwie nyctaxi.passengercountstats.

    %%pyspark
    df = spark.sql("""
       SELECT passenger_count,
           SUM(trip_distance) as SumTripDistance,
           AVG(trip_distance) as AvgTripDistance
       FROM nyctaxi.trip
       WHERE trip_distance > 0 AND passenger_count > 0
       GROUP BY passenger_count
       ORDER BY passenger_count
    """) 
    display(df)
    df.write.saveAsTable("nyctaxi.passengercountstats")
    
  4. W wynikach komórki wybierz pozycję Wykres , aby wyświetlić dane zwizualizowane.

Następne kroki