Apache Spark ile analiz etme
Bu öğreticide, Azure Synapse için Apache Spark ile verileri yüklemek ve analiz etmek için temel adımları öğreneceksiniz.
Sunucusuz Apache Spark havuzu oluşturma
- Synapse Studio sol taraftaki bölmedeApache Spark havuzlarınıyönet'i> seçin.
- Yeni'yi seçin
- Apache Spark havuzu adı içinSpark1 yazın.
- Düğüm boyutu alanına Küçük yazın.
- Düğüm sayısı için En düşük değeri 3, en büyük değeri 3 olarak ayarlayın
- Gözden geçir ve oluştur>Oluştur'u seçin. Apache Spark havuzunuz birkaç saniye içinde hazır olur.
Sunucusuz Apache Spark havuzlarını anlama
Sunucusuz Spark havuzu, kullanıcının Spark ile nasıl çalışmak istediğini göstermenin bir yoludur. Havuz kullanmaya başladığınızda, gerekirse bir Spark oturumu oluşturulur. Havuz, bu oturum tarafından kaç Spark kaynağının kullanılacağını ve oturumun otomatik olarak duraklatılmadan önce ne kadar süreceğini denetler. Havuzun kendisi için değil, bu oturum sırasında kullanılan Spark kaynakları için ödeme yapabilirsiniz. Bu şekilde Spark havuzu, kümeleri yönetmeden Apache Spark'ı kullanmanıza olanak tanır. Bu, sunucusuz SQL havuzunun çalışma şekline benzer.
Spark havuzuyla NYC Taxi verilerini analiz etme
Synapse Studio'da Geliştirme hub'ına gidin.
Yeni bir not defteri oluşturun.
Yeni bir kod hücresi oluşturun ve bu hücreye aşağıdaki kodu yapıştırın:
%%pyspark df = spark.read.load('abfss://users@contosolake.dfs.core.windows.net/NYCTripSmall.parquet', format='parquet') display(df.limit(10))
Yük URI'sini değiştirerek abfss URI şemasına göre depolama hesabınızdaki örnek dosyaya başvurmasını sağlayın.
Not defterindeki Ekle menüsünde, daha önce oluşturduğumuz Spark1 sunucusuz Spark havuzunu seçin.
Hücrede Çalıştır'ı seçin. Synapse gerekirse bu hücreyi çalıştırmak için yeni bir Spark oturumu başlatır. Yeni bir Spark oturumu gerekiyorsa, başlangıçta oluşturulması yaklaşık 2-5 dakika sürer. Oturum oluşturulduktan sonra hücrenin yürütülmesi yaklaşık 2 saniye sürer.
Yalnızca veri çerçevesinin şemasını görmek istiyorsanız aşağıdaki koda sahip bir hücre çalıştırın:
%%pyspark df.printSchema()
NYC Taxi verilerini Spark nyctaxi veritabanına yükleme
Veriler df adlı veri çerçevesi aracılığıyla kullanılabilir. Bunu nyctaxi adlı bir Spark veritabanına yükleyin.
Not defterine yeni bir kod hücresi ekleyin ve aşağıdaki kodu girin:
%%pyspark spark.sql("CREATE DATABASE IF NOT EXISTS nyctaxi") df.write.mode("overwrite").saveAsTable("nyctaxi.trip")
Spark ve not defterlerini kullanarak NYC Taxi verilerini analiz etme
Yeni bir kod hücresi oluşturun ve aşağıdaki kodu girin.
%%pyspark df = spark.sql("SELECT * FROM nyctaxi.trip") display(df)
Nyctaxi Spark veritabanına yüklediğimiz NYC Taxi verilerini göstermek için hücreyi çalıştırın.
Yeni bir kod hücresi oluşturun ve aşağıdaki kodu girin. Bu verileri analiz edip sonuçları nyctaxi.passengercountstats adlı bir tabloya kaydedeceğiz.
%%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")
Verilerin görselleştirildiği görmek için hücre sonuçlarında Grafik'i seçin.