Statwalker
Walk file systems and collect stats.
Summary
Statwalker is a command-line program that scan files recursively (normally called as “walk”) and collects stats, basically file names and metadata (inode information in Linux systems). It runs in parallel in a single machine, and the output is a comma-separated file (csv), one line per file. These results can be analysed using other tools (see below).
Output
The csv file will look like this:
INODE,ATIME,MTIME,UID,GID,MODE,SIZE,DISK,PATH
Colum description:
INODE: device identifier and inode (Linux)
ATIME: last access time in unix format (seconds since epoc)
MTIME: last modified time in unix fromat
UID: user ID
GID: group ID
MODE: mode, which is file type and permissions
SIZE: real size in bytes, same value reported with command du -b
DISK: disk usage, which is number of blocks times 512
PATH: full path
How it works
Collecting stats is as simple as this one-liner in bash:
$ TODO
There are many tools doing the same thing, the problem is performance. After trying some tools in a file system with many terabytes of data and millions of files, the problem became untractable. I run statwalker in a storage with 100+ millions of files, with a reading rate over NFS folders of 3000 files/second on average, and much faster if disks are local.
Installation
Use pip:
$ pip install statwalker
Usage
# run it from the command line to see available parameters:
$ statwalker -h
# run it with options
$ statwalker -o output.csv /home
Contribute
Clone the github repository:
$ git clone https://github.com/sganis/statwalker.git
TODO
Add documentation with analysis tools, resolution, agregation, benchmark with c++ and mpi versions.
Add notes for windows users
Metadata
Release files for statwalker 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| statwalker-1.1.0.tar.gz | 8.4 kB | Without provenance | Details |
Release files / statwalker-1.1.0.tar.gz
| Download URL | statwalker-1.1.0.tar.gz |
|---|---|
| Size | 8.4 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3ecf4184492cc10d5f3df40b0fcf52fffb64d4dd2084c7a32fa4be78bbc0f102
|
|
BLAKE2b-256 checksum How to use checksums |
4a0b9a4af086be8f47e9650ab5adcf2a75e6576484de7a7acd729d6fca43c5e6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
Security for statwalker 1.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.