/Bigdatahackathon

Turkcell Big Data Hackathon

GNU Lesser General Public License v3.0LGPL-3.0

Turkcell Big Data Hackathon Sorular 1. Bölüm

Soru 1

Size verilen datanın ortalama konuşma süresini mapreduce kullanarak bulun.

  • Programlama dili bağımsız olacaktır. (MapReduce kullanmak koşuluyla Java, Python, Perl... olabilir.)
  • Hive veya Pig kullanılmaması gerekmektedir.
  • Output formatınız output_sample_a1.txt ile aynı olmalıdır.

Data :

Bu veri kullanıcıların arama aranma ilişkilerini tutmaktadır.

Aşağıda kolon tanımlarını bulabilirsiniz : START_TIME : Arama başlama zamanı Örnek veri: 2015-04-01 07:14:15.223 END_TIME : Arama bitiş zamanı Örnek veri: 2015-04-01 07:16:00.000 CALLED_NO : Aranan abone kodu Örnek veri: 12806310 CALLING_NO : Arayan abone kodu Örnek veri: 12395211 TERMINATION_CAUSE_ID : Arama sonlandırma tipi bu veri karartılmıştır. Örnek veri : 8 CONVERSATION_TIME : Arama süresi Örnek veri: 12,5

Soru 2

Toplam en uzun süre arayan ve toplam en uzun süre aranan kişiyi MapReduce kullanarak bulun.

  • Programlama dili bağımsız olacaktır. (MapReduce kullanmak koşuluyla Java, Python, Perl... olabilir.)
  • Hive veya Pig kullanılmaması gerekmektedir.
  • Output formatınız output_sample_a2.txt ile aynı olmalıdır.

Data :

Veri tanımı soru 1 de açıklanmıştır.

Soru 3

İstanbul’daki arama sürelerinin ortalamasını bulun.

  • Hive veya Pig kullanılması gerekmektedir. Dileyenler mapreduce kullanılabilir.
  • Output formatınız output_sample_a3.txt ile aynı olmalıdır. İpucu: Her bir abonenin bulunduğu şehir ile arama kayıtlarının bulunduğu tablo joinlenecektir.

Data :

Veri tanımı soru 1 de açıklanmıştır.

Bu veri kullanıcıların yaşadıkları şehirleri bulundurmaktadır. SUBSCRIBER_ID : Abone kodu. Örnek veri: 12806310 CITY_OF_RESIDENCE : Abonenin yaşadığı şehir. Örnek veri: ISTANBUL

Soru 4

Bir abone diğer aboneyi arar ancak görüşme olmaz. Aranılan abone arayan aboneyi 1 dakika içerisinde tekrar arar ve konuşur. Bu şarta uyan en çok arama yapan 10 kişiyi bulun.

  • Hive veya Pig kullanılması gerekmektedir. Dileyenler mapreduce kullanılabilir.
  • Output formatınız output_sample_a4.txt ile aynı olmalıdır. Örnek: Ahmet, Mehmet’i 14:01:00 arar. Ancak konuşma yapmazlar. Mehmet, Ahmet’i 14:02:00 saati öncesinde geri arar ve belli bir süre konuşurlar. Ahmet’in davranışını en çok sergileyen 10 kişiyi bulun.

Data :

Veri tanımı soru 1 de açıklanmıştır.

Soru 5

En az aranan ildeki en çok aranan 3 aboneyi bulun.

  • Hive veya Pig kullanılması gerekmektedir. Dileyenler mapreduce kullanılabilir.
  • Output formatınız output_sample_a5.txt ile aynı olmalıdır. İpucu: Her bir abonenin bulunduğu şehir ile arama kayıtlarının bulunduğu tablo joinlenecektir.

Data :

Veri tanımı soru 1 de açıklanmıştır.

Veri tanımı soru 3 de açıklanmıştır.

Soru 6

Size verilen data içerisinde bir kişinin kaç farklı kişiye sms attığını büyükten küçüğe sıralayın. Sadece ilk 20 kayıt istenmektedir.

  • Programlama dili bağımsız olacaktır. (MapReduce kullanmak koşuluyla Java, Python, Perl... olabilir.)
  • Hive veya Pig kullanılmaması gerekmektedir.
  • Output formatınız output_sample_a6.txt ile aynı olmalıdır.

Data :

Bu veri kullanıcıların arama aranma ve SMS gönderme alma ilişkilerini tutmaktadır.

CALLED_NO : Aranan abone kodu Örnek veri: 12806310 CALLING_NO : Arayan abone kodu Örnek veri: 12395211 CALL_TYPE : Arama tipi Örnek veri: SMS DURATION : Arama süresi Örnek veri: 12 CALL_COUNT : Arama sayısı Örnek veri: 25

Soru 7

Verilen dataset üzerinde arama başlangıç saatine ve o saat içerisindeki toplam arama süresine göre aboneleri kümeleyiniz.

  • Not1: Her subscriber id için her saatte yaptıkları toplam arama süresi hesaplanmalıdır.
  • Not2: K-means algoritmasını kullanınız. Similarity için Euclidean kullanınız. Initialize işlemini K-Means ile 1000 iteration la yapınız.
  • Not3: Ürettiğiniz 5 cluster ı output dosyasına yazınız.

Dataset i aşağıdaki url den Reader ile okuyabilirsiniz. Aşağıda verilen tek dataset üzerinde çalışabilirsiniz.

https://tbigdatahackathonstorage.blob.core.windows.net/samplecalldatamlcontainer/call_data_ml.txt

Soru 8

Verilen dataset üzerinde arayan ve aranan subscriber id ikilileri için sonlanma tipi sayılarına göre anormal durumlar varsa belirleyiniz.

  • Not1: Yapacağınız çalışmada bütün arama sonlanma tiplerini göz önünde bulundurmanız gerekmektedir.
  • Not2: Her arayan ve aranan subscriber id ikilisi için sonlanma tiplerine göre toplam çağrı sayılarının hesaplanması gerekmektedir.
  • Not3: Scored Probabilities e göre en yüksek olan 100 anormal durumu output dosyasına yazınız.
  • Not4: Support Vector Machine algoritmasını kullanınız.
  • Not5: Output dosyasında tab separated arayan ve aranan subscriber id ikilisi ve Scored Probabilities yer almalıdır.

Dataset i aşağıdaki url den Reader ile okuyabilirsiniz. Aşağıda verilen tek dataset üzerinde çalışabilirsiniz.

https://tbigdatahackathonstorage.blob.core.windows.net/samplecalldatamlcontainer/call_data_ml.txt https://tbigdatahackathonstorage.blob.core.windows.net/samplecalldatamlcontainer/termination_cause_list.txt