当我在pycharm执行spark代码时提示下面的俩个错误
1.WARN NativeCodeLoader: Unable to load native-hadoop library for your platform… using builtin-java classes where applicable
(无法为您的平台加载本机hadoop库…在适用的情况下使用内置java类)
2.py4j.protocol.Py4JError: org.apache.spark.api.python.PythonUtils.isEncryptionEnabled does not exist in the JVM
代码如下:
from pyspark.sql import SparkSession
if __name__ == "__main__":
spark = SparkSession \
.builder \
.appName("PySpark") \
.master("local") \
.getOrCreate()
spark.conf.set("spark.executor.memory", "500M")
sc = spark.sparkContext
a = sc.parallelize([1, 2, 3])
b = a.flatMap(lambda x: (x, x ** 2))
print(a.collect())
print(b.collect())
针对第一个问题,百度了一大圈仍然无法解决问题
针对第二个问题
在从pyspark导入SparkConf之前先执行下面的语句:
import findspark
findspark.init()
作用就是初始化找到本机安装的spark的环境,这样就可以了,记录一下备忘。
至此程序已可以执行,至于第一个问题待我解决后再更新