1
pyspark를 사용하여 s3 버킷에 연결하려고합니다. 1.6 & 하둡 스파크,PySpark - s3에 연결 - rdd에 파일 읽기
"s3n" not recognized
사용하고 :
textFile() takes at most 4 arguments (5 given)
가 이전에이 같은 것을 던져 사용 :
from boto.s3.connection import S3Connection
AWS_KEY = '...'
AWS_SECRET = '...'
aws_connection = S3Connection(AWS_KEY, AWS_SECRET)
bucket = aws_connection.get_bucket('activitylogs-prod')
sc._jsc.hadoopConfiguration().set("fs.s3n.awsAccessKeyId", AWS_KEY)
sc._jsc.hadoopConfiguration().set("fs.s3n.awsSecretAccessKey", AWS_SECRET)
print len(list(bucket.list()))
for key in bucket.list():
file_name = 's3n://myBucket/'+key.name
print file_name
rdd = sc.textFile(file_name
,'org.apache.hadoop.mapred.TextInputFormat',
'org.apache.hadoop.io.Text',
'org.apache.hadoop.io.LongWritable'
)
print rdd.count()
그것은 말하는 예외가 발생합니다 :
아래 코드입니다 2.6
그래서 많은 스레드를 확인했지만 내 경우에는 아무것도 작동하지 않는 것 같습니다.
이 문제를 해결하는 방법에 대한 제안은 매우 감사하겠습니다.
hadoopFile을 사용하여 시도했지만 "z : org.apache.spark.api.python.PythonRDD.hadoopFile을 호출하는 동안 오류가 발생했습니다 .: java.io.IOException : No FileSystem for scheme : s3n" –
그건 Hadoop 모듈화에서 알려진 문제입니다. -> https://issues.apache.org/jira/browse/SPARK-7442 Spark에서 제대로 작동하려면 적절한 파일과 설정을 포함해야합니다. 더 이상 내장되어있다. –