ray.data.datasource.BlockBasedFileDatasink#

class ray.data.datasource.BlockBasedFileDatasink(path, *, num_rows_per_file: int | None = None, **file_datasink_kwargs)[源代码]#

基类:_FileDatasink

一个将多行写入每个文件的数据接收器。

子类必须实现 write_block_to_file 并调用父类构造函数。

示例

class CSVDatasink(BlockBasedFileDatasink):
    def __init__(self, path: str):
        super().__init__(path, file_format="csv")

    def write_block_to_file(self, block: BlockAccessor, file: "pyarrow.NativeFile"):
        from pyarrow import csv
        csv.write_csv(block.to_arrow(), file)

开发者API: 此API可能会在Ray的次要版本之间发生变化。

方法

get_name

返回此数据接收器的可读名称。

on_write_failed

写入作业失败时的回调。

on_write_start

创建一个目录来写入文件。

write_block_to_file

将数据块写入文件。

属性

num_rows_per_write

每次调用 write() 时传递的目标行数。

supports_distributed_writes

如果 False ,仅在驱动节点上启动写任务。