Skip to main content

A much faster du that tells you why your quota is full.

Project description

rapiDU

A much faster du that tells you why your quota is full.

CI Python 3.6+ No dependencies MIT License

rapiDU walking a project tree and explaining that it occupies 266.8 MiB to hold 75.5 MiB of data, ranking the same tree by file count, printing a quota table with the age of its snapshot, finding 512 MiB held by a deleted-but-open file descriptor, and catching a freshly written GPFS tree that loses 224 MiB while it settles.

Install

pip install rapidu

Use

rdu                      # this directory: how big, and what is big inside it
rdu /project/mylab       # any other path
rdu ~/scratch -n 20      # list 20 entries instead of 10

rdu -i                   # rank by file count -- what an inode quota limits
rdu -c                   # count files only, no stat: ~8x again on GPFS
rdu -Q                   # the quota table, and the age of its figures
rdu -D                   # space held by files deleted while still open
rdu -a                   # the full audit: quota + /proc scan + reconciliation

Faster, and the same number

Cold GPFS walk: du takes 168.1s against rapiDU's 25.4s on a 792,225-file package cache (6.6x), and 298.5s against 57.4s on a 1,686,589-file project directory (5.2x).

Same total as du, to the byte. That is checked on every commit.

Reading the table

      size  of tree              share      files  path
 661.5 GiB  █████▋░░░░░░░░░░░░   31.9%        350  checkpoints/
 343.8 GiB  ██▊░░░░░░░░░░░░░░░   16.6%        968  datasets/
 470.9 GiB  ▒▒▒▒▒▒▒▒░░░░░░░░░░   22.9%      4,117  (84 more — use -n 0 for all)

The bar is share of the whole tree, so it always agrees with the number beside it. The hatched row is everything not listed. The column you sorted by is the one in colour — under -i, files takes the tone and size steps back. Sizes are cumulative, so any row agrees with du -s on that path.

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

rapidu-0.1.1.tar.gz (93.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rapidu-0.1.1-py3-none-any.whl (64.8 kB view details)

Uploaded Python 3

File details

Details for the file rapidu-0.1.1.tar.gz.

File metadata

  • Download URL: rapidu-0.1.1.tar.gz
  • Upload date:
  • Size: 93.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidu-0.1.1.tar.gz
Algorithm Hash digest
SHA256 a3d6ed17df8619803d593c18cd7ff28abcb79351bfb3334c6e89625b9ad655a1
MD5 74a77fd1a47f4de77beb0abcfafcfdd3
BLAKE2b-256 64688fa4c09b191f2afefd4c71144a987152e0e83601b19845030be6ceb3013f

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidu-0.1.1.tar.gz:

Publisher: release.yml on PursuitOfDataScience/rapidu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file rapidu-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: rapidu-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 64.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for rapidu-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 115eab17dbd0858217f8fd4db0408f6e045677400a68e94d73024d359ee17ac2
MD5 4a94c4d39d7fd24aa261ec7852d6a9d5
BLAKE2b-256 b031c56036783962c41e0632c00cd82815508e2ef6002925e9d4009dfd7be5c3

See more details on using hashes here.

Provenance

The following attestation bundles were made for rapidu-0.1.1-py3-none-any.whl:

Publisher: release.yml on PursuitOfDataScience/rapidu

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

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