ray.data.datasource.RowBasedFileDatasink#
- class ray.data.datasource.RowBasedFileDatasink(path: str, *, filesystem: pyarrow.fs.FileSystem | None = None, try_create_dir: bool = True, open_stream_args: Dict[str, Any] | None = None, filename_provider: FilenameProvider | None = None, dataset_uuid: str | None = None, file_format: str | None = None)[源代码]#
基类:
_FileDatasink
一个将一行写入每个文件的数据接收器。
子类必须实现
write_row_to_file
并调用父类的构造函数。示例
import io from typing import Any, Dict import pyarrow from PIL import Image from ray.data.datasource import RowBasedFileDatasink class ImageDatasink(RowBasedFileDatasink): def __init__(self, path: str, *, column: str, file_format: str = "png"): super().__init__(path, file_format=file_format) self._file_format = file_format self._column = column def write_row_to_file(self, row: Dict[str, Any], file: "pyarrow.NativeFile"): image = Image.fromarray(row[self._column]) buffer = io.BytesIO() image.save(buffer, format=self._file_format) file.write(buffer.getvalue())
开发者API: 此API可能会在Ray的次要版本之间发生变化。
方法
初始化此数据接收器。
返回此数据接收器的可读名称。
写入作业失败时的回调。
创建一个目录来写入文件。
写入一行到文件。
属性
每次调用
write()
时传递的目标行数。如果
False
,仅在驱动节点上启动写任务。