kedro.io.CachedDataset¶
- class kedro.io.CachedDataset(dataset, version=None, copy_mode=None, metadata=None)[source]¶
CachedDataset是一个数据集包装器,它会在内存中缓存已保存的数据,从而让用户避免与低速存储介质进行IO操作。你也可以在 catalog.yml 中指定一个
CachedDataset:test_ds: type: CachedDataset versioned: true dataset: type: pandas.CSVDataset filepath: example.csv
请注意,如果您的数据集已版本化,应在包装类中注明,如上所示。
方法
exists()通过调用提供的_exists()方法检查数据集输出是否已存在。
from_config(name, config[, load_version, ...])使用提供的配置创建一个数据集实例。
load()通过委托提供的加载方法来加载数据。
release()释放所有缓存数据。
save(data)通过委托给提供的保存方法来保存数据。
将数据集实例转换为基于字典的配置以便序列化。
- __init__(dataset, version=None, copy_mode=None, metadata=None)[source]¶
创建一个新的
CachedDataset实例,指向提供的Python对象。- Parameters:
dataset (AbstractDataset | dict) – 一个Kedro数据集对象或要缓存的字典。
version (Version | None) – 如果指定,应该是
kedro.io.core.Version的实例。如果其load属性为None,则将加载最新版本。如果其save属性为None,保存版本将自动生成。copy_mode (str | None) – 用于复制数据的拷贝模式。可能的取值为:"deepcopy"、"copy"和"assign"。如果未提供,将根据数据类型自动推断。
metadata (dict[str, Any] | None) – 任意元数据。 Kedro会忽略此字段,但用户或外部插件可能会使用。
- Raises:
ValueError – 如果提供的数据集不是有效的字典/YAML数据集表示形式或实际数据集。
- exists()[source]¶
通过调用提供的_exists()方法检查数据集输出是否已存在。
- Return type:
- Returns:
标志,指示输出是否已存在。
- Raises:
DatasetError – 当底层exists方法引发错误时。
- classmethod from_config(name, config, load_version=None, save_version=None)[source]¶
使用提供的配置创建一个数据集实例。
- Parameters:
- Return type:
- Returns:
AbstractDataset子类的一个实例。- Raises:
DatasetError – 当函数无法从其配置创建数据集时。
- load()[source]¶
通过委托提供的加载方法来加载数据。
- Return type:
- Returns:
由提供的加载方法返回的数据。
- Raises:
DatasetError – 当底层加载方法引发错误时。
- release()[source]¶
释放所有缓存数据。
- Raises:
DatasetError – 当底层释放方法引发错误时。
- Return type:
- save(data)[source]¶
通过委托给提供的保存方法来保存数据。
- Parameters:
data (
Any) – 需要通过提供的保存方法保存的值。- Raises:
DatasetError – 当底层保存方法引发错误时。
FileNotFoundError – 当保存方法在Windows系统上获取到的是文件而非目录时抛出该错误。
NotADirectoryError – 当保存方法在Unix系统上获取到文件而非目录时抛出。
- Return type: