mirror of
https://github.com/featurebasedb/featurebase.git
synced 2026-09-06 16:45:55 +00:00
253 lines
4.2 KiB
Protocol Buffer
253 lines
4.2 KiB
Protocol Buffer
syntax = "proto3";
|
|
|
|
package internal;
|
|
|
|
message Row {
|
|
repeated uint64 Columns = 1;
|
|
repeated string Keys = 3;
|
|
repeated Attr Attrs = 2;
|
|
bytes Roaring = 4;
|
|
}
|
|
|
|
message RowMatrix {
|
|
repeated Row Rows = 1;
|
|
}
|
|
|
|
message SignedRow {
|
|
Row Pos = 1;
|
|
Row Neg = 2;
|
|
}
|
|
|
|
message RowIdentifiers {
|
|
repeated uint64 Rows = 1;
|
|
repeated string Keys = 2;
|
|
}
|
|
|
|
message IDList {
|
|
repeated uint64 IDs = 1;
|
|
}
|
|
|
|
message ExtractedIDColumn {
|
|
uint64 ID = 1;
|
|
repeated IDList Vals = 2;
|
|
}
|
|
|
|
message ExtractedIDMatrix {
|
|
repeated string Fields = 1;
|
|
repeated ExtractedIDColumn Columns = 2;
|
|
}
|
|
|
|
message KeyList {
|
|
repeated string Keys = 1;
|
|
}
|
|
|
|
message ExtractedTableValue {
|
|
oneof Value {
|
|
IDList IDs = 1;
|
|
KeyList Keys = 2;
|
|
int64 BSIValue = 3;
|
|
uint64 MutexID = 4;
|
|
string MutexKey = 5;
|
|
bool Bool = 6;
|
|
}
|
|
}
|
|
|
|
message ExtractedTableColumn {
|
|
oneof KeyOrID {
|
|
string Key = 1;
|
|
uint64 ID = 2;
|
|
}
|
|
repeated ExtractedTableValue Values = 3;
|
|
}
|
|
|
|
message ExtractedTableField {
|
|
string Name = 1;
|
|
string Type = 2;
|
|
}
|
|
|
|
message ExtractedTable {
|
|
repeated ExtractedTableField Fields = 1;
|
|
repeated ExtractedTableColumn Columns = 2;
|
|
}
|
|
|
|
message Pair {
|
|
uint64 ID = 1;
|
|
string Key = 3;
|
|
uint64 Count = 2;
|
|
}
|
|
|
|
message PairField {
|
|
Pair Pair = 1;
|
|
string Field = 2;
|
|
}
|
|
|
|
message PairsField {
|
|
repeated Pair Pairs = 1;
|
|
string Field = 2;
|
|
}
|
|
|
|
message Int64 {
|
|
int64 Value = 1;
|
|
}
|
|
|
|
message FieldRow {
|
|
string Field = 1;
|
|
uint64 RowID = 2;
|
|
string RowKey = 3;
|
|
Int64 Value = 4;
|
|
}
|
|
|
|
message GroupCount{
|
|
repeated FieldRow Group = 1;
|
|
uint64 Count = 2;
|
|
int64 Sum = 3;
|
|
}
|
|
|
|
message ValCount {
|
|
int64 Val = 1;
|
|
int64 Count = 2;
|
|
double FloatVal = 3;
|
|
Decimal DecimalVal = 4;
|
|
}
|
|
|
|
message Decimal {
|
|
int64 Value = 1;
|
|
int64 Scale = 2;
|
|
}
|
|
|
|
message ColumnAttrSet {
|
|
uint64 ID = 1;
|
|
string Key = 3;
|
|
repeated Attr Attrs = 2;
|
|
}
|
|
|
|
message Attr {
|
|
string Key = 1;
|
|
uint64 Type = 2;
|
|
string StringValue = 3;
|
|
int64 IntValue = 4;
|
|
bool BoolValue = 5;
|
|
double FloatValue = 6;
|
|
}
|
|
|
|
message AttrMap {
|
|
repeated Attr Attrs = 1;
|
|
}
|
|
|
|
message QueryRequest {
|
|
string Query = 1;
|
|
repeated uint64 Shards = 2;
|
|
bool ColumnAttrs = 3;
|
|
bool Remote = 5;
|
|
bool ExcludeRowAttrs = 6;
|
|
bool ExcludeColumns = 7;
|
|
repeated Row EmbeddedData = 8;
|
|
}
|
|
|
|
message QueryResponse {
|
|
string Err = 1;
|
|
repeated QueryResult Results = 2;
|
|
repeated ColumnAttrSet ColumnAttrSets = 3;
|
|
}
|
|
|
|
message QueryResult {
|
|
uint32 Type = 6;
|
|
Row Row = 1;
|
|
uint64 N = 2;
|
|
repeated Pair Pairs = 3;
|
|
bool Changed = 4;
|
|
ValCount ValCount = 5;
|
|
repeated uint64 RowIDs = 7;
|
|
repeated GroupCount GroupCounts = 8;
|
|
RowIdentifiers RowIdentifiers = 9;
|
|
SignedRow SignedRow = 10;
|
|
PairsField PairsField = 11;
|
|
PairField PairField = 12;
|
|
ExtractedIDMatrix ExtractedIDMatrix = 13;
|
|
ExtractedTable ExtractedTable = 14;
|
|
RowMatrix RowMatrix = 15;
|
|
}
|
|
|
|
message ImportRequest {
|
|
string Index = 1;
|
|
|
|
string Field = 2;
|
|
uint64 Shard = 3;
|
|
repeated uint64 RowIDs = 4;
|
|
repeated uint64 ColumnIDs = 5;
|
|
repeated string RowKeys = 7;
|
|
repeated string ColumnKeys = 8;
|
|
repeated int64 Timestamps = 6;
|
|
int64 IndexCreatedAt = 9;
|
|
int64 FieldCreatedAt = 10;
|
|
bool Clear = 11;
|
|
}
|
|
|
|
message ImportValueRequest {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
uint64 Shard = 3;
|
|
repeated uint64 ColumnIDs = 5;
|
|
repeated string ColumnKeys = 7;
|
|
repeated int64 Values = 6;
|
|
repeated double FloatValues = 8;
|
|
repeated string StringValues = 9;
|
|
int64 IndexCreatedAt = 10;
|
|
int64 FieldCreatedAt = 11;
|
|
bool Clear = 12;
|
|
}
|
|
|
|
message AtomicRecord {
|
|
string Index = 1;
|
|
uint64 Shard = 2;
|
|
repeated ImportValueRequest Ivr = 3;
|
|
repeated ImportRequest Ir = 4;
|
|
}
|
|
|
|
message AtomicImportResponse {
|
|
string Error = 1;
|
|
}
|
|
|
|
message TranslateKeysRequest {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
repeated string Keys = 3;
|
|
bool NotWritable = 4;
|
|
}
|
|
|
|
message TranslateKeysResponse {
|
|
repeated uint64 IDs = 3;
|
|
}
|
|
|
|
message TranslateIDsRequest {
|
|
string Index = 1;
|
|
string Field = 2;
|
|
repeated uint64 IDs = 3;
|
|
}
|
|
|
|
message TranslateIDsResponse {
|
|
repeated string Keys = 3;
|
|
}
|
|
|
|
message ImportRoaringRequestView {
|
|
string Name = 1;
|
|
bytes Data = 2;
|
|
}
|
|
|
|
message ImportRoaringRequest {
|
|
bool Clear = 1;
|
|
repeated ImportRoaringRequestView views = 2;
|
|
string Action = 3;
|
|
uint64 Block = 4;
|
|
int64 IndexCreatedAt = 5;
|
|
int64 FieldCreatedAt = 6;
|
|
}
|
|
|
|
message ImportColumnAttrsRequest {
|
|
string Index = 1;
|
|
int64 Shard = 2;
|
|
string AttrKey = 3;
|
|
repeated string AttrVals = 4;
|
|
repeated uint64 ColumnIDs = 5;
|
|
int64 IndexCreatedAt = 6;
|
|
}
|