首先我要说的是,这不是在Spark中运行。
我试图做的是:
- 从S3中的parquet文件流n条记录
- 处理
- 流回到S3中的另一个文件 ...但我只询问第一步。
尝试了各种方法,例如:
from pyarrow import fs
from pyarrow.parquet import ParquetFile
s3 = fs.S3FileSystem(access_key=aws_key, secret_key=aws_secret)
with s3.open_input_stream(filepath) as f:
print(type(f)) # pyarrow.lib.NativeFile
parquet_file = ParquetFile(f)
for i in parquet_file.iter_batches(): # .read_row_groups() would be better
# process
...但是出现了OSError: only valid on seekable files
,不确定如何解决。
如果这是重复的问题,请谅解。我进行了搜索,但没有找到完全符合我要求的答案。