Skip to content
/ rq Public

Record Query - A tool for doing record analysis and transformation

License

Notifications You must be signed in to change notification settings

dflemstr/rq

Repository files navigation

rq Build Status Build status Crates.io Language (Rust)

NOTE: rq is in very low maintenance mode as my day job is taking up a lot of my time. I will try my best to merge pull requests but will not drive active development of this crate.

NOTE: rq no longer ships with query support and a Javascript engine is not included; instead, it focuses exclusively on format transformation. You can still pipe into a runtime like node.js if you need Javascript evaluation. Please see this issue to discuss introducing a new query language.

This is the home of the tool called rq (record query). It's a tool that's used for performing queries on streams of records in various formats.

The goal is to make ad-hoc exploration of data sets easy without having to use more heavy-weight tools like SQL/MapReduce/custom programs. rq fills a similar niche as tools like awk or sed, but works with structured (record) data instead of text.

It was created with love out of the best parts of Rust, and is distributed as a dependency-free binary on many operating systems and architectures.

Quick links

Format support status

Format Read Write
Apache Avro ✔️ ✔️
CBOR ✔️ ✔️
JSON ✔️ ✔️
MessagePack ✔️ ✔️
Google Protocol Buffers ✔️ ✖️
YAML ✔️ ✔️
TOML ✔️ ✔️
Raw (plain text) ✔️ ✔️
CSV ✔️ ✔️