O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

PySpark入門1

PySpark入門として、2014年11月06日に株式会社ALBERTで開催した社内勉強会で利用したスライドです。
PySparkのインストール方法、簡単な使い方、IPythonからPySparkをinteractive modeで触ってみるところまでを紹介しています。

  • Entre para ver os comentários

PySpark入門1

  1. 1. 1Z4QBSLⰅꟌ !JLUBLBIJSP寑ⰻ㷀㉔
  2. 2. 荈䊹稱➜ ˖ 寑ⰻ㷀㉔5BLBIJSP*LFVDIJ ˖ 吳䒭⠓爡-#35㛁遤䕵㆞ ˖ !JLUBLBIJSP ˖ IUUQMJCSBCVDIKQ ˖ 1ZUIPO 84 3FETIJGU ,JOFTJTFUD 2
  3. 3. HFOEB ˖ QBDIF4QBSLהכ 3 ˖ 1Z4QBSLהכ ˖ 1Z4QBSL׾⹛ַ׃ג׫׷ ˖ *1ZUIPOד1Z4QBSL ˖ 1Z4QBSLד.-MJCׁ׻׶׌ֽ
  4. 4. QBDIF4QBSLהכ 4
  5. 5. QBDIF4QBSLהכ ˖ 傀ח׋ֻׁ׿铂׵׸גְ׷ךד鑫稢כ ⶴ䠥׃תָׅְֹז׶ ˖ ؎ًٌٝٔד넝鸞חⴓ侔Ⳣ椚ָ遤ִ׷ ؿٖ٦يٙ٦ؙד ˖ .-MJCהְֲ堣唒㷕统ٓ؎ـָٓٔ ⵃ欽דֹ׋׶׃ג葿ղ䎊ׇ׫׋ְדׅ 5
  6. 6. -#35ؒٝآص،ـؚٗˑ4QBSL˒ ˖ IUUQUFDIBMCFSUDPKQ T4QBSL ˖ .-MJCך鑧겗׾⚥䗰ח《׶䪔׏גְ׷ך ד僽ꬊ׀׵׿ֻ׌ְׁ 6
  7. 7. 㹑⠗ֶ׻׶ 7
  8. 8. 1Z4QBSLהכ 8
  9. 9. 1Z4QBSLהכ ˖ 4QBSL׾㹋遤ׅ׷׋׭ך1ZUIPO1* ˖ 禸חכ劢㼎䘔זךדֶהז׃ֻ דⵃ欽׃ת׃׳ֲկ 9
  10. 10. 1Z4QBSL3FGFSFODF ˖ 1*%PDT IUUQTTQBSLBQBDIFPSHEPDTBQJ QZUIPOJOEFYIUNM ˖ 4QBSLYBNQMF IUUQTTQBSLBQBDIFPSHFYBNQMFTIUNM 10
  11. 11. 1Z4QBSLך岣䠐 ˖ 儗挿דכ⟃♴ך岣䠐剅ָֹկ ˑ1Z4QBSLEPFTOPUZFUTVQQPSUBGFX1*DBMMT TVDIBTMPPLVQBOEOPOUFYUJOQVU MFT UIPVHI UIFTFXJMMCFBEEFEJOGVUVSFSFMFBTFT˒ ˖ ך3FGFSFODFח׮˒UIJTJTOPUZFU TVQQPSUFEJO1ZUIPO˒瘝ך鎸鯹ָ֮׶⢪ִ זְ堣腉ְָֻאַ֮׶׉ֲկ 11
  12. 12. 1Z4QBSL׾⹛ַ׃ג׫׷ 12
  13. 13. 1Z4QBSLֶ䩛鯪㹋遤倯岀 ˖ 4QBSLךCJO⟃♴חQZTQBSLהְֲ ؿ؋؎ָٕⰅ׏גְתׅկ ֿך⚥魦כ׋׌ךTIFMMTDSJQU ˖ QZTQBSL׾㹋遤ׅ׷הJOUFSBDUJWF NPEFד1Z4QBSL׾饯⹛דֹתׅկ ˖ QZTQBSLDNEָ♧筰ח֮׷ךד 8JOEPXTד׮ֹ׏ה⹛ֻկ 13
  14. 14. UJNFTUBNQדֿך项俱⡲׏ג׷儗꟦ָל׸׉ֲ 14
  15. 15. ׉׮׉׮4QBSL׾㼪Ⰵׅ׷חכ ˖ ְֻא׮倯岀ָ֮׶תָׅծ%PDLFS ך؎ً٦آQVMMָ׋ע׿嚂կ $ docker pull sequenceiq/spark:1.1.0 $ docker run -i -t -h sandbox sequenceiq/spark /etc/bootstrap.sh -bash 15
  16. 16. ˖ UH[ַ׵CVJME׮ꨇ׃ֻזְדָׅծ وءٝػٙ٦ָזְהַז׶儗꟦ָ ַַ׶תׅկ $ curl -O http://d3kbcqa49mib13.cloudfront.net/spark-1.1.0.tgz $ export MAVEN_OPTS=-Xmx2g -XX:MaxPermSize=1024M -XX:ReservedCodeCacheSize=1024m” $ mvn -DskipTests clean package 16
  17. 17. sc.parallelize(range(1000)).count() 17 ˖ ⹛ַ׃ג׫׷
  18. 18. ז׿ַ邌爙ׁ׸ג 剑䖓חה⳿ג׸ל《׶侒ִ׆⹛ְגְ׷ 18
  19. 19. *1ZUIPOד1Z4QBSL 19
  20. 20. ֶׁ׵ְ*1ZUIPOהכ ˖ 1ZUIPOך䓼⸂זJOUFSBDUJWF橆㞮 ˖ 酡㸣׃׋׶㢌侧ך⚥׾鋖ְ׋׶ ˖ 4IFMMה1ZUIPO׾ء٦يٖأח乼⡲ דֹ׋׶׃ג⡦ַה⤑ⵃ 20
  21. 21. ˖ ـٓؐؠ♳ד1ZUIPO׾㹋遤דֹ׷ OPUFCPPL堣腉ָ暴ח➂孡 ˖ 1Z$PO+1ד׮㢳ֻך➂ָ *1ZUIPOדفٖئٝ׾׃גְת׃׋կ ipython notebook --matplotlib inline 21
  22. 22. 22
  23. 23. JOUFSBDUJWFח1Z4QBSL׾鍗׷ז׵ וֲׇז׵*1ZUIPO
  24. 24. OPUFCPPL ָ ְְ״י٦הְֲֿהד 鸬⤘ׇׁג׫ת׃׳ֲ 23
  25. 25. QSPMFך⡲䧭ה箟꧊ $ ipython profile create pyspark $ vim ~/.ipython/profile_pyspark/ipython_notebook_config.py ˖ ֿֿכ鸐䌢ך*1ZUIPOך鏣㹀ד0, IUUQJQZUIPOPSHJQZUIPOEPDEFWDPOHJOUSPIUNM 24
  26. 26. 4QBSL欽鏣㹀ؿ؋؎ٕך⡲䧭 $ vim ~/.ipython/profile_pyspark/startup/00-pyspark-setup.py ˖ ⢽ה׃ג♴鎸ך״ֲח鎸鯹׃תׅկ 25 import os import sys os.environ[‘SPARK_HOME’] = ‘/usr/local/spark-1.1.0/‘ sys.path.insert(0, ‘/usr/local/spark-1.1.0/python’) CLUSTER_URL = ‘local’
  27. 27. *1ZUIPOך㹋遤 $ ipython notebook —profile=pyspark OR $ IPYTHON_OPTS=notebook ./pyspark ˖ 饯⹛䖓כ鸐䌢ך*1ZUIPOOPUFCPPLהずׄדׅ 26
  28. 28. )FMMP8PSME涸ז⡦ַ # dict.txt から Bill が含まれる行を抽出する words = sc.textFile('/tmp/dict.txt') for word in words.filter(lambda w: 'Bill' in w).take(7): print(word) 27 # dict.txt Bill Nighy Keira Knightley Bill Cosby Rachel McAdams
  29. 29. 㹋遤穠卓 28
  30. 30. # dict.txt から Bill が含まれる行を抽出する words = sc.textFile('/tmp/dict.txt') for word in words.filter(lambda w: 'Bill' in w).take(7): print(word) ˖ UBLF ׏גזח 3%%$MBTTך*OTUBODF.FUIPE IIUUQTTQBSLBQBDIFPSHEPDTBQJQZUIPOQZTQBSLSEE3%% DMBTTIUNMUBLF ˖ 3%%ַ׵䭷㹀׃׋侧ך銲稆׾《׶⳿ׅ 29 ˖ STU הַ׮֮׷
  31. 31. 3%%חאְג⿫罋חז׶׉ֲז 葺颵זسًُؗٝز׋׍ ˖ 锷俑 IUUQXXXDTCFSLFMFZFEV_NBUFJQBQFST OTEJ@TQBSLQEG ˖ 4QBSLQBDIF4QBSL׏גו׿ז׮ךַ鋅ג׫׷ ׉ך IUUQEIBUFOBOFKQLJNVUBOTL ˖ QBDIF4QBSLך׀稱➜䖓⼱䪮遭زؾحؙ IUUQXXXTMJEFTIBSFOFUIBEPPQYOUUEBUB BQBDIFTQBSL 30
  32. 32. 1Z4QBSLד.-MJC 31
  33. 33. QZTQBSLNMMJC from pyspark.mllib.classification import NaiveBayesMode # 流れというか使い方の雰囲気はこんな感じ model = NaiveBayes.train(sc.parallelize(train_data)) model.predict(features) 32
  34. 34. ˖ QZTQBSLNMMJC IUUQTTQBSLBQBDIFPSHEPDTBQJQZUIPOQZTQBSLNMMJC NPEVMFIUNM ˖ 儗挿ד4DBMB+BWBה嫰ץ׷ה 㹋鄲ׁ׸גְזְ׮ךְָֻאַ ֮׷ ˖ 1ZUIPOךEPD׌ֽדכ鳞ְךד植朐 4DBMBEPD׾鋅׷׃ַזׁ׉ֲ 33
  35. 35. ˖ 1ZUIPOך.-MJCך㹋鄲؟ٝفٕ꧊ IUUQTHJUIVCDPNBQBDIFTQBSLUSFFNBTUFS FYBNQMFTTSDNBJOQZUIPONMMJC ؙٙذؕזٌآُ٦ٕך鎸鯹׮˘ GSPNQZTQBSLNMMJCGFBUVSFJNQPSU8PSE7FD 34
  36. 36. ׀꫼耮֮׶ָהֲ׀ְׂת׃׋ חְאַ竲ֻ 35

×