Skip to main content

DLT is an open-source python-native scalable data loading framework that does not require any devops efforts to run.

Project description

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.

Installation

dlt supports Python 3.8+.

pip install dlt

Quick Start

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

import dlt
from chess import chess # a utility function that grabs data from the chess.com API

# create a dlt pipeline that will load chess game data to the DuckDB destination
pipeline = dlt.pipeline(
    pipeline_name='chess_pipeline',
    destination='duckdb',
    dataset_name='games_data'
)

# use chess.com API to grab data about a few players
data = chess(['magnuscarlsen', 'rpragchess'], start_month='2022/11', end_month='2022/12')

# extract, normalize, and load the data
pipeline.run(data)

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.

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.
  • 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.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dlt-0.3.3a0.tar.gz (283.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

dlt-0.3.3a0-py3-none-any.whl (370.3 kB view details)

Uploaded Python 3

File details

Details for the file dlt-0.3.3a0.tar.gz.

File metadata

  • Download URL: dlt-0.3.3a0.tar.gz
  • Upload date:
  • Size: 283.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.8.11 Linux/4.19.128-microsoft-standard

File hashes

Hashes for dlt-0.3.3a0.tar.gz
Algorithm Hash digest
SHA256 875c060f0b221d1d50682fa698b7d1b755d8c6599e86e19e3834f410ca303809
MD5 3910bbeebef4430771aa226af419db20
BLAKE2b-256 c25b4d883d5c64dc6b0aef223b761b7cf131b0773ba71ea334b4c9be57a7da6a

See more details on using hashes here.

File details

Details for the file dlt-0.3.3a0-py3-none-any.whl.

File metadata

  • Download URL: dlt-0.3.3a0-py3-none-any.whl
  • Upload date:
  • Size: 370.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.2.2 CPython/3.8.11 Linux/4.19.128-microsoft-standard

File hashes

Hashes for dlt-0.3.3a0-py3-none-any.whl
Algorithm Hash digest
SHA256 0e7f1cb20a2963d7b7c7aecf4280cfc2795201d1fd8134aa958d8e010d5f6a87
MD5 d9c2c0aaff3c865b504353ef08151036
BLAKE2b-256 70bfd7619858558706802c124ee885143118c6ba6d3a4ff304e515b4bb21f8eb

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page