Skip to main content

helps you preserve an ethereum dataset

Project description

cryogen

helps you preserve the ethereum dataset fresh, fast and small

install

pip install cryogen

features

intelligently consolidates cryo-extracted datasets, cutting the number of chunks by 400-1000x.

offers fast in-place conversion that reduces disk footprint by 2x and increases query performance.

keeps the dataset fresh so you can always come back to up-to-date data.

usage

cryogen collect <dataset>

collect or update a cryo dataset.

cryogen uses 1000 block batches with zstd -3 compression. the gaps are filled automatically. the dataset can be up to 1000 blocks behind head beacuse the align option is used.

# you can also specify data_dir using CRYO_DATA_DIR env var
cryogen collect contracts --data-dir ~/cryo_data

# collect a block range, same format as cryo
cryogen collect traces --blocks 17000000:

cryogen consolidate <dataset>

consolidate a dataset in-place.

this command will merge parquets into larger files covering 1e4, 1e5, 1e6 blocks. smaller files are not touched until a larger contiguous block can be formed. the worst case for this algorithm is 17 + 9 + 9 + 9 = 44 files at block 17,999,000.

cryogen consolidate contracts

# test the feature without overwriting the dataset
cryogen consolidate contraces --no-inplace

note that after consolidating with cryogen, you should use cryogen to update the dataset. cryo won't recognize larger chunks and would attempt to collect the already merged and deleted smaller chunks, outputting duplicate data in the dataset.

cryogen watch <dataset>

combines collect and consolidate command.

keep it running and it will update the dataset periodically.

# refresh every 4 hours
cryogen watch contracts --interval 14400

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

cryogen-0.1.0.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

cryogen-0.1.0-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file cryogen-0.1.0.tar.gz.

File metadata

  • Download URL: cryogen-0.1.0.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.11 Darwin/22.6.0

File hashes

Hashes for cryogen-0.1.0.tar.gz
Algorithm Hash digest
SHA256 e509b0ac2f9ee72392b996ea8412280e8defe79ef33ac87c931bb109ec1430ed
MD5 afc9c58c9cb85d35b95da4f156be7fa3
BLAKE2b-256 bf471578e8dccde4853f2bb8305d02e48b2b7d741052b97f1ba3be2f50cc8495

See more details on using hashes here.

File details

Details for the file cryogen-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: cryogen-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.10.11 Darwin/22.6.0

File hashes

Hashes for cryogen-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 768e6441edbcb07af2930de389855ec2f6920b0a90c802962b4d09e0e91ccd89
MD5 b1244530530cbcde3eaf459f9e2cb73b
BLAKE2b-256 eefb60bd891558983a2cf9bb9b89b2d807d7b3f8baeaba20e94a7c21afb521ca

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