ccflow models for database access
Project description
ccflow-db
ccflow models for database access
Overview
ccflow-db provides public, domain-neutral database callable models and publishers for ccflow workflows. It owns connection configuration, SQL execution, tabular reads, bulk writes, transaction handling, upsert/merge patterns, database-backed checkpoint/cache adapters, and Hydra config groups exposed through the lerna plugin entry point.
It should stay generic across domains and database backends. Domain schemas, provider-specific assumptions, and application deployment conventions belong outside this package.
Current Status
- Implemented: package scaffold, version metadata,
SQLiteConfig, parameterizedSQLiteQueryModel,SQLiteKeyExistsModel,SQLiteTableWriteModelfor append, replace, and primary-key upsert writes,SQLiteCheckpointStore, byte-orientedSQLiteCacheStorefor use withccflow-etlcache format models, andcache=sqlite/checkpoint=sqliteconfig groups. - Partial: SQLite uses the Python standard library as the first local backend; broad SQLAlchemy-style engine/session management and backend extras remain future work.
- Missing: dataframe reads, chunked writes, dry-run SQL rendering, merge helpers beyond SQLite upsert, and non-SQLite integration tests.
Dependency Contract
- Depends on
ccflowfor callable model and publisher interfaces. - Depends on
ccflow-etlfor generic checkpoint records and cache format/result contracts. - Uses
sqlite3for the first local backend and may add a broader abstraction layer such as SQLAlchemy plus optional backend extras later. - Must not depend on finance packages or application-specific packages.
Test Convention
Default tests should use SQLite or in-memory database fixtures. Backend-specific tests such as Postgres should be opt-in and skipped unless the required environment variables are set.
[!NOTE] This library was generated using copier from the Base Python Project Template repository.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ccflow_db-0.1.0.tar.gz.
File metadata
- Download URL: ccflow_db-0.1.0.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5d9c43d1288d5ff18628f261fc8735de64dcdadc1ac77dc481c2b54621cfb535
|
|
| MD5 |
c235b0421582b98aab3ccb6f811b92a5
|
|
| BLAKE2b-256 |
8866ba84dbe6414978a2de11da9b89857d9e22be16aa7e676038f12da6559ba7
|
File details
Details for the file ccflow_db-0.1.0-py3-none-any.whl.
File metadata
- Download URL: ccflow_db-0.1.0-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.12.13
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
004d30524abf86e607f06ee8378d26c5b896ab95c1879d5de73d46dbe69fbaa9
|
|
| MD5 |
ea5c84d0a2da6ba9840e823edfa071d9
|
|
| BLAKE2b-256 |
a8d979621640baec4a104d15d110b68b6a91a0993bb6ec75d63878a7652fc02e
|