4. • Big Data
Ajanda
– Hadoop
• Realtime Big Data – Storm - Spark
• NoSql
– Cassandra – MongoDB
• NodeJS
• kpi.io
– Custom Analytics Backend as a Service
– www.kpi.io
techbase 2013
5. Ajanda
• Referanslar – Big Data
– TurkCell Global Bilgi – sniffactor.com
• Storm - Gerçek Zamanlı Sosyal Medya Analizi
– 2014 …
• kpi.io v2.0
• Çoklu Veri Merkezli Cassandra Cluster
• Gerçek Zamanlı Lokasyon Tabanlı Servisler
techbase 2013
6. Veri Analiz Etmenin Amacı
Ajanda
• Daha iyi kararlar verebilmek
– Veriyi gerçek zamanlı analiz ederek
– Var olan veriyi hızlı sorgulayarak
– Karmaşık Veri Analizleri yaparak
• Makine öğrenmesi, veri madenciliği
techbase 2013
7. Ajanda
Var Olan Yöntem
• Gerçek zamanlı veri analizi
– Storm
• Hızlı sorgulama
– Hbase – Impala
• Karmaşık Veri Analizleri
– Hadoop
– Hive
– Pig
techbase 2013
8. Ajanda
Var Olan Yöntem - Zorluklar
• 3 farklı alanda uzmanlık gerekmektedir.
• Farklı kurulumlar, farklı clusterlar gerektirir
– Bakımı zordur
– Ayrı ayrı geliştirme yapmak gerekir
– Aynı işi, farklı şekillerde bütün alanlarda yapmak
gerekir
• Ortak veriyi kullanmaları zahmetlidir
techbase 2013
9. BDAS – Yaklaşım -1
• Hızlı Veri Analizi
– Mümkün olduğu kadar işlemleri memory de
gerçekleştirmek
– Neden Memory?
• Memory hızı >> ssd hızı >> disk hızı
• Birçok dataset memory ye sığabilir büyüklüktedir
– Facebook ( %90 dataset )
techbase 2013
10. BDAS – Yaklaşım - 2
• Bütün ihtiyaçlar için tek platform
– gerçek zamanlı veri analizi
– batch veri analizi
– hızlı sorgulama
• Var olan sistemlerle entegrasyon
– Hadoop, HDFS, Hbase, Flume, Graphlab, Hive
techbase 2013
11. BDAS – Yaklaşım - 3
• Karmaşık algoritmaların
– Kolay geliştirilir hale getirilmesi
• ML algoritmaları için abstraction
• Güçlü Scala ve Python veri analiz metotları
– Aynı algoritmanın gerçek zamanlı, batch ve hızlı
sorgulama ortamlarında kullanılabilmesi.
techbase 2013
14. Mesos
• Cluster Kaynak Yönetimi Platformu
– Aynı cluster üzerinde Hadoop, Storm, Spark, MPI
• Java, Python ve C++ API leri
• Aktif Kullanıcılar
– Twitter
• 3500+ server
– Airbnb
techbase 2013
15. Spark
• Memory tabanlı, çok hızlı veri analizi altyapısı
– Hadoop’tan 100 kata kadar hızlı
– Aynı algoritmayı 5-10 kat daha az kodla
yazabilirsiniz
– Basit Scala, Python ve Java API ları ile kolay
uygulama geliştirme imkanı sunar
– Genel Amaçlı Veri Analizleri
– Recursive Algoritmalar
– Makine Öğrenmesi Algoritmaları
techbase 2013
16. Spark – Sınırlı Memory Kullanımı
30
41
60
58
80
69
40
12
Execution time (s)
100
20
0
• Uzmanlıklar
Cache
25%
75%
• Referanslar ve Projeler 50%
disabled
• KPI.IO
% of working set in cache
techbase 2013
Fully
cached
17. Spark vs Hadoop - 1
• Uzmanlıklar
• Referanslar ve Projeler
• KPI.IO
techbase 2013
18. Spark vs Hadoop - 2
• Uzmanlıklar
• Referanslar ve Projeler
• KPI.IO
techbase 2013
19. Spark Streaming
• Gerçek Zamanlı Streaming Veri Analizi
Altyapısı
• Belirlenen belli aralıklarla(saniyeler
seviyesinde) batch işlemleri gerçekleştirir.
• Bir mesajın sadece bir kere işlenmesini garanti
eder
• Spark için kullandığınız kodla stream
processing yapın
• Kafka, Flume, ZeroMQ entegrasyonu
techbase 2013
22. Shark
• Spark üzerinde Hive çalıştırır.
• Hive’a oranla…
– Memory üzerindeki data ile 100 kata kadar daha
hızlı çalışır
– Disk üzerindeki data ile 10 kata kadar daha hızlı
çalışır
• Sql2RDD – Yazılan Hql scriptlerinin sonucunu
Spark RDD lere çevrilmesini sağlar.
techbase 2013
23. 70
Hive
Shark vs Hive vs Impala
50
40
20
• Uzmanlıklar
10
• Referanslar ve Projeler
0
• KPI.IO
techbase 2013
Shark
30
Impala
Response Time (s)
60
24. Tachyon – BlinkDB
• Tachyon
– Cluster altyapılarının kullanması için cluster genelinde
dosya paylaşımı sağlar.
– HDFS desteği
• BlinkDB
– Shark ve Spark üzerinde çalışır
– Çok büyük veri üzerinde çok hızlı çalışan fakat belli bir hata
payına sahip sonuçlar getiren Sql benzeri sorguları
destekler.
– Performansını data üzerinden aldığı örnekler üzerinde
çalışması ile sağlar.
• O
techbase 2013
25. MLBase – Graphx
• MLBase
– Kolay ve ölçeklenebilir makine öğrenmesi geliştirmesi
– Dağıtık ortamda çalışan kullanıcı dostu makine öğrenmesi
• ML uzmanı olmaya gerek yok
• Graphx
– Spark üzerinde Graf Veri Analizi
– GraphLab’e göre daha yavaş - şimdilik
Hadoop
1340
165
GraphX
GraphLab
22
0
200
400
600
800
1000
1200
1400
1600
Runtime (in seconds, PageRank for 10 iterations)
techbase 2013