kedro-datasets
Kedro-Datasets is where you can find all of Kedro's data connectors.
What it is and what it does
Kedro-Datasets is a plugin that extends Kedro's DataCatalog with a collection of AbstractDataset implementations, allowing you to read and write data in many formats (CSV, Excel, Parquet, JSON, HDF5, SQL, Spark, images, and more) across different storage backends (local, network, cloud object stores, Hadoop). It's organized into groups by data type—pandas, spark, networkx, matplotlib, yaml—so you can install only the dependencies you need for your specific workflow.
The package acts as a bridge between Kedro's data abstraction layer and the actual storage and format libraries. Instead of writing custom dataset classes for each file type and storage combination, you declare your data sources in Kedro's configuration and let kedro-datasets handle the loading and saving. It supports optional group-level and dataset-level dependency installation, so a project using only CSV files doesn't need Spark or database drivers.
Use it for:
- Load CSV or Parquet files into pandas DataFrames within a Kedro pipeline without writing custom dataset code.
- Read and write Spark DataFrames to cloud object stores (S3, GCS) through Kedro's DataCatalog.
- Query SQL databases and cache results as datasets in a reproducible data pipeline.
- Work with multiple data formats (Excel, JSON, HDF5) in a single Kedro project with consistent APIs.
- Extend Kedro pipelines to handle image data or custom formats by implementing your own AbstractDataset.
Worth the install?
AI-flagged interpretation of the facts on this page — verify before relying
Kedro-Datasets provides data connectors for Kedro's DataCatalog, implementing AbstractDataset for formats like CSV, Excel, Parquet, JSON, SQL, and Spark DataFrames across local, network, and cloud storage.
Yes. Kedro-Datasets is actively maintained, has low install friction, carries no known vulnerabilities, and is essential if you're using Kedro for data pipelines. It provides the standard data connectors most projects need and is permissively licensed. Install it as part of your Kedro setup and add optional group dependencies only for the formats your pipeline actually uses.
Install
kedro-datasets on PyPI
pip
pip install kedro-datasetsuv
uv add kedro-datasetspoetry
poetry add kedro-datasetsInstalling kedro-datasets
Before you install
Low friction install with only three runtime dependencies (kedro, backports.strenum, lazy_loader). Active maintenance with releases every 7 days and a recent commit history.
License in practice
Licensed under Apache 2.0 (permissive), allowing commercial use and modification with attribution.
Quickstart
pip install kedro-datasets
from kedro_datasets.pandas import CSVDataset
ds = CSVDataset(filepath='data.csv')
df = ds.load()
Requires Python 3.10 or later; optional group-level dependencies (e.g., pandas, spark) must be installed separately for specific dataset types.
Verify before relying
- Whether lazy_loader is used for runtime performance optimization or just module discovery.
- Specific performance characteristics when working with large files or cloud storage.
- Whether all dataset types work equally well across local, network, and cloud backends.
Package facts
| License | Apache Software License (Apache 2.0) (permissive) |
| Python support | supports the current Python release (>=3.10) |
| Install friction | low — pure-Python wheel |
| Runtime dependencies | 3 — backports.strenum, kedro, lazy_loader |
| Maintenance | actively maintained — 7 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 1,814,647/month — #3,524 on PyPI (30-day window, as of 2026-08-14) |
| Known vulnerabilities | none known (OSV.dev, checked 2026-08-14) |
Evidence: kedro_datasets-9.6.0-py3-none-any.whl
Tags
More Database packages
psycopg2-binary is a PostgreSQL database…
copyleft · top 1,000 on PyPI
redisPython client library for connecting to and…
permissive · top 1,000 on PyPI
ydbYDB Python SDK is the official client library…
permissive · top 1,000 on PyPI
snowflake-connector-pythonConnects Python applications to Snowflake data…
permissive · top 1,000 on PyPI
sqlparsesqlparse tokenizes SQL text into a tree of…
permissive · top 1,000 on PyPI
dbt-adaptersProvides base adapter protocols and shared…
permissive · top 1,000 on PyPI
kedroKedro is a Python framework for building…
permissive · top 5,000 on PyPI
kedro-vizKedro-Viz is an interactive web-based…
permissive · top 5,000 on PyPI
datasetsLoads and preprocesses datasets from the…
permissive · top 1,000 on PyPI
duckdb-extensionsPackages DuckDB core extensions as…
permissive · top 15,000 on PyPI
tablibTablib converts tabular data between multiple…
permissive · top 5,000 on PyPI
pyspark-huggingfaceRegisters a Spark data source that reads…
permissive · top 5,000 on PyPI
pyspark-extensionProvides Python bindings and utilities for…
permissive · top 15,000 on PyPI
dbt-databricksdbt-databricks is a dbt adapter that enables…
permissive · top 5,000 on PyPI
delta-sharingDelta Sharing is a Python client library for…
permissive · top 5,000 on PyPI
parquet-toolsCommand-line tool to read, inspect, and export…
permissive · top 15,000 on PyPI