Record Query - A tool for doing record analysis and transformation
Branch: master
Clone or download
Latest commit 8619ccf Feb 7, 2019


rq Build Status Language (Rust)

WARNING: rq is in very low maintenance mode while I (@dflemstr) focus on other things (such as my day job). Pull requests are welcome but I won't guarantee that I will fix reported issues.

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, C and JavaScript, and is distributed as a dependency-free binary on many operating systems and architectures.

Quick links

Platform support status

OS Intel x86 ARM
i686 x86_64 v61 v6 HF2 v73
Linux glibc4 i686-unknown-linux-gnu x86_64-unknown-linux-gnu arm-unknown-linux-gnueabi arm-unknown-linux-gnueabihf armv7-unknown-linux-gnueabihf
Linux musl5 i686-unknown-linux-musl x86_64-unknown-linux-musl arm-unknown-linux-musleabi arm-unknown-linux-musleabihf armv7-unknown-linux-musleabihf
Mac OS X i686-apple-darwin x86_64-apple-darwin      

1 For example Raspberry Pi 1 (A and B) running Raspbian.
2 For example Raspberry Pi 1 (A and B) running Arch Linux.
3 For example Raspberry Pi 2+.
4 Requires a recent version of glibc/libstdc++, so use musl if possible.
5 Completely statically linked; only depends on a recent kernel version.

Format support status

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