6 Kasım 2016 Pazar

Yol Ayrımı; Data Science vs Big Data

Data Science veya  Analitik ve Big Data her ne kadar birlikte anılıyor olsa da, bunlar çok farklı uzmanlık gerektiren alanlar. Her ikisini birlikte aynı zaman diliminde öğrenmeniz olasılıklı değil. Hangisini önce öğreneceğinize karar verip oradan devam etmek daha sağlıklı bir yöntem. Ben Data Science'dan başlamaya karar verdim. Bu konuya geçmeden, önceki yazımın sonunda sorduğum sorulara kısa cevaplar verelim.

http://scraping.pro/nosql/
NoSQL
İlk aklımıza gelen elbette, NO SQL yani SQL olmayan demek. Bunun dışında "Not Only SQL" olarak adlandıranlar var. Tercih yapmayacağım fakat konunun anlaşılması açısından NOSQL
dendiğinde artık "Not Only SQL" olduğunu da bilmekte fayda var.

Unstructured Data
SQL dendiğinde ilk aklımızda canlanan öğe sanırım tablodur. Tablolar da kolonlardan oluşur. Yani bir kalıpları(structure) vardır. Unstructured data dediğimizde, tablo dışında kalan her veriyi anlayabiliriz. Döküman, video, XML, JSON, aklınıza ne gelirse. Bu veriler, tablo içinde tutulsa bile structured olduğu anlamına gelmez, unstructured veridir. Unstructured verinin konumuzla ne alakası var? Hemen cevabı geliyor.

Big Data

Boyutu büyük olan veriye, büyük veri denir. Eğer büyük veriyi yukarıdaki gibi tanımlarsanız, "Benim büyük verim yok, Oracle'da , MS SQL'de verilerimi tutuyorum ve sorgularım da hızlı cevap dönüyor. Ayrıca yeni storage satın aldık, bizi yıllarca götürür." şeklinde karşılık alabilirsiniz. Doğrudur, tekil ya da yeterince seçici numara, telefon gibi kriterler ile sorgulama yapıldığında ilişkisel veri tabanları çok hızlı cevap dönerler(Index'in var olduğunu kabul ediyoruz). Oysaki isim veya tanımın bir kaç karakterinden arama yapıldığında durum değişir.

Milyarlarca kayıttan oluşan bir tablodan sorgularken sorun yaşamazken, içinde bin - iki bin kayıt olan, örneğin ürün tablonuzdan sorgulama yaparken sonuç gelene kadar uzun süre beklemek zorunda kalırsınız. Bu durumda sizin ürün tablonuza büyük veri diyebiliriz. Bir önceki yazımda sorduğum sorunun cevabını verdik. Yani işleyemediğiniz veya işlemekte zorlandığınız veriye büyük veri diyelim, konu daha rahat anlaşılacaktır.

İlişkisel veri tabanlarında, unstructured verileri de tutabilirsiniz. Fakat iş bu verileri sorgulamaya geldiğinde, deveye hendek atlatmak kadar zor bir durumla karşı karşıya kalmışsınız demektir.O halde sorgulama yapacağınız, işlemek istediğiniz unstructured verilere de büyük veri diyebilirim.



5 Kasım 2016 Cumartesi

R'a Giden Yol

Her firma ayakta kalabilmek için para kazanmalı, dolayısıyla parayı kazandığı müşterileri elinde tutmalı, hatta bunlara yenilerini eklemelidir.

www.simplicant.com
Yeni müşteri bulmak hiçte kolay bir iş değildir. Hele de giden bir müşteriyi geri getirmek en zorudur. Bu nedenle mevcut müşterilerin elde tutulması günümüzde daha büyük önem kazanmıştır.

Mevcut müşterinin elde tutulması yönündeki en büyük zorluk ise; gidecek müşterinin bilinememesidir. Giden müşteriyi, yeni müşteriyi, uzun zamandır sizinle olan müşteriyi verilerinizden sorgulayıp görebilirsiniz fakat hangilerinin gitme eğiliminde olduğunu size söyleyebilecek bir sorgulama mevcut değildir.

Buradan sonra devreye "analitik" girer. SPSS, SAS gibi yaygın analitik araçlarını düne kadar sık sık duyduk. Bu araçlar, verdiğimiz örnek üzerinden konuşursak, hangi müşterinin sizi terk edeceğini söyleyemez fakat gitme olasılığını tahminler ve gösterir. Gitmesini önlemek için gerekli aksiyonları almak iş birimindeki kişilere kalmıştır.

rhrv.r-forge.r-project.org

Analitik dünyası öylesine gelişti ki; Data scientist, R, BigData, NOSQL gibi yeni kavramlar duymaya başladık. SPSS, SAS kullananların, bölümde Data scientist(veri bilimciler) barındırmaya
başladıklarını gördük. R ile geliştirme yapılıyor, bu geliştirmeleri uygulamaların içine gömülüp kullanılıyordu.




İş birimleri ile BT birimleri iş birliği içine girmişti. Buna karşın talepler bitmiyor, R'ın yeterli olmadığını, Python kullanacaklarını, BigData ortamlarına, NOSQL'e ihtiyaçları olduğunu söylüyorlardı.

Neydi bu R-Python, BigData-NOSQL? SQL varken niye R veya Python? Trilyonluk kayıtları olan muhasebe verilerini işleyebilirken, milyonluk müşteri verisi neden işlenemiyordu? Diğer bir deyişle, trilyonluk muhasebe verisi "big" değilken, milyonluk müşteri nasıl "big" olabiliyordu?
Bu sorularla hayatımda yeni bir yolculuk başladı.