1. <wbr id="cnjas"><legend id="cnjas"></legend></wbr>

          Linux培訓
          達內IT學院

          400-111-8989

          在Spark中使用IPython Notebook

          • 發布:Linux培訓
          • 來源:Linux教程
          • 時間:2016-10-25 14:36

          當搜索有用的Spark小技巧時,我發現了一些文章提到在PySpark中配置IPython notebook。IPython otebook對數據科學家來說是個交互地呈現科學和理論工作的必備工具,它集成了文本和Python代碼。對很多數據科學家,IPython otebook是他們的Python入門,并且使用非常廣泛,所以我想值得在本文中提及。

          這里的大部分說明都來改編自IPython notebook: 在PySpark中設置IPython。但是,我們將聚焦在本機以單機模式將IPtyon shell連接到PySpark,而不是在EC2集群。

          1.為Spark創建一個iPython notebook配置

          ~$ ipython profile create spark
          [ProfileCreate] Generating default config file: u'$HOME/.ipython/profile_spark/ipython_config.py'
          [ProfileCreate] Generating default config file: u'$HOME/.ipython/profile_spark/ipython_notebook_config.py'
          [ProfileCreate] Generating default config file: u'$HOME/.ipython/profile_spark/ipython_nbconvert_config.py
          記住配置文件的位置,替換下文各步驟相應的路徑:

          2.創建文件$HOME/.ipython/profile_spark/startup/00-pyspark-setup.py,并添加如下代碼:

           import os
           import sys
           
           # Configure the environment
           if 'SPARK_HOME' not in os.environ:
               os.environ['SPARK_HOME'] = '/srv/spark'
           
           # Create a variable for our root path
           SPARK_HOME = os.environ['SPARK_HOME']
           
           # Add the PySpark/py4j to the Python Path
           sys.path.insert(0, os.path.join(SPARK_HOME, "python", "build"))
           sys.path.insert(0, os.path.join(SPARK_HOME, "python"))

          3.使用我們剛剛創建的配置來啟動IPython notebook。

          ~$ ipython notebook --profile spark

          4.在notebook中,你應該能看到我們剛剛創建的變量。

          print SPARK_HOME

          5.在IPython notebook最上面,確保你添加了Spark context。

          from pyspark import  SparkContext
          sc = SparkContext( 'local', 'pyspark')

          6.使用IPython做個簡單的計算來測試Spark context。

          def isprime(n):
          """
          check if integer n is a prime
          """
          # make sure n is a positive integer
           = abs(int(n))
          # 0 and 1 are not primes
          if n < 2:
              return False
          # 2 is the only even prime number
          if n == 2:
              return True
          # all other even numbers are not primes
          if not n & 1:
              return False
          # range starts with 3 and only needs to go up the square root of n
          # for all odd numbers
          for x in range(3, int(n**0.5)+1, 2):
              if n % x == 0:
                  return False
          return True
           
          # Create an RDD of numbers from 0 to 1,000,000
          ums = sc.parallelize(xrange(1000000))
           
          # Compute the number of primes in the RDD
          print nums.filter(isprime).count()

          如果你能得到一個數字而且沒有錯誤發生,那么你的context正確工作了!

          編輯提示:上面配置了一個使用PySpark直接調用IPython notebook的IPython context。但是,你也可以使用PySpark按以下方式直接啟動一個notebook: $ IPYTHON_OPTS=”notebook –pylab inline” pyspark

          哪個方法好用取決于你使用PySpark和IPython的具體情景。前一個允許你更容易地使用IPython otebook連接到一個集群,因此是我喜歡的方法。

          預約申請免費試聽課

          填寫下面表單即可預約申請免費試聽!怕錢不夠?可就業掙錢后再付學費! 怕學不會?助教全程陪讀,隨時解惑!擔心就業?一地學習,可全國推薦就業!

          上一篇:簡略Spark輸出--Spark入門
          下一篇:在EC2上使用Spark
          • 掃碼領取資料

            回復關鍵字:視頻資料

            免費領取 達內課程視頻學習資料

          • 視頻學習QQ群

            添加QQ群:1143617948

            免費領取達內課程視頻學習資料

          Copyright ? 2021 Tedu.cn All Rights Reserved 京ICP備08000853號-56 京公網安備 11010802029508號 達內時代科技集團有限公司 版權所有

          選擇城市和中心
          黑龍江省

          吉林省

          河北省

          湖南省

          貴州省

          云南省

          廣西省

          海南省

          欧美做爰视频免费播放_做暖全过程免费的视频_性爱免费视频 百度 好搜 搜狗
          <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>