我想使用mongoDB連接器在SPARK中執行python文件。 python文件做一個查詢來從mongoDB獲取一些數據,並且它們用SPARK中的映射操作處理這些數據。socket.timeout mongoDB pyspark
執行停止獲取此錯誤消息:「socket.timeout:超時」,而正在執行映射操作。這是輸出我得到:
回溯(最近通話最後一個):文件 「/home/ana/computational_tools_for_big_data/project/review_analysis.py」, 27行,在 bad_reviews = reviews_1.rdd。 map(lambda r:r.text).collect()文件「/usr/local/spark/python/lib/pyspark.zip/pyspark/rdd.py」,第777行,在 收集文件 「/ usr/local /spark/python/lib/pyspark.zip/pyspark/rdd.py「,第142行,在 _load_from_socket文件中」/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py「,行 139,在load_stream文件中 「/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py」,行 156,in _read_with_length文件 「/usr/local/spark/python/lib/pyspark.zip/pyspark/serializers.py」,行 543,位於read_int文件中「/usr/lib/python2.7/socket.py 」行384,在 讀 數據= self._sock.recv(左)socket.timeout:超時
我得到這個問題,因爲我查詢它的文件是非常大的2.3GB,我試過與1GB的文件相同,這是同樣的問題,但它是與400MB的較小文件的作品。
是否可以更改超時時間或使其工作? 有沒有其他方式可以更快處理大量數據?