Skip to content
hotgluexyzPublic

About

A small Python module containing quick utility functions for standard ETL processes.

Resources

Stars

39 stars

Watchers

1 watching

Forks

Repository files navigation

Gluestick

PyPI Version License

A Python library for efficient ETL processes, optimized for hotglue

Installation

pip install gluestick

Links

Dependencies

  • NumPy
  • Pandas

Memory benchmarking (local development)

The repo includes a script that prints peak RSS (resident set size) in MiB for several gluestick workloads. It uses the same scenarios as tests/function_tests/test_memory_usage.py, so you can compare numbers before and after a change on your machine. Peak RSS is a rough signal, not a portable “this library always uses X MB” guarantee.

Setup (from the repository root):

pip install ".[test]"

This installs gluestick, pytest, and memory-profiler, which the script and memory tests need.

Run the benchmark:

python scripts/memory_benchmark.py

For machine-readable output (e.g. to save and diff):

python scripts/memory_benchmark.py --json > before.json
# change code, then:
python scripts/memory_benchmark.py --json > after.json

Compare the JSON objects (or use diff / jq) to see per-scenario peak MiB before and after. Percent change is only meaningful when both runs use the same host and similar load.

Sanity-check with tests:

pytest tests/function_tests/test_memory_usage.py -q

If pytest passes, the same workloads stay within the smoke-test RSS bands used in CI.

Contributing

This project is maintained by the hotglue team. We welcome contributions from the community via issues and pull requests.

If you wish to chat with our team, feel free to join our Slack!

About

A small Python module containing quick utility functions for standard ETL processes.

Resources

Stars

39 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages