草庐IT

PySpark3

全部标签

python - 如何将多列(即时间、年、月和日期)转换为 pyspark 数据框中的日期时间格式

Dataframe有4列year,month,date,hhmmhhmm-小时和分钟连接在一起例如:10:30等于1030dd=spark.createDataFrame([(2019,2,13,1030),(2018,2,14,1000),(2029,12,13,0300)],["Year","month","date","hhmm"])dd.collect()pysparkdataframedd中日期时间格式的预期输出dd.collect()2019-02-1310:30:002018-2-1410:00:002019-12-1303:00:00 最佳答

python - Spark 1.5.2 + Hadoop 2.6.2 spark-submit 和 pyspark 不使用独立的所有节点

我在独立模式下运行spark-submit或pyspark时遇到问题,如下所示:spark/bin/pyspark--masterspark://:这通常会使用所有节点(至少在以前的版本中)在UI中创建一个正在运行的Spark应用程序。出于某种原因,这样做只会在主节点上运行它,尽管UI显示所有节点都连接到主节点。从节点上的日志中没有错误。任何人都知道可能出了什么问题?作为引用,我的spark-env.sh具有以下配置:exportHADOOP_CONF_DIR=/mnt/hadoop/etc/hadoopexportSPARK_PUBLIC_DNS=exportSPARK_MASTER

scala - 如何在 PySpark 中压缩两个 RDD?

我一直在尝试合并averagePoints1和kpoints2下面的两个Rdd。一直报错ValueError:CannotdeserializeRDDwithdifferentnumberofitemsinpair:(2,1)而且我尝试了很多东西,但我不能这两个Rdds是相同的,具有相同数量的分区。我的下一步是在两个列表上应用欧几里德距离函数来衡量差异,因此如果有人知道如何解决此错误或有不同的方法我可以遵循,我将非常感激。提前致谢averagePoints1=averagePoints.map(lambdax:x[1])averagePoints1.collect()Out[15]:[

hadoop - Oozie pyspark 工作

我的工作流程非常简单。${jobTracker}${nameNode}mapred.compress.map.outputtruelocal[*]SparkExamplemapping.py--executor-memory1G--num-executors3--executor-cores1argument1argument2"Killedjobduetoerror"Spark脚本几乎什么都不做:iflen(sys.argv)脚本位于hdfs上,与workflow.xml位于同一文件夹中。运行工作流程时出现以下错误LauncherERROR,reason:Mainclass[org.

python - 无法从 cmd 表单 spark 目录运行 pyspark

我已经在我的windows10系统中安装了spark1.6(prebuiltforhadoop2.6)版本并且我已经正确设置了环境变量。当我运行pyspark时,我得到这个errormessage.但是我可以从spark目录运行“python”命令并返回正确的版本。谁能帮我解决这个问题? 最佳答案 当您运行python时,它会直接进入python命令行,但对于pyspark,您必须执行此位置不存在的pyspark可执行文件。您正在尝试进入C:\spark但pyspark文件存在于此位置C:\spark\bin\pyspark因此您需

hadoop - 如何配置 pyspark 默认写入 HDFS?

我正在尝试让spark默认写入HDFS。目前,当我在RDD上调用saveAsTextFile时,它​​会写入我的本地文件系统。具体来说,如果我这样做:rdd=sc.parallelize([1,2,3,4,5])rdd.saveAsTextFile("/tmp/sample")它将写入我本地文件系统上名为/tmp/sample的文件。但是,如果我这样做rdd=sc.parallelize([1,2,3,4,5])rdd.saveAsTextFile("hdfs://localhost:9000/tmp/sample")然后它会保存到我本地hdfs实例上的适当位置。有没有办法配置或初始化

apache-spark - 无法使用 PySpark 从 Elasticsearch 读取

也许外面有人可以帮助我。我正在尝试使用PySpark从ES读取数据。我的JupyterNotebook代码非常简单:importpysparkconf=pyspark.SparkConf().setAppName('Test').setMaster('spark://spark-master:7077')sc=pyspark.SparkContext(conf=conf)es_rdd=sc.newAPIHadoopRDD(inputFormatClass="org.elasticsearch.hadoop.mr.EsInputFormat",keyClass="org.apache.h

python - PySpark 和访问 HDFS

我正在尝试获取已复制到HDFS的文件,但我似乎无法弄清楚如何实际连接。例如,我使用以下命令将文件放在HDFS中:hdfsdfs-put~/spark-1.4.0/XXX/YYYinput哪个工作正常,但现在是从PySpark定位它们的问题。spark的文档指向:https://spark.apache.org/docs/latest/hadoop-third-party-distributions.html我使用的是与hadoop2.6匹配的spark版本,但在上述链接指向的目录中没有看到任何conf文件。我可以直接访问输入文件吗?还是需要使用PySpark进行更多配置?

mysql - 如何有效地将 MySQL 表读入 Apache Spark/PySpark?

我有一堆MySQL表需要对其执行一些分析。我目前已将表格导出为CSV文件并将它们放在HDFS上。我现在从PySpark上的HDFS将每个表读入不同的RDD以进行分析。frompyspark.sqlimportSQLContextsqlContext=SQLContext(sc)df=sqlContext.read.format('com.databricks.spark.csv').options(header='true',inferschema='true').load('hdfs://path/to/file.csv')今天我了解到您可以直接从MySQL读取表到Spark。这样做

python - Spark : pyspark crash for some datasets - ubuntu

我正在使用Ubuntu和本地Spark安装(spark-2.0.2)。我的数据集很小,我的代码运行在我有一个小数据。如果我用更多行增加数据集(txt文件),则会发生错误。我在安装了Hadoop的ClouderaVM上尝试了完全相同的代码,并且运行良好。所以,这一定是我的Ubuntu机器上的一些内存问题或限制。还有一些其他类似的问题,例如:ApacheSpark:pysparkcrashforlargedataset但在我的情况下它没有帮助。我没有Hadoop集群,只有Spark、python2.7和java1.8。它工作正常,只是当有一些更复杂的计算或数据集更大时它崩溃了。有什么线索吗