This project has been donated to Apache Arrow: https://github.com/apache/arrow/tree/master/ruby/red-parquet
Red Parquet
Red Parquet is a Ruby bindings of Apache Parquet. Red Parquet is based on GObject Introspection.
Apache Parquet is a columnar storage format.
GObject Introspection is a middleware for language bindings of C library. GObject Introspection can generate language bindings automatically at runtime.
Red Parquet uses Parquet GLib and gobject-introspection gem to generate Ruby bindings of Apache Parquet.
Parquet GLib is a C wrapper for Parquet C++. GObject Introspection can't use Parquet C++ directly. Parquet GLib is a bridge between Parquet C++ and GObject Introspection.
gobject-introspection gem is a Ruby bindings of GObject Introspection. Red Parquet uses GObject Introspection via gobject-introspection gem.
Install Parquet GLib before install Red Parquet. Use Apache Arrow packages for installing Parquet GLib.
Install Red Parquet after you install Parquet GLib:
% gem install red-parquet
require "parquet"
# Load Parquet data as Arrow::Table
table = Arrow::Table.load("data.parquet")
# Save Arrow::Table as Parquet data
table.save("data.parquet")
-
Apache Parquet C++ with Apache Arrow support
- Kouhei Sutou <kou@clear-code.com>
Apache License 2.0. See doc/text/apache-2.0.txt for details.
(Kouhei Sutou has a right to change the license including contributed patches.)