ts-merger

Crates.iots-merger
lib.rsts-merger
version0.2.0
sourcesrc
created_at2024-11-04 04:20:29.013994
updated_at2024-11-11 18:45:35.500314
descriptionA multi-threaded tool for processing and aggregating time series data files
homepage
repository
max_upload_size
id1434544
size14,897
Josh Cunningham (JoshCu)

documentation

README

Time Series Data Aggregator

A multi-threaded tool for combining and processing time series data files.

Quick Start

# installation (assuming rust and cargo is installed)
cargo install ts-merger
# Basic usage with default .csv extension
ts-merger /path/to/data

# Custom file extension
ts-merger /path/to/data .txt

Example

Input Files

data/
├── temperature_1.csv
├── temperature_2.csv
└── pressure_1.csv

# temperature_1.csv
id, timestamp, value
A1, 2024-01-01 00:00:00, 20.5
A2, 2024-01-01 00:01:00, 21.0
A3, 2024-01-01 00:02:00, 20.8

# temperature_2.csv
id, timestamp, value
A1, 2024-01-01 00:00:00, 19.5
A2, 2024-01-01 00:01:00, 20.0
A3, 2024-01-01 00:02:00, 19.8

# pressure_1.csv
id, timestamp, value
B1, 2024-01-01 00:00:00, 1013.2
B2, 2024-01-01 00:01:00, 1013.4
B3, 2024-01-01 00:02:00, 1013.1

Output Files

data/
├── temperature.csv
└── pressure.csv

# temperature.csv (sum of _1 and _2 files)
id, timestamp, value
A1, 2024-01-01 00:00:00, 40.0
A2, 2024-01-01 00:01:00, 41.0
A3, 2024-01-01 00:02:00, 40.6

# pressure.csv (renamed from pressure_1.csv)
id, timestamp, value
B1, 2024-01-01 00:00:00, 1013.2
B2, 2024-01-01 00:01:00, 1013.4
B3, 2024-01-01 00:02:00, 1013.1

Features

  • Multi-threaded processing
  • Customizable output file extension
  • Progress indicator
  • Automatic cleanup of processed files

License

AGPL-3.0

Commit count: 0

cargo fmt