Crates.io | nektar |
lib.rs | nektar |
version | 0.0.7 |
source | src |
created_at | 2023-09-21 14:30:32.297179 |
updated_at | 2024-07-03 20:09:00.626244 |
description | A fast, lightweight CLI for Hive Metastore |
homepage | |
repository | https://github.com/DeaconDesperado/nektar |
max_upload_size | |
id | 979551 |
size | 3,025,471 |
A fast and lightweight command line interface for the Apache Hive metastore.
Hive's metastore is ubiquitous in many big data deployments, whether the deployment in question makes use of the Hive execution engine or not. It is a common component that provides table virtualization for other distributed processing engines such as Flink, Spark and Trino.
More modern analytic table formats such as Iceberg and Hudi leverage Hive's metastore to some extent for the serving and storage layer of their metadata. Cloud data catalogs such as GCP's DataProc Metastore and AWS's Glue Data Catalog also implement the metastore interface.
Typically, operations against the metastore are done via these engines' catalog procedures, or in SQL DDL using the Hive Cli itself. There are limited options for calling the metastore's endpoints themselves directly. This project provides a lightweight command line interface to the metastore's Thrift endpoints directly, to allow lower-level debugging of metastore payloads without JVM startup overhead.
Install via cargo install
or download a binary directly from releases.
A fast, lightweight CLI for Hive Metastore
Usage: nektar [OPTIONS] <METASTORE_URL> <COMMAND>
Commands:
get-table Get a single table by database and table name
get-catalog Get a single catalog by name
get-catalogs Get a list of all catalogs in metastore
get-partitions Get the partitions of a table
get-partition-names-by-parts Get the partitions of a table by partition value
get-databases Get all databases in the metastore
create-catalog Create a catalog
create-table Create a table from a table definition file
list-tables Get tables in database with optional glob on name
drop-table Drop a single table by database and table name
help Print this message or the help of the given subcommand(s)
Arguments:
<METASTORE_URL> Thrift metastore endpoint, eg: host.com:9083
Options:
--format <FORMAT> [default: json] [possible values: json, yaml]
-h, --help Print help
-V, --version Print version