Your SlideShare is downloading. ×
0
Hadoop
•   sasata299 (         )
•   Hadoop
•        NoSQL
•

•   http://blog.livedoor.jp/sasata299/
Hadoop

•   Google   MapReduce   OSS
•

•

•

•
•   Hadoop
•        Hadoop
•

•                 &   !?
•   Hadoop
•        Hadoop
•

•                 &   !?
896
30         3   1
896
30         3   1
896
30             3   1




           ”           ”
GROUP BY     !!




                   MySQL
(   3.5   )
GROUP BY     !!




                   MySQL
(   3.5   )




          7000
                           ≒292   ……orz
MySQL
…
※
!?
Hadoop
…
7000
 30
•   Hadoop
•        Hadoop
•

•                 &   !?
Hadoop
•   Hadoop Streaming
•         Ruby
•   Cloudera     CDH1           (0.18.3)
•   EC2   Hadoop
•                  10...
Hadoop
•   Hadoop Streaming
•         Ruby
•   Cloudera     CDH1           (0.18.3)
•   EC2   Hadoop
•                  10...
○○
××


○○
××
Hadoop
Hadoop   AWS
Hadoop
Hadoop




         Hadoop
            (EC2)
hadoop-ec2 push [cluster] mapper.rb
hadoop-ec2 push [cluster] reducer.rb




                                       Hadoop...
hadoop-ec2 push [cluster] mapper.rb
hadoop-ec2 push [cluster] reducer.rb




                                       Hadoop...
Hadoop

           hadoop-ec2 exec [cluster] [command]




Hadoop                                      S3
   (EC2)
Hadoop

           hadoop-ec2 exec [cluster] [command]




Hadoop                                      S3
   (EC2)
Hadoop

           hadoop-ec2 exec [cluster] [command]




Hadoop                                      S3
   (EC2)
Hadoop

           hadoop-ec2 exec [cluster] [command]




Hadoop                                      S3
   (EC2)
S3
S3
Hadoop




         Hadoop
            (EC2)
Hadoop
!!
Hadoop
1)
2) Hadoop
3)
•   Hadoop
•        Hadoop
•

•                 &   !?
target_ids # [21310,12902,15321,..]

ARGF.each do |log|
  log.chomp!
  id, foo, bar, ... = log.split(/,/)
  next if target...
:-)
#      1000
hash = Hash.new {|h,k| h[k] = []}
target_ids.each do |_id|
  hash[_id.to_s[0,3]] << _id
end

ARGF.each do |log...
Mapper
Reducer
 - Mapper
 -


     Reducer
•   Hadoop
•        Hadoop
•

•                 &   !?
EC2
 -> AZ
 ->


            JobTracker
 -> 50030
 -> hadoop job -list
10h          8h
      JobTracker
!?
Amazon Elastic MapReduce
Elastic MapReduce
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
マーケティングのためのHadoop利用
Upcoming SlideShare
Loading in...5
×

マーケティングのためのHadoop利用

8,047

Published on

6/4に行われた「クックパッド・PFI共同勉強会」で使った資料です。togetterはこちら。 http://togetter.com/li/26756

Published in: Technology, Health & Medicine

Transcript of "マーケティングのためのHadoop利用"

  1. 1. Hadoop
  2. 2. • sasata299 ( ) • Hadoop • NoSQL • • http://blog.livedoor.jp/sasata299/
  3. 3. Hadoop • Google MapReduce OSS • • • •
  4. 4. • Hadoop • Hadoop • • & !?
  5. 5. • Hadoop • Hadoop • • & !?
  6. 6. 896 30 3 1
  7. 7. 896 30 3 1
  8. 8. 896 30 3 1 ” ”
  9. 9. GROUP BY !! MySQL ( 3.5 )
  10. 10. GROUP BY !! MySQL ( 3.5 ) 7000 ≒292 ……orz
  11. 11. MySQL
  12. 12. … ※
  13. 13. !?
  14. 14. Hadoop
  15. 15.
  16. 16. 7000 30
  17. 17. • Hadoop • Hadoop • • & !?
  18. 18. Hadoop • Hadoop Streaming • Ruby • Cloudera CDH1 (0.18.3) • EC2 Hadoop • 10-50 • Hadoop S3
  19. 19. Hadoop • Hadoop Streaming • Ruby • Cloudera CDH1 (0.18.3) • EC2 Hadoop • 10-50 • Hadoop S3
  20. 20. ○○ ×× ○○ ××
  21. 21. Hadoop
  22. 22. Hadoop AWS
  23. 23. Hadoop
  24. 24. Hadoop Hadoop (EC2)
  25. 25. hadoop-ec2 push [cluster] mapper.rb hadoop-ec2 push [cluster] reducer.rb Hadoop (EC2)
  26. 26. hadoop-ec2 push [cluster] mapper.rb hadoop-ec2 push [cluster] reducer.rb Hadoop (EC2)
  27. 27. Hadoop hadoop-ec2 exec [cluster] [command] Hadoop S3 (EC2)
  28. 28. Hadoop hadoop-ec2 exec [cluster] [command] Hadoop S3 (EC2)
  29. 29. Hadoop hadoop-ec2 exec [cluster] [command] Hadoop S3 (EC2)
  30. 30. Hadoop hadoop-ec2 exec [cluster] [command] Hadoop S3 (EC2)
  31. 31. S3
  32. 32. S3
  33. 33. Hadoop Hadoop (EC2)
  34. 34. Hadoop
  35. 35. !!
  36. 36. Hadoop
  37. 37. 1) 2) Hadoop 3)
  38. 38. • Hadoop • Hadoop • • & !?
  39. 39. target_ids # [21310,12902,15321,..] ARGF.each do |log| log.chomp! id, foo, bar, ... = log.split(/,/) next if target_ids.include?(id) end target_ids 5 …
  40. 40. :-)
  41. 41. # 1000 hash = Hash.new {|h,k| h[k] = []} target_ids.each do |_id| hash[_id.to_s[0,3]] << _id end ARGF.each do |log| log.chomp! id, foo, bar, ... = log.split(/,/) # next if hash[id[0,3]].include?(id) end
  42. 42. Mapper Reducer - Mapper - Reducer
  43. 43. • Hadoop • Hadoop • • & !?
  44. 44. EC2 -> AZ -> JobTracker -> 50030 -> hadoop job -list
  45. 45. 10h 8h JobTracker
  46. 46. !?
  47. 47. Amazon Elastic MapReduce
  48. 48. Elastic MapReduce
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×