Fundamental Big Data dengan PySpark
Upendra Devisetty
Science Analyst, CyVerse
Aksi reduce(func) digunakan untuk mengagregasi elemen RDD biasa
Fungsinya harus komutatif (urutan operan tidak mengubah hasil) dan asosiatif
Contoh aksi reduce() di PySpark
x = [1,3,4,6]
RDD = sc.parallelize(x)
RDD.reduce(lambda x, y : x + y)
14
saveAsTextFile() menyimpan RDD ke berkas teks dalam sebuah direktori, tiap partisi sebagai berkas terpisahRDD.saveAsTextFile("tempFile")
coalesce() dapat digunakan untuk menyimpan RDD sebagai satu berkas teksRDD.coalesce(1).saveAsTextFile("tempFile")
Aksi RDD yang tersedia untuk pair RDD PySpark
Aksi pair RDD memanfaatkan data key-value
Contoh aksi pair RDD:
countByKey()
collectAsMap()
countByKey() hanya tersedia untuk tipe (K, V)
Aksi countByKey() menghitung jumlah elemen per key
Contoh countByKey() pada list sederhana
rdd = sc.parallelize([("a", 1), ("b", 1), ("a", 1)])
for kee, val in rdd.countByKey().items():
print(kee, val)
('a', 2)
('b', 1)
collectAsMap() mengembalikan pasangan key-value dalam RDD sebagai dictionary
Contoh collectAsMap() pada tuple sederhana
sc.parallelize([(1, 2), (3, 4)]).collectAsMap()
{1: 2, 3: 4}
Fundamental Big Data dengan PySpark