zoukankan      html  css  js  c++  java
  • idea配置pyspark

    默认python已经配好,并已经导入idea,只剩下pyspark的安装

    1、解压spark-2.1.0-bin-hadoop2.7放入磁盘目录

       D:spark-2.1.0-bin-hadoop2.7

    2、将D:spark-2.1.0-bin-hadoop2.7pythonpyspark拷贝到目录Python的Libsite-packages

    3、在idea中配置spark环境变量

    (1)

    (2)

    (3)

    其中,需要配置的是SPARK_HOME。

    如果系统中有多个版本的python,或者系统找不到python的位置,则需要配置PYSPARK_PYTHON ,我这里使用的是conda的python, E:Program FilesAnaconda3python.exe

    (4) 安装py4j

    pip install py4j 

    4、创建session需要注意的地方

    from pyspark.sql import SparkSession
    # appName中的内容不能有空格,否则报错
    spark = SparkSession.builder.master("local[*]").appName("WordCount").getOrCreate()
    
    #获取上下文
    sc = spark.sparkContext
    带有空格报错情况如下:

    5、创建上下文,两种方式

    #第一种
    conf = SparkConf().setAppName('test').setMaster('local')
    sc = SparkContext(conf=conf)
    #第二种
    sc=SparkContext('local','test')

    6、实例(读取文件并打印)

    from pyspark import SparkContext, SparkConf
    
    conf = SparkConf().setAppName('test').setMaster('local')
    sc = SparkContext(conf=conf)
    
    rdd = sc.textFile('d:/scala/log.txt')
    print(rdd.collect())

    结果:

    注意:还有一种错误如下所示

    Java.util.NoSuchElementException: key not found: _PYSPARK_DRIVER_CALLBACK_HOST
    这是因为版本的问题,可能pyspark的版本与spark不匹配
    例如:
    spark是2.1.0
    所以当使用pip安装pyspark时需要带上版本号:
    pip install pyspark==2.1.2;
    皆为2.1版本
     

     

    
    
    
  • 相关阅读:
    转 Hystrix超时实现机制
    Hystrix实现ThreadLocal上下文的传递 转
    MongoDB里做表间关联
    转载:mongodb的两阶段提交实战
    MongoDB中的读写锁
    Mongodb中的 原子性 隔离性
    web服务优化
    MongoDB分片(Sharding)技术
    MongoDB复制集
    consul分布式集群搭建
  • 原文地址:https://www.cnblogs.com/guozw/p/10046156.html
Copyright © 2011-2022 走看看