在 IntelliJ IDEA 中编写和 运行 pyspark
Write and run pyspark in IntelliJ IDEA
我正在尝试在 IntelliJ 中使用 Pyspark,但我不知道如何正确安装 it/setup 项目。我可以在 IntelliJ 中使用 Python,我可以使用 pyspark shell,但我无法告诉 IntelliJ 如何找到 Spark 文件(导入 pyspark 结果为 "ImportError: No module named pyspark")。
任何关于如何 include/import spark 以便 IntelliJ 可以使用它的提示。
谢谢。
更新:
我试过这段代码:
from pyspark import SparkContext, SparkConf
spark_conf = SparkConf().setAppName("scavenge some logs")
spark_context = SparkContext(conf=spark_conf)
address = "C:\test.txt"
log = spark_context.textFile(address)
my_result = log.filter(lambda x: 'foo' in x).saveAsTextFile('C:\my_result')
出现以下错误消息:
Traceback (most recent call last):
File "C:/Users/U546816/IdeaProjects/sparktestC/.idea/sparktestfile", line 2, in <module>
spark_conf = SparkConf().setAppName("scavenge some logs")
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\conf.py", line 97, in __init__
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\context.py", line 221, in _ensure_initialized
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\java_gateway.py", line 35, in launch_gateway
File "C:\Python27\lib\os.py", line 425, in __getitem__
return self.data[key.upper()]
KeyError: 'SPARK_HOME'
Process finished with exit code 1
比如这样的东西:
from pyspark import SparkContext, SparkConf
spark_conf = SparkConf().setAppName("scavenge some logs")
spark_context = SparkContext(conf=spark_conf)
address = "/path/to/the/log/on/hdfs/*.gz"
log = spark_context.textFile(address)
my_result = (log.
...here go your actions and transformations...
).saveAsTextFile('my_result')
在您的程序中为(SPARK_HOME
和 PYTHONPATH
)设置环境路径 run/debug
配置。
例如:
SPARK_HOME=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/
PYTHON_PATH=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/pyspark
查看附件中的 IntelliJ Idea 快照
1 我遇到的问题是 space,如 'Program Files\spark' 中的环境变量 SPARK_HOME 和 PYTHONPATH(如上所述),因此我将 spark 二进制文件移至我的用户目录。感谢 的回答。
另外,请确保您安装了环境的包。
确保在项目结构 -> 平台设置 SDK -> Python SDK(选择) -> 包中看到 pyspark 包。
我正在尝试在 IntelliJ 中使用 Pyspark,但我不知道如何正确安装 it/setup 项目。我可以在 IntelliJ 中使用 Python,我可以使用 pyspark shell,但我无法告诉 IntelliJ 如何找到 Spark 文件(导入 pyspark 结果为 "ImportError: No module named pyspark")。
任何关于如何 include/import spark 以便 IntelliJ 可以使用它的提示。
谢谢。
更新:
我试过这段代码:
from pyspark import SparkContext, SparkConf
spark_conf = SparkConf().setAppName("scavenge some logs")
spark_context = SparkContext(conf=spark_conf)
address = "C:\test.txt"
log = spark_context.textFile(address)
my_result = log.filter(lambda x: 'foo' in x).saveAsTextFile('C:\my_result')
出现以下错误消息:
Traceback (most recent call last):
File "C:/Users/U546816/IdeaProjects/sparktestC/.idea/sparktestfile", line 2, in <module>
spark_conf = SparkConf().setAppName("scavenge some logs")
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\conf.py", line 97, in __init__
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\context.py", line 221, in _ensure_initialized
File "C:\Users\U546816\Documents\Spark\lib\spark-assembly-1.3.1-hadoop2.4.0.jar\pyspark\java_gateway.py", line 35, in launch_gateway
File "C:\Python27\lib\os.py", line 425, in __getitem__
return self.data[key.upper()]
KeyError: 'SPARK_HOME'
Process finished with exit code 1
比如这样的东西:
from pyspark import SparkContext, SparkConf
spark_conf = SparkConf().setAppName("scavenge some logs")
spark_context = SparkContext(conf=spark_conf)
address = "/path/to/the/log/on/hdfs/*.gz"
log = spark_context.textFile(address)
my_result = (log.
...here go your actions and transformations...
).saveAsTextFile('my_result')
在您的程序中为(SPARK_HOME
和 PYTHONPATH
)设置环境路径 run/debug
配置。
例如:
SPARK_HOME=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/
PYTHON_PATH=/Users/<username>/javalibs/spark-1.5.0-bin-hadoop2.4/python/pyspark
查看附件中的 IntelliJ Idea 快照
1 我遇到的问题是 space,如 'Program Files\spark' 中的环境变量 SPARK_HOME 和 PYTHONPATH(如上所述),因此我将 spark 二进制文件移至我的用户目录。感谢