chunk.apply çağrılarını paralelleştirme
chunk.apply() fonksiyonu, veriyi daha hızlı işlemek için paralel işlemlerden de yararlanabilir. Linux ve Unix makinelerde (Mac dahil) CH.PARALLEL parametresi birden büyük bir değere ayarlandığında, birden fazla işlem aynı anda veriyi okur ve işler; böylece çalışma süresi kısalır. Windows'ta CH.PARALLEL parametresi yok sayılır.
Bu egzersiz, kursun bir parçasıdır
R'de Ölçeklenebilir Veri İşleme
Egzersiz talimatları
iotools_read_fun()fonksiyonunu önce 1 işlemle, ardından 3 paralel işlemle kıyasla (benchmark et).
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
iotools_read_fun <- function(parallel) {
fc <- file("mortgage-sample.csv", "rb")
readLines(fc, n = 1)
chunk.apply(fc, make_msa_table,
CH.MAX.SIZE = 1e5, CH.PARALLEL = parallel)
close(fc)
}
# Benchmark the new function
microbenchmark(
# Use one process
___,
# Use three processes
___,
times = 20
)