私はSpark AppにAmazon S3のテキストを読み込ませます。私はdata.collect
を行うと、私は次のエラーを取得Apache SparkがS3を読み込みます:thread.lockオブジェクトをpickleできません
import boto3
s3_client = boto3.client('s3')
text_keys = ["key1.txt", "key2.txt"]
data = sc.parallelize(text_keys).flatMap(lambda key: s3_client.get_object(Bucket="my_bucket", Key=key)['Body'].read().decode('utf-8'))
:
TypeError: can't pickle thread.lock objects
を、私はオンライン任意のヘルプを見つけるように見えることはありません私は、次の単純なスクリプトを書きました。おそらく誰かが上記を解決することができましたか?
初期化のオーバーヘッドを減らす以下の答えはあなたの問題を解決した場合は、コードを編集してください。 – ZZzzZZzz
@Zzz彼はなぜ彼のコードを編集するだろうか? @eliasah。 – eliasah
これは、回答の権利をマークするだけで正しい方法であり、コードを修正することが他人を助ける最良の方法だからです。 – ZZzzZZzz