Tip
If you already have a Citus instance running, skip the steps to set up and clean up Citus.
-
Ensure the native Arrow GLib and ADBC GLib libraries required by
red-adbcare installed and discoverable. Ifbundle installreports missingarrow,arrow-glib, oradbc-glib, use the platform-specific commands below.macOS with Homebrew
brew install apache-arrow-glib apache-arrow-adbc-glib
Debian/Ubuntu
sudo apt install libarrow-glib-dev libadbc-glib-dev
RHEL-compatible distributions
sudo dnf install arrow-glib-devel adbc-glib-devel
Windows with RubyInstaller/MSYS2 UCRT64
pacman -S --needed mingw-w64-ucrt-x86_64-arrow mingw-w64-ucrt-x86_64-arrow-adbc-glib
If you use a different MSYS2 environment, adjust the package prefix to match it; for example, use
mingw-w64-x86_64-*from the MINGW64 shell. -
Install Ruby dependencies:
bundle install
If you have multiple Ruby installations, ensure
rubyandbundleresolve to the same installation before running this command.
-
Start a Citus instance:
docker run -d --rm --name citus_standalone -p 5432:5432 -e POSTGRES_PASSWORD=password citusdata/citus
-
Install the PostgreSQL ADBC driver:
dbc install --level user postgresql
-
Customize the Ruby script
main.rbas needed- Change the connection arguments in
database.set_option()- Format
uriaccording to the connection URI format used by PostgreSQL, or keep it as is
- Format
- If you changed which database you're connecting to, also change the SQL SELECT statement in
connection.query()
- Change the connection arguments in
-
Run the Ruby script:
bundle exec ruby main.rb
Stop the Docker container running Citus:
docker stop citus_standalone