featurebase/proto/pilosa.proto
Ben Johnson 150c8a5b06 database per shard, HolderConfig, rbf bit-wise import speedups.
- introduce Query Context (Qcx) for managing database-per-shard.
- replaces the MultiTx, so mtx.go is retired and removed.
- introduces the HolderConfig struct and all Holders now have
  a path from birth.
- rbf speedups on bitwise writes
- badgerdb is removed due to unresolvable write conflicts.

fixes #703 #676
2020-09-04 13:00:33 -05:00

130 lines
2.4 KiB
Protocol Buffer

syntax = "proto3";
package pilosa;
import "public.proto";
message VDS {
string name = 1;
}
message GetVDSsRequest {
}
message GetVDSsResponse {
repeated VDS vdss = 1;
}
message GetVDSRequest {
string name = 1;
}
message GetVDSResponse {
VDS vds = 1;
}
message PostVDSRequest {
string name = 1;
bool keys = 2;
bool trackExistence = 3;
}
message PostVDSResponse {
}
message DeleteVDSRequest {
string name = 1;
}
message DeleteVDSResponse {
}
message QueryPQLRequest {
string index = 1;
string pql = 2;
}
message QuerySQLRequest {
string sql = 1;
}
message StatusError{
uint32 Code = 1;
string Message = 2;
}
message RowResponse{
repeated ColumnInfo headers = 1;
repeated ColumnResponse columns = 2;
StatusError StatusError = 3;
}
message Row {
repeated ColumnResponse columns = 1;
}
message TableResponse{
repeated ColumnInfo headers = 1;
repeated Row rows = 2;
StatusError StatusError = 3;
}
message ColumnInfo {
string name = 1;
string datatype = 2;
}
message ColumnResponse{
oneof columnVal {
string stringVal = 1;
uint64 uint64Val = 2;
int64 int64Val = 3;
bool boolVal = 4;
bytes blobVal = 5;
Uint64Array uint64ArrayVal = 6;
StringArray stringArrayVal = 7;
double float64Val = 8;
Decimal decimalVal = 9;
}
}
message Decimal {
int64 value = 1;
int64 scale = 2;
}
message InspectRequest {
string index = 1;
IdsOrKeys columns = 2;
repeated string filterFields = 3;
uint64 limit = 4;
uint64 offset = 5;
string query = 6;
}
message Uint64Array {
repeated uint64 vals = 1;
}
message StringArray {
repeated string vals = 1;
}
message IdsOrKeys {
oneof type {
Uint64Array ids = 1;
StringArray keys = 2;
}
}
service Pilosa {
rpc GetVDSs(GetVDSsRequest) returns (GetVDSsResponse) {};
rpc GetVDS(GetVDSRequest) returns (GetVDSResponse) {};
rpc PostVDS(PostVDSRequest) returns (PostVDSResponse) {};
rpc DeleteVDS(DeleteVDSRequest) returns (DeleteVDSResponse) {};
rpc QuerySQL(QuerySQLRequest) returns (stream RowResponse) {};
rpc QuerySQLUnary(QuerySQLRequest) returns (TableResponse) {};
rpc QueryPQL(QueryPQLRequest) returns (stream RowResponse) {};
rpc QueryPQLUnary(QueryPQLRequest) returns (TableResponse) {};
rpc Inspect(InspectRequest) returns (stream RowResponse) {};
rpc ImportAtomicRecord(stream AtomicRecord) returns (AtomicImportResponse) {};
}