4 个版本

0.2.1 2020 年 11 月 1 日
0.1.2 2019 年 7 月 14 日
0.1.0-SNAPSHOT2019 年 4 月 22 日

#1988命令行工具

MIT 许可协议

92KB
2.5K SLoC

xpq

xpq 是一个简单的命令行程序,用于分析 parquet 文件。

Build Status

要求

  • Rust nightly

请参阅 使用 nightly Rust 以安装 nightly 工具链并将其设置为默认。

安装

Linux 和 macOS 的二进制文件可在 GitHub 上找到。

下载最新版本

curl -s https://api.github.com/repos/FabioBatSilva/xpq/releases/latest \
  | grep "browser_download_url" \
  | grep apple-darwin \
  | cut -d : -f 2,3 \
  | tr -d \" \
  | wget -qi -

使其可执行

chmod +x ./xpq-*-apple-darwin

mv ./xpq-*-apple-darwin /usr/local/bin/xpq

或者,您可以使用 Cargo 编译和安装

cargo install xpq

您也可以使用 cargo 从源代码编译

cargo install --git https://github.com/FabioBatSilva/xpq.git --force

可用命令

  • read - 读取行。
  • count - 显示行数。
  • schema - 显示 parquet 架构。
  • sample - 从 parquet 随机抽样行。
  • frequency - 显示每个值的频率计数。

快速浏览

获取一些 parquet 数据

wget -O users.parquet https://github.com/apache/spark/blob/master/examples/src/main/resources/users.parquet?raw=true

检查架构

xpq schema users.parquet

message example.avro.User {
  REQUIRED BYTE_ARRAY name (UTF8);
  OPTIONAL BYTE_ARRAY favorite_color (UTF8);
  REQUIRED group favorite_numbers (LIST) {
    REPEATED INT32 array;
  }
}

检查行数

xpq count users.parquet

 count
 2

读取一些数据

xpq read users.parquet

 name      favorite_color  favorite_numbers
 "Alyssa"  null            [3, 9, 15, 20]
 "Ben"     "red"           []

依赖

~22–32MB
~631K SLoC