5 releases (breaking)
0.12.0 | Feb 7, 2024 |
---|---|
0.11.0 | Feb 28, 2023 |
0.10.0 | Nov 21, 2022 |
0.9.0 | Oct 26, 2022 |
0.7.0 | May 16, 2022 |
#2721 in Database interfaces
89KB
1.5K
SLoC
Ballista Command-line Interface
Ballista is a distributed query execution framework, written in Rust, that uses Apache Arrow as its in-memory format.
The Ballista CLI allows SQL queries to be executed by an in-process DataFusion context, or by a distributed Ballista context.
USAGE:
ballista-cli [FLAGS] [OPTIONS]
FLAGS:
-h, --help Prints help information
-q, --quiet Reduce printing other than the results and work quietly
-V, --version Prints version information
OPTIONS:
-c, --batch-size <batch-size> The batch size of each query, or use DataFusion default
-p, --data-path <data-path> Path to your data, default to current directory
-f, --file <file>... Execute commands from file(s), then exit
--format <format> Output format [default: table] [possible values: csv, tsv, table, json, ndjson]
--host <host> Ballista scheduler host
--port <port> Ballista scheduler port
Example
Create a CSV file to query.
$ echo "1,2" > data.csv
$ ballista-cli
Ballista CLI v0.6.0
> CREATE EXTERNAL TABLE foo (a INT, b INT) STORED AS CSV LOCATION 'data.csv';
0 rows in set. Query took 0.001 seconds.
> SELECT * FROM foo;
+---+---+
| a | b |
+---+---+
| 1 | 2 |
+---+---+
1 row in set. Query took 0.017 seconds.
Ballista-Cli
If you want to execute the SQL in ballista by ballista-cli
, you must build/compile ballista-cli
first.
cd arrow-ballista/ballista-cli
cargo build
The Ballista CLI can connect to a Ballista scheduler for query execution.
ballista-cli --host localhost --port 50050
Dependencies
~90MB
~1.5M SLoC