Skip to main content
Pre-release

This release is a pre-release and may not be stable for production use.

data load tool (dlt) — the open-source Python library for data loading

Be it a Google Colab notebook, AWS Lambda function, an Airflow DAG, your local laptop,
or a GPT-4 assisted development playground—dlt can be dropped in anywhere.

🚀 Join our thriving community of likeminded developers and build the future together!

Installation

dlt supports Python 3.8+.

pip install dlt

More options: Install via Conda or Pixi

Quick Start

Load chess game data from chess.com API and save it in DuckDB:

import dlt
from dlt.sources.helpers import requests

# Create a dlt pipeline that will load
# chess player data to the DuckDB destination
pipeline = dlt.pipeline(
    pipeline_name='chess_pipeline',
    destination='duckdb',
    dataset_name='player_data'
)

# Grab some player data from Chess.com API
data = []
for player in ['magnuscarlsen', 'rpragchess']:
    response = requests.get(f'https://api.chess.com/pub/player/{player}')
    response.raise_for_status()
    data.append(response.json())

# Extract, normalize, and load the data
pipeline.run(data, table_name='player')

Try it out in our Colab Demo

Features

  • Automatic Schema: Data structure inspection and schema creation for the destination.
  • Data Normalization: Consistent and verified data before loading.
  • Seamless Integration: Colab, AWS Lambda, Airflow, and local environments.
  • Scalable: Adapts to growing data needs in production.
  • Easy Maintenance: Clear data pipeline structure for updates.
  • Rapid Exploration: Quickly explore and gain insights from new data sources.
  • Versatile Usage: Suitable for ad-hoc exploration to advanced loading infrastructures.
  • Start in Seconds with CLI: Powerful CLI for managing, deploying and inspecting local pipelines.
  • Incremental Loading: Load only new or changed data and avoid loading old records again.
  • Open Source: Free and Apache 2.0 Licensed.

Ready to use Sources and Destinations

Explore ready to use sources (e.g. Google Sheets) in the Verified Sources docs and supported destinations (e.g. DuckDB) in the Destinations docs.

Documentation

For detailed usage and configuration, please refer to the official documentation.

Examples

You can find examples for various use cases in the examples folder.

Adding as dependency

dlt follows the semantic versioning with the MAJOR.MINOR.PATCH pattern. Currently, we are using pre-release versioning with the major version being 0.

  • minor version change means breaking changes
  • patch version change means new features that should be backward compatible
  • any suffix change, e.g., post10 -> post11, is considered a patch

We suggest that you allow only patch level updates automatically:

Get Involved

The dlt project is quickly growing, and we're excited to have you join our community! Here's how you can get involved:

  • Connect with the Community: Join other dlt users and contributors on our Slack
  • Report issues and suggest features: Please use the GitHub Issues to report bugs or suggest new features. Before creating a new issue, make sure to search the tracker for possible duplicates and add a comment if you find one.
  • Track progress of our work and our plans: Please check out our public Github project
  • Contribute Verified Sources: Contribute your custom sources to the dlt-hub/verified-sources to help other folks in handling their data tasks.
  • Contribute code: Check out our contributing guidelines for information on how to make a pull request.
  • Improve documentation: Help us enhance the dlt documentation.

License

dlt is released under the Apache 2.0 License.

Metadata

Release files for dlt-dataops 0.5.4a0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for dlt-dataops 0.5.4a0
File Size Uploaded
dlt_dataops-0.5.4a0.tar.gz 569.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for dlt-dataops 0.5.4a0
File Interpreter ABI Platform
dlt_dataops-0.5.4a0-py3-none-any.whl Python 3 none any Details

Total release size: 1.3 MB

Release files / dlt_dataops-0.5.4a0.tar.gz

Download URL dlt_dataops-0.5.4a0.tar.gz
Size 569.9 kB
Tags Source
SHA-256 checksum
How to use checksums
f9beb7f3106c29dfb635a0f8625e68a8e34181b178df72412cddf3232dd12122
BLAKE2b-256 checksum
How to use checksums
2d680d5dc65453e0cfc5f8a5c0f6f25c86ba15b5175593be2575f9268ed9521e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release files / dlt_dataops-0.5.4a0-py3-none-any.whl

Download URL dlt_dataops-0.5.4a0-py3-none-any.whl
Size 723.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
6afc0ea6ddf8b693cd1a39a58cd6a4915853e3e2632fcf6252ea115350b23fb7
BLAKE2b-256 checksum
How to use checksums
7e291df8f2e0594973f4663f0a0dbfef56a23815250b1c642119c1bd2709d790
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.1.1 CPython/3.11.9

Release history Release notifications | RSS feed

This release

0.5.4a0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page