Skip to main content

"dfupsert" is a Python package for synchronizing pd.DataFrames with databases using seamless dfupsert (insert or update) operations.

Project description

dfupsert

Overview

dfupsert is an efficient Python package designed for synchronizing pandas DataFrames with databases using upsert operations (insert or update). It works seamlessly with SQLAlchemy's well-defined table mappings, facilitating a smooth integration between pandas and various databases.

Features

  • Streamlined Upsert Operations: Facilitates upserts directly from pandas DataFrames to database tables using SQLAlchemy mappings.

  • Wide Database Compatibility: Built on top of SQLAlchemy, it supports a diverse range of database systems.

  • Efficient Handling of Large DataSets: Implements chunk-based data processing for optimized performance with large data volumes.

  • Customizable and User-Friendly: Offers flexibility in connection types, table mappings, and chunk sizes to accommodate different use cases.

Installation

Install dfupsert using pip:

pip install dfupsert

Usage

from dfupsert import upsert

from pandas import DataFrame

from sqlalchemy import create_engine

from your_application.model import YourTableClass  # Import your SQLAlchemy table class



# Example DataFrame

data = {'column1': [1, 2], 'column2': [3, 4]}

df = DataFrame(data)



# Establish a database connection using SQLAlchemy

engine = create_engine('your-database-connection-string')



# Upsert DataFrame into the database table

upsert(df=df, con=engine, table=YourTableClass, chunksize=1000)

Requirements

  • Python 3.x

  • pandas

  • SQLAlchemy

Contributing

We welcome contributions to the dfupsertgithub project.

License

dfupsert is available under the MIT License. See the MIT or LICENSE file for more details.

Support

For questions and support, please open an issue in the project's GitHub issue tracker.

Project details


Download files

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

Source Distribution

dfupsert-0.0.4.tar.gz (8.3 kB view details)

Uploaded Source

File details

Details for the file dfupsert-0.0.4.tar.gz.

File metadata

  • Download URL: dfupsert-0.0.4.tar.gz
  • Upload date:
  • Size: 8.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.2 CPython/3.12.0

File hashes

Hashes for dfupsert-0.0.4.tar.gz
Algorithm Hash digest
SHA256 aed1485e39863836c540524248f8f20e9fe85658b5c5b0ddf2fe00e273a01dfb
MD5 c396ffe068e1cabb35245aae3df3de2d
BLAKE2b-256 7bcd6e1d02c373449da6344e1bff614f027e33b33be8d6b88ea458c9ee7a64cb

See more details on using hashes here.

Supported by

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