Çalıştığım DataFrame'im var ve bir dizi sütunla gruplamak ve sütunların geri kalanında grup başına işlem yapmak istiyorum. DataFrame
yılındaSpark DataFrame: Gruplarda çalıştır
rdd.map(tup => ((tup._1, tup._2, tup._3), tup)).
groupByKey().
forEachPartition(iter => doSomeJob(iter))
.arazi böyle başlardım:
df.groupBy("col1", "col2", "col3") // Reference by name
ama sonra ameliyat nasıl emin değilim düzenli RDD
.arazi ben şöyle bir şey olmazdı düşünüyorum İşlemlerim GroupedData tarafından sunulan ortalama/dak/maks/sayımdan daha karmaşıksa, gruplar.
Örneğin, I, (grup ilişkili s yineleme ile) ("col1", "col2", "col3")
grup başına tek bir MongoDB belge oluşturmak N
bölümleri aşağı ölçek, daha sonra bir MongoDB veritabanına belgeler eklemek istiyorum. N
limiti, istediğim maksimum eşzamanlı bağlantı sayısıdır.
Herhangi bir öneri?
Best Way: Bir UDAF yaz (henüz desteklenmiyor, bkz. SPARK-4233 ve SPARK-3947). O zamana kadar, –