我拥有的数据是一种流数据。我想将它们存储到一个 Parquet 文件中。
但是 Pyarrow 每次都会覆盖 Parquet 文件。那么我该怎么办呢?
我尝试不关闭编写器,但这似乎是不可能的,因为如果我不关闭它,那么我将无法读取该文件。
这是包:
import pyarrow.parquet as pp
import pyarrow as pa
for name in ['LEE','LSY','asd','wer']:
writer=pq.ParquetWriter('d:/test.parquet', table.schema)
arrays=[pa.array([name]),pa.array([2])]
field=[pa.field('name',pa.string()),pa.field('age',pa.int64())]
table=pa.Table.from_arrays(arrays,schema=pa.schema(field))
writer.write_table(table)
writer.close()
但实际上我想每次关闭编写器,然后重新打开它以在数据中附加一行,如下所示:
for name in ['LEE','LSY','asd','wer']:
writer=pq.ParquetWriter('d:/test.parquet', table.schema)
arrays=[pa.array([name]),pa.array([2])]
field=[pa.field('name',pa.string()),pa.field('age',pa.int64())]
table=pa.Table.from_arrays(arrays,schema=pa.schema(field))
writer.write_table(table)
writer.close()