我正在尝试使用下面的代码将数据帧作为文本格式文件加载到html" target="_blank">HDFS和S3中<代码>数据帧名称为最终数据。
val targetPath = "/user/test/File"
val now = Calendar.getInstance().getTime()
val formatter = new SimpleDateFormat("yyyyMMddHHmmss")
val timeStampAfterFormatting = formatter.format(now)
val targetFile = s"""$targetPath/test_$timeStampAfterFormatting.txt"""
finalData.repartition(1).rdd.saveAsTextFile(targetFile)
使用上述代码,我可以成功加载数据。但文件名和我提供的不一样,也不是文本格式。已创建一个目录,其名称如我所述。
目录名称- /user/test/File/test_20170918055206.txt
-bash-4.2$hdfs dfs-ls/user/test/File/test\u 20170918055206。txt文件
找到2个项目
/用户/测试/文件/测试\u 20170918055206。txt/\u成功
/用户/测试/文件/测试\u 20170918055206。txt/part-00000
我想创建我提到的文件,而不是创建目录。谁能帮我一下吗。
在我看来,这是作为设计工作。
您在保存rdd数据之前进行了重新分区操作,这将触发整个数据之间的随机操作,最终得到一个只有一个分区的新rdd。
因此,只有一个分区作为saveAsTextFile操作存储在HDFS中。
此方法设计为允许以统一方式写入任意数量的分区。
例如,如果您的rdd有100个分区,在写入HDFS之前没有合并或重新分区。然后您将获得一个包含_SUCCESS标志和100个文件的目录!
如果这种方法不是这样设计的,那么具有多个分区的rdd如何以简洁、统一、优雅的方式存储,也许用户需要引导多个文件名?...啊,也许太繁琐了
我希望这个解释能帮助你。
如果您需要在本地文件系统上创建一个完整的文件,只需尝试hadoophtml" target="_blank">客户端命令:
hadoop fs-getmerge[src][des]
我想在spark中读取一个CSV,将其转换为DataFrame,并使用将其存储在HDFS中 在Apache Spark中将CSV文件加载为DataFrame的正确命令是什么?
我有如下数据帧: 如何使用字段分隔符将上述数据框另存为文本文件格式|保存我的输出文件后,应该是部分-00000,部分-00001 e.t.c
我有多个csv文件保存在一个文件夹中,具有相同的列布局,并希望将其作为pandas中的数据帧加载到python中。 这个问题与这条线索非常相似。 我使用以下代码: 还有更好的解决方案吗? 这需要很多时间。 谢啦
问题内容: 首先,我对Java非常基础。我正在尝试浏览.txt文件并将其内容加载到文本区域。我已经完成了该部分,直到从JFileChooser接收文件为止,现在我不知道如何做其余的工作。 问题答案: 使用所有Swing文本组件都支持的read(…)和write(…)方法。简单的例子:
我有3个维度为(a*2、b*2、c*2)的数据帧,而a、b、c是不同的数字。我想把它们添加到一个csv文件中,但每次都写不出来。我使用了csv的熊猫数据帧输出端 但做不到。 我的代码- 但是,我得到的最终输出是最后一个数据帧,而不是所有其他数据帧。
我试图解压缩一个csv文件并将其传递给熊猫,这样我就可以处理这个文件了。 到目前为止,我尝试的代码是: 在最后一行之后,尽管python能够获取该文件,但在错误的末尾我得到了一个“不存在”。 有人能告诉我我做错了什么吗?