从pyspark中的HDFS读取70gb bson文件然后将其索引到Elastic时出错

时间:2018-01-17 10:18:59

标签: elasticsearch pyspark hdfs bigdata bson

我试图将一个70gb bson文件的数据读作spark中的rdd,然后在经过一些处理后将其索引为弹性。虽然代码对于部分数据(大约20gb)完全正常,但当我获取整个数据时,我收到以下错误:

ERROR BSONFileRecordReader: Error reading key/value from bson file on line 0: Expected size to be 1179749, not 5.
org.bson.BsonSerializationException: Expected size to be 1179749, not 5.

我甚至无法在网上找到类似的问题。我怎么能摆脱它?

1 个答案:

答案 0 :(得分:0)

错误在于bson文件本身。我已将70gb bson文件从一台谷歌服务器转移到其他服务器,在此期间它已损坏。然后我转移了文件的tar形式,代码工作正常。为什么我想以原始形式传输数据是因为,tar和untar比简单传输数据要慢。