【发布时间】:2017-03-29 14:26:24
【问题描述】:
所以,我是 AWS S3 和 pyspark 和 linux 的新手。我不知道从哪里开始。这是我的问题:
在 linux 中,我可以发出以下命令,并且可以看到文件夹中的文件:
aws s3 ls 's3://datastore/L2/parquet'
用 python 做类似的事情是行不通的
import os
os.listdir('s3://datastore/L2/parquet')
报错:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
OSError: [Errno 2] No such file or directory: 's3://datastore/L2/parquet'
不过,pyspark 和 SQLContext.read.parquet 很好理解:
from pyspark.sql import SQLContext
sqlContext = SQLContext(sc)
df = sqlContext.read.parquet('s3://datastore/L2/parquet')
为什么它在SQLContext 中有效而在os.listdir 中无效?我可以从哪里开始消除我的困惑?除了“获得 CS 学士学位”之外的任何回复都会有所帮助。
【问题讨论】: