作者:最好的冰雪之母_227 | 来源:互联网 | 2023-01-29 18:15
我在使用Ambari上的spark 2.1.1和hadoop 2.6时遇到了问题.我首先在本地计算机上测试了我的代码(单节点,本地文件),一切都按预期工作:
from pyspark.sql import SparkSession
spark = SparkSession\
.builder\
.master('yarn')\
.appName('localTest')\
.getOrCreate()
data = spark.read.format('orc').load('mydata/*.orc')
data.select('colname').na.drop().describe(['colname']).show()
+-------+------------------+
|summary| colname |
+-------+------------------+
| count| 1688264|
| mean|17.963293650793652|
| stddev|5.9136724822401425|
| min| 0.5|
| max| 87.5|
+-------+------------------+
这些价值观似乎是合理的.
现在我将我的数据上传到hadoop集群(ambari setup,yarn,11个节点)并将其推送到hdfs使用 hadoop fs -put /home/username/mydata /mydata
现在我测试了与下表结尾的相同代码:
from pyspark.sql import SparkSession
spark = SparkSession\
.builder\
.master('yarn')\
.appName('localTest')\
.getOrCreate()
data = spark.read.format('orc').load('hdfs:///mydata/*.orc')
data.select('colname').na.drop().describe(['colname']).show()
+-------+------------------+
|summary| colname |
+-------+------------------+
| count| 2246009|
| mean|1525.5387403802445|
| stddev|16250.611372902456|
| min| -413050.0|
| max| 1.6385821E7|
+-------+------------------+
但另一件事是完全地困惑我- >如果我改变mydata/*.orc
到mydata/any_single_file.orc
和hdfs:///mydata/*.orc
到hdfs:///mydata/any_single_file.orc
两个表(集群,本地PC)都是一样的...
有没有人更多地了解这种奇怪的行为?
非常感谢!