pyspark读取数据
2021/4/9 18:55:43
本文主要是介绍pyspark读取数据,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
本地文件系统的数据读写
因为Spark采用了惰性机制,在执行转换操作的时候,即使输入了错误的语句,spark-shell也不会马上报错(假设word.txt不存在)
从文件中读取数据创建RDD
ll /root/spark-2.4.3-bin-hadoop2.7/word.txt
-rw-r--r--. 1 root root 45 Apr 9 13:34 /root/spark-2.4.3-bin-hadoop2.7/word.txt
>>> textFile = sc.textFile("file:///root/spark-2.4.3-bin-hadoop2.7/word.txt")
>>> textFile.collect()
['Hadoop is good', 'Spark is fast', 'Spark is better']
把RDD写入到文本文件中
>>> textFile.saveAsTextFile("file:///opt/writeback")
[root@hdp-node2 writeback]# cd /opt/writeback/
[root@hdp-node2 writeback]# ll
total 8
-rw-r--r--. 1 root root 29 Apr 9 18:00 part-00000
-rw-r--r--. 1 root root 16 Apr 9 18:00 part-00001
-rw-r--r--. 1 root root 0 Apr 9 18:00 _SUCCESS
分布式文件系统HDFS的数据读写
从分布式文件系统HDFS中读取数据,也是采用textFile()方法,可以为textFile()方法提供一个HDFS文件或目录地址,如果是一个文件地址,它会加载该文件,如果是一个目录地址,它会加载该目录下的所有文件的数据
[root@hdp-node2 opt]# hdfs dfs -ls /worddata/
Found 1 items
-rw-r--r-- 3 root hdfs 45 2021-04-09 18:04 /worddata/word.txt
>>> textFile = sc.textFile("/worddata/")
>>> textFile.collect()
['Hadoop is good', 'Spark is fast', 'Spark is better']
>>> textFile.first()
'Hadoop is good'
>>>
>>> textFile = sc.textFile("hdfs://namespace/worddata/word.txt")
>>> textFile.collect()
['Hadoop is good', 'Spark is fast', 'Spark is better']
同样,可以使用saveAsTextFile()方法把RDD中的数据保存到HDFS文件中,命令如下:
textFile.saveAsTextFile("/datawriteback")
这篇关于pyspark读取数据的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-05-15鸿蒙生态设备数量超8亿台
- 2024-05-13TiDB + ES:转转业财系统亿级数据存储优化实践
- 2024-05-09“2024鸿蒙零基础快速实战-仿抖音App开发(ArkTS版)”实战课程已上线
- 2024-05-09聊聊如何通过arthas-tunnel-server来远程管理所有需要arthas监控的应用
- 2024-05-09log4j2这么配就对了
- 2024-05-09nginx修改Content-Type
- 2024-05-09Redis多数据源,看这篇就够了
- 2024-05-09Google Chrome驱动程序 124.0.6367.62(正式版本)去哪下载?
- 2024-05-09有没有大佬知道这种数据应该怎么抓取呀?
- 2024-05-09这种运行结果里的10.100000001,怎么能最快改成10.1?