Command Line

The command line tool named bydbctl improves users' interactive experience. The examples listed in this folder show how to use this command to create, update, read and delete schemas. Furthermore, bydbctl could help in querying data stored in streams, measures and properties.

These are several ways to install:

The config file named .bydbctl.yaml will be created in $HOME folder after the first CRUD command is applied.

> more ~/.bydbctl.yaml
group: ""

bydbctl leverages HTTP endpoints to retrieve data instead of gRPC.

HTTP client

Users could select any HTTP client to access the HTTP based endpoints. The default address is localhost:17913/api

Java Client

The java native client is hosted at skywalking-banyandb-java-client.

Web application (TBD)

gRPC command-line tool

Users have a chance to use any command-line tool to interact with the Banyand server’s gRPC endpoints. The only limitation is the CLI tool has to support file descriptor files since the database server does not support server reflection.

Buf is a Protobuf building tooling the BanyanDB relies on. It can provide FileDescriptorSets usable by gRPC CLI tools like grpcurl

BanyanDB recommends installing Buf by issuing

$ make -C api generate
Protobuf schema files are compiled

Above command will compile *.proto after downloading buf into <project_root>/bin

Users could leverage buf’s internal compiler to generate the FileDescriptorSets

$ cd api
$ ../bin/buf build -o image.bin

If grpcurl is the CLI tool to access the APIs of BanyanDb. To use image.bin with it on the fly:

$ grpcurl -plaintext -protoset image.bin localhost:17912 ...