kedro
kedro copied to clipboard
[DataCatalog]: Lazy dataset loading
Description
Users are required to install all dependencies even for unused datasets, leading to unnecessary complexity and confusion.
We propose implementing a lazy dataset loading feature to allow users to load only the datasets they need without causing pipeline failures.
Relates to https://github.com/kedro-org/kedro/issues/2829
Context
- "You need to install all dependencies even for unused datasets (in case you want to run pipeline partially or do not load some dataset when standalone catalog usage)."
- "We have a lot of data entries and different dependencies and when we just want to rerun an anaysis partially, we are frustrated because we need to install all the packages to just load one data source. Why would I need to install excel dependencies to instantiate the
DataCatalog
to load acsv
which does not need Excel?" - The error users get now in case of missing dependencies is unclear https://github.com/kedro-org/kedro/issues/3911
DatasetError: An exception occurred when parsing config for dataset 'companies':
No module named 'pandas'. Please see the documentation on how to install relevant dependencies for kedro_datasets.pandas.CSVDataset: