我已按照以下指南在本地计算机(Windows 10)上安装spark:https://changhsinlee.com/install-pyspark-windows-jupyter/.
从Anaconda启动笔记本并运行时:
spark_session = SparkSession\
.builder\
.master("local[*]")\
.appName("Z_PA")\
.getOrCreate()
它需要很长时间,而且不会完成(至少在60分钟内)。
在此之前,我收到了错误“java-gage-Process-exited-前…”。阅读此内容后:“https://stackoverflow.com/questions/31841509/pyspark-exception-java-gateway-process-exited-before-sending-the-driver-its-po”我安装了以下版本并更改了不带空格的目录。
我下载并安装了:
Spark存储在:C:\spark。Java存储在:C:\Java中,我已经在我的“环境变量:用户变量...”中添加了这两个变量。
我也安装了pyspark和findpark。这些代码行执行没有任何问题:
import findspark
findspark.init('C:\spark\spark-3.0.3-bin-hadoop2.7')
findspark.find()
import pyspark # only run after findspark.init()
from pyspark import SparkContext
from pyspark.sql import SparkSession
有人知道为什么要花这么长时间才能得到火花会话吗?我的安装中有什么地方似乎不正确吗?
这是我在带有蟒蛇的窗户机器上安装和运行pyspark的“配方”:
先决条件:
如何创建虚拟环境项目并在venv中安装pyspark:
cd path/to/workspace
准备在Windows上使用公园(火花,哈多普)
为火花和哈道夫创建文件夹,例如在以下路径C中:/用户/您的姓名/spark_setup/
- 将 spark-3.2.0-垃圾-哈道普 2.7.tgz 从 https://archive.apache.org/dist/spark/spark-3.2.0/ 下载到您的spark_setup文件夹
- 使用以下命令
tar -xvzf spark-3.2.0-bin-hadoop2.7.tgz
提取到spark_setup文件夹中 - 例如,在spark_setup文件夹中创建一个
/hadoop/bin
文件夹,例如,像这样 C:/用户/您的姓名/spark_setup/spark-3.2.0-bin-hadoop2.7/hadoop/bin/
- 下载 https://github.com/steveloughran/winutils/blob/master/hadoop-2.7.1/bin/winutils.exe 并将其放在
C:/用户/您的姓名/spark_setup/火花-3.2.0-bin-hadoop2.7/hadoop/bin/
运行这个python文件
from datetime import datetime, date
import pandas as pd
from pyspark.sql import Row
from pyspark.sql import SparkSession
import os
if __name__ == '__main__':
os.environ['PYSPARK_PYTHON'] = <path/to/workspace/testproject/venv/Scripts/python.exe>
os.environ['HADOOP_HOME'] = "C:/Users/YourName/spark_setup/spark-3.2.0-bin-hadoop2.7/hadoop"
spark = SparkSession.builder.getOrCreate()
df = spark.createDataFrame([
Row(a=1, b=2., c='string1', d=date(2000, 1, 1), e=datetime(2000, 1, 1, 12, 0)),
Row(a=2, b=3., c='string2', d=date(2000, 2, 1), e=datetime(2000, 1, 2, 12, 0)),
Row(a=4, b=5., c='string3', d=date(2000, 3, 1), e=datetime(2000, 1, 3, 12, 0))
])
df.show(2)
编辑1 当选择正确的scala版本时,它似乎会更进一步,但我不确定下面的输出是否仍然有需要解决的错误:
由于,我检查了一个spark作业的输出拼花文件,该作业总是会发出声音。我在Cloudera 5.13.1上使用了 我注意到拼花地板排的大小是不均匀的。第一排和最后一排的人很多。剩下的真的很小。。。 拼花地板工具的缩短输出,: 这是已知的臭虫吗?如何在Spark中设置拼花地板块大小(行组大小)? 编辑: Spark应用程序的作用是:它读取一个大的AVRO文件,然后通过两个分区键(使用
一些脚本在工作时什么也不做,当我手动运行它们时,其中一个失败了,出现了以下消息: 错误SparkUI:未能绑定SparkUI java.net.bindexception:地址已在使用:服务“SparkUI”在重试16次后失败! 所以我想知道是否有一种特定的方法来并行运行脚本?
在Spark独立集群中,主节点是否也运行任务?我不确定是否有Executors进程在主节点上旋转并与工作节点一起工作。 谢了!
我在一个Spark项目上工作,这里我有一个文件是在parquet格式,当我试图用java加载这个文件时,它给了我下面的错误。但是,当我用相同的路径在hive中加载相同的文件并编写查询select*from table_name时,它工作得很好,数据也很正常。关于这个问题,请帮助我。 java.io.ioException:无法读取页脚:java.lang.runtimeException:损坏的文
我是新来的火花...在阅读基本原理时,一些基本的东西我不清楚: