Şirketimizde, raporlar ve diğer analizler oluşturmak için harita azaltma algoritmaları çalıştırmamız gereken çok sayıda yapılandırılmamış veri içeren bir MongoDB veritabanımız var. Gerekli analizleri uygulamak için seçim yapabileceğimiz iki yaklaşımımız var:
Bir yaklaşım MongoDB'den bir Hadoop kümesine veri çıkarmak ve analizi tamamen Hadoop platformunda yapmaktır. Bununla birlikte, bu, platformun (yazılım ve donanım) hazırlanması ve ekibin Hadoop ile çalışacak ve bunun için harita azaltma görevleri yazma konusunda eğitilmesi için önemli miktarda yatırım gerektirir.
Başka bir yaklaşım, sadece harita azaltma algoritmalarını tasarlama çabamızı göstermek ve algoritmaları MongoDB harita azaltma işlevleri üzerinde çalıştırmaktır. Bu şekilde, raporları oluşturabilen nihai sistemin ilk prototipini oluşturabiliriz. MongoDB'nin harita azaltma işlevlerinin Hadoop'a kıyasla çok daha yavaş olduğunu biliyorum, ancak şu anda veriler o kadar da büyük değil, bu da bunu en azından altı ay boyunca değil.
Soru, ikinci yaklaşımı kullanarak ve MongoDB için algoritmaları yazarak, daha sonra çok az modifikasyon ve algoritma yeniden tasarımı ile Hadoop'a taşınabilir mi? MongoDB sadece JavaScript'i desteklemekle birlikte programlama dili farklılıklarının üstesinden gelmek kolaydır. Ancak, MongoDB ve Hadoop'un harita azaltma modelinde, bizi Hadoop'a taşımak için algoritmaları yeniden tasarlamaya zorlayabilecek temel farklılıklar var mı?