Ce diaporama a bien été signalé.
Nous utilisons votre profil LinkedIn et vos données d’activité pour vous proposer des publicités personnalisées et pertinentes. Vous pouvez changer vos préférences de publicités à tout moment.

Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi

1 081 vues

Publié le

Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi

Publié dans : Données & analyses
  • Soyez le premier à commenter

Hadoop,Pig,Hive ve Oozie ile Büyük Veri Analizi

  1. 1. Pig, Hive, Oozie ve Sqoop ile Büyük Veri Analizi
  2. 2. Hakkımda İstanbul Ünv . Bilgisayar Müh 2+ Comodo 8+ Java , Java EE 2+ Hadoop,Pig,Hive,Oozie,Spark SERKAN SAKINMAZ serkansakinmaz@gmail.com http://www.buyukveri.co/
  3. 3. İçerik Örnek veriler (loglar) Veriler üzerinden ne tür raporlar talep ediliyor? Veri analizinde kullanılan teknolojiler Pig , Hive , Oozie , Sqoop , Hue Soru & Cevaplar
  4. 4. Toplanan Örnek Veriler
  5. 5. Log özellikleri  Log lar anlık olarak toplanıyor  Her log çeşidi farklı bir topic altından HDFS üzerinde farklı dosyalara kopyalanıyor  browsed , click , crash_reports , pc_info …  Bir topic altından günlük 20 milyona yakın data toplanabiliyor  Saatlik , günlük , haftalık , aylık bazda raporlar talep ediliyor  Log lar HDFS sisteminde saklanıyor  Her bir log un 3 farklı yerde kopyası saklanıyor (replication factor )  Log dosyaları SnappyCodec ile sıkıştırılıyor (Average compression rate %81)
  6. 6. Örnek Analizler  Ülke bazında tekil ziyaretçi sayısı  Son bir saat içerisinde 50 den fazla reklama tıklayan kullanıcılar  Referer_url bilgisinden arama yapılan anahtar kelimelerin bulunması  Kullanıcıların günlük olarak browser kullanım süreleri Ülke ve kategori bazında web sitelerinde gezinme oranları Shopping , travel , news …
  7. 7. Kullanılan teknolojiler Apache Pig Apache Hadoop Apache Hive Apache Oozie Apache Sqoop
  8. 8. Apache Pig HDFS (Hadoop distributed file system ) üzerindeki verileri işlemek için kullanılan platformdur Verileri işlemek için Pig Latin ismi verilen scripting dili kullanılmaktadır
  9. 9. Apache Pig
  10. 10. Apache Pig Veri Tipleri  int , long , float , double , chararray , bytearray , boolean Fonksiyonlar  AVG , CONCAT , COUNT , MAX , MIN , SIZE , SUM , TOKENIZE Operatörler Aritmetik operatörler + , - , * , / , % , ?: Karşılaştırma operatörleri == , != , < , > , <= , >= , matches Mantıksal operatörler AND , OR , NOT Null operatörleri is null , is not null İlişkisel operatörler JOIN , LIMIT , LOAD , GROUP , FOREACH , FILTER , DISTINCT , ORDER BY , STORE
  11. 11. Apache Pig - Distinct
  12. 12. Apache Pig - Filter
  13. 13. Apache Pig – Group , Foreach , Avg
  14. 14. Apache Pig – Count
  15. 15. Apache Pig – Join
  16. 16. Apache Pig – Union
  17. 17. Apache Pig – Store
  18. 18. Apache Pig – File Commands
  19. 19. Apache Pig – UDF(User Defined Functions) Adım 1 - Java ile maven projesi oluşturulur Adım 2 - pig ve hadoop-core dependency ler eklenir Adım 3 - Örnek java program Adım 4 - jar dosyası export edilir ve hdfs sistemine yüklenir
  20. 20. Apache Pig – UDF(User Defined Functions)
  21. 21. Apache Hive Apache Hive ; büyük verileri işlememizi sağlayan SQL yapısına benzer açık kaynak kodlu kütüphanedir Örnek sorgular ; SELECT COUNT(1) FROM www_access; SELECT COUNT(distinct ip) FROM www_access WHERE url=‘www.google.com’; SELECT ip, COUNT(1) FROM www_access GROUP BY ip LIMIT 30; SELECT ip, COUNT(1) AS cnt FROM www_access GROUP BY ip ORDER BY cnt DESC LIMIT 30;
  22. 22. Apache Hive – External Table  select count(1) as cnt, country from browsed where log_date = '2016-01-11' and type='search' group by country; CREATE EXTERNAL TABLE browsed( id string, date_time string, visitor_guid string, referer_url string, type str'ng) PARTITIONED BY (log_date string) ROW FORMAT DELIMITED FIELDS TERMINATED BY 't'; ALTER TABLE browsed ADD PARTITION (log_date = '2016-01-01') LOCATION '/data/stats/searches/2016_01_11/';
  23. 23. Pig , Hive , MapReduce Pig  Script dili  Java ile MapReduce geliştirmenin alternatifi Hive  SQL tabanlı  Basit raporlamalar için daha uygun . Kompleks işlemler için uygun değil  Metadata bilgisi tutabiliyor MapReduce  Hive ve Pig e göre daha fazla geliştirme eforu gerekli  Pig ve hive ile geliştirilmiş kodlara göre daha hızlı çalışıyor  Join işlemleri daha zahmetli
  24. 24. Apache Oozie Büyük veri işlemlerini zamanlamak ve sıralandırmak için kullanılır
  25. 25. Apache Oozie Belirli periyotlarda iş akışı çalıştırılabilir  Saatlik , günlük , aylık , haftalık İşlemler bittikten sonra mail atabilir Belirli bir sırada iş akışı çalıştırılabilir switch-case gibi control ifadesi eklenebilir Paralel aksiyonlar çalıştırılabilir ve sonrasında bunlar birleştirilebilir Çalıştırılabilen aksiyonlar  Pig , shell , hive , spark , java , map reduce , sqoop , fs (hdfs) ,ssh
  26. 26. Apache Hue Hadoop ekosistemindeki bazı teknolojilerin kullanımını kolaylaştırmak için web arayüzü sunan açık kaynak kodlu bir kütüphanedir  Kullanılabilen teknolojiler  Hive , Oozie , Imlala , Pig , Oozie
  27. 27. Apache Sqoop Hadoop ile ilişkisel veritabanı arasında verilerin aktarılmasını sağlayan açık kaynak kodlu bir kütüphanedir sqoop-import --connect jdbc:mysql://$1/admarket --username $2 --password $3 --table 'domains_table' --delete-target-dir --target-dir $4 --columns 'adultdomain'
  28. 28. Sorular ?

×