protoform
shaping data
- Github repository: https://github.com/dataxight/protoform/
- Documentation https://dataxight.github.io/protoform/
Getting started with your project
Concept of protoform
protoform is a data operation management system implemented in python using a graph and network (python-igraph) to handle the manipulation of data structure. protoform leverages tasks and performed operations to the data graph by these steps.
- Define the source of data (for instance from sql database, csv file).
- Define the tasks.
- Convert the source of data and tasks to a graph (data graph and task graph)
- Execute protoform. protoform will digest the tasks and independently operate in parallel (unless you define dependencies) then apply those tasks to the raw data, and export new data.
Working modules
cli: captures the arguments of task and data paths and executes operations regarding the task plans.io: converts tasks to task graphs, reads input data (csv, tsv, parquet, and sql), converts the data to data graph, exports the objects to graph, csv file, or pushes to sql database.operator: contains a list of operations what to do to the data.data: implements data operation classes.graph: implements graph classs.
Installation
- Installation guide https://github.com/dataxight/protoform/wiki/Installation
Execution
- You need to prepare two files:
- task manifest file (such as task.json). Follow an instruction how to but a task graph here: https://github.com/dataxight/protoform/wiki/Execution-Graph-Specification
- data manifest file (such as data.json). Follow an instruction how to but a data graph here: https://github.com/dataxight/protoform/wiki/Data-Graph-Specification
- Run the first command
protoform --task-plan task.json --data-graph data.json
Repository initiated with fpgmaas/cookiecutter-poetry.
Metadata
Release files for protoform 0.0.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| protoform-0.0.3.tar.gz | 40.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| protoform-0.0.3-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 112.8 kB
Release files / protoform-0.0.3.tar.gz
| Download URL | protoform-0.0.3.tar.gz |
|---|---|
| Size | 40.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b685630392321c794609a4135137cfabebfdf57e8f95c4910cfb35eee794cb0d
|
|
BLAKE2b-256 checksum How to use checksums |
1f7598c7106c77a5f203f84079cbf95ef47dcd4e2d6cae8fdf67fa9d982225cd
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|
Release files / protoform-0.0.3-py3-none-any.whl
| Download URL | protoform-0.0.3-py3-none-any.whl |
|---|---|
| Size | 72.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
d0f2cda1946f9ea31fa27105d8c77a333a09eedc31d8a836a38fab3475e89988
|
|
BLAKE2b-256 checksum How to use checksums |
a57584ecf00e12b213ca22dff3b9800d920c487e3c14ac90757c8c6024e06164
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|