R ile büyük veriyi harmanlamak

 
 

R’ı büyük veri karşısında çalıştırmak için ekstra bir strateji var: Sadece analiz etmeniz gereken veriyi getirin. MapReduce, Hadoop, Spark ve Storm ruhuyla, küçültülmüş veri setleri üzerinde bellek içi analizlerin izlenebilir olmasını sağlamak için veri akarken onu elemek istersiniz. Kawaf’ın örneğine bakacak olursak, 100 TB’lık bir veriye sahip olabilirsiniz ama “sadece” 5 sütun ve 20 milyon satır, birkaç yüz megabyte’lık azaltılmış veriye ihtiyacınız olabilir.

 

Aynı zamanda uygulama içinde değil de veritabanı içinde bir takım analizler gerçekleştirmek de isteyebilirsiniz. R kaynak kodu içinde IBM bir örnek sağlama işini güzelce yapmış. Şekil 7’ye göz atabilirsiniz.

 

Veriyi veritabanı dışına R içine aktarmak hatırı sayılır bir zaman alabilir. Eğer network veri akışının çoğunu ortadan kaldırırsanız analiz için gereken zamanı önemli oranda azaltabilirsiniz. Veritabanı içi bağlanım analizi için zamanlamanın 2.7 saniye olduğunu fark edeceksiniz. Uygulama içinde aynı görev 1.47 dakika ile 30 kattan daha uzun sürdü. Hesaplanan bağlanım katsayıları tamamen aynıydı. Tek fark birinde analiz verinin bulunduğu yerde yapılırken, diğerinde veritabanından R uygulamasına çekilerek yapıldı.

 

IBM’in uygulaması tek değil; bir Bluemix hesabım vardı. Vertica (HP), Greenplum (Pivotal), Oracle ve Teradata’nın tümü R paketlerine sahip. Diğer taraftan ötekilerin veritabanı içi analitikler tarafında ne kadar ileri gittiğinden emin değilim.

 

Bu arada, RStudio Server Pro’yu browser üzerinde çalıştırmak RStudio’yu masaüstümde çalıştırmakla aynı hissettirdi ki bu beni hem şaşırttı hem de memnun etti.

 

Shiny ve R Markdown

sekil8
Şekil 8

Elbette geliştiriciler ve analistler hiçbir zaman sadece kod yazarak ve sonuçları belirleyerek işini tamamlamaz. Tepe yönetim aylık raporlar ister ve orta seviye yönetim altında neler yattığını bilmeksizin veriyle oynamak ister. Buyurun Shiny ve R Markdown’a; RStudio’dan sırasıyla Web uygulamaları ve raporlama için iki R paketi.

Şekil 8 RStudio’da çalışan basit bir Shiny uygulamasını gösteriyor.

 

Widget’lerle girdi alanları gibi HTML kontrol bileşenlerini ilişkilendirerek interaktif ve “tepkisel” Web uygulamaları inşa etmek için Shiny’yi kullanabilirsiniz. “Tepkisel” derken RStudio şunu demek istiyor ki bir değer değiştiğinde değişen değere bağlı tüm değerler yeniden hesaplanıyor; bir tablolama programından bekleyeceğiniz gibi.

 

Girdi değiştiğinde neyin yeniden hesaplandığını kısıtlamak için tepkisel örtü fonksiyonu değerlerini önbelleğe alıyor ve sadece geçersiz olanları yeniden hesaplıyor. Shiny uygulamalarını kendi donanımınız üzerinde çalışabilir ya da onları shinyapps.io sunucusnda yayınlayabilirsiniz.

 

Shiny uygulamaları orta seviye idarecilerin gereksinimlerini karşılayabilir. Peki ama üst yönetimdeki durum ne?

 

sekil9
Şekil 9

Eğer bir GitHub kullanıcısıysanız veya son on yıldır Web ve geliştirme alanlarına sadece dikkat gösteriyorsanız, HTML ve diğer etiket bazlı işaretleme dillerinde biçimlendirilmiş dokümanların üretilmesine yönelik Markdown dilini bilirsiniz. RStudio bir Markdown uygulamasına sahip ve onu gömülü R kod yığınlarına, R Markdown paketindeki LaTeX ve MathML’e dahil edecek şekilde genişletiyor. Ayrıca Shiny’yi kullanarak interaktif R Markdown dokümanları yaratıp onları kendi Shiny sunucunuzda veya shinyapps.io’da yayınlayabilirsiniz. Bunun için şekil 11’e bakabilirsiniz

 

 

sekil 10
Şekil 10

R’ın Gücü

Gördüğümüz gibi R, veri bilimciler ve istatistikçiler için yararlı bir araç ve veri analizleri için aksi halde Python (NumPy, Pandas ve StatsModels ile birlikte); SQL (veritabanında tutulan veri için); ya da SAS (ve onun GUI varyasyonu JMP)’ye yönelebilecek programcıların bir şekilde standart dışı script dili olarak ilgisini çekecek. Excel ile karşılaştırıldığında R hatırı sayılır oranda daha fazla istatistik ve grafik gücüne sahip. Bilhassa özel gereksinimleriniz için paketler ekliyorsanız ve çok daha fazla denetlenebilir. Formüllerle dolu bir tabloya nazaran R script’ini doğrulamak çok daha kolay.

sekil11
Şekil 11

 

 

Bir IDE olarak RStudio’nun eklenmesiyle birlikte gelişen R uygulamaları fazlasıyla verimli olabilir. RStudio Server firmaların büyük donanımlarda var olan  büyük RAM ve çok sayıda işlemcinin avantajından yararlanmasına imkan tanıyor. Shiny R’ı bir Web uygulamasına dönüştürüyor ve R Markdown raporlar için R’ı kullanmanızı sağlıyor.

 

Diğer yandan R’ın devasa gücü ve mevcut R paketlerinin çokluğu epey göz korkutucu bir öğrenme sürecini ortaya çıkartabilir. R’ı öğrenirken ve kullanırken biraz istatistiki arkaplana sahip olmanın çok faydası var ama bu tüm veri bilimleri için geçerli. Çok sayıda kütüphanesi olan diğer tüm programlama dilleri için söylenebileceği gibi, R’ı öğrenmeye yönelik en iyi stratejiniz her defasında bir adım atmaktır.

 

Önceki sayfa 1 2 3

İlgili Makaleler

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

Başa dön tuşu