featurebase/internal/private.proto

219 lines
3.6 KiB
Protocol Buffer

syntax = "proto3";
package internal;
message IndexMeta {
string ColumnLabel = 1;
string TimeQuantum = 2;
}
message FrameMeta {
string RowLabel = 1;
bool InverseEnabled = 2;
string CacheType = 3;
uint32 CacheSize = 4;
string TimeQuantum = 5;
bool RangeEnabled = 6;
repeated Field Fields = 7;
}
message ImportResponse {
string Err = 1;
}
message BlockDataRequest {
string Index = 1;
string Frame = 2;
string View = 5;
uint64 Slice = 4;
uint64 Block = 3;
}
message BlockDataResponse {
repeated uint64 RowIDs = 1;
repeated uint64 ColumnIDs = 2;
}
message Cache {
repeated uint64 IDs = 1;
}
message MaxSlices {
map<string, uint64> Standard = 1;
map<string, uint64> Inverse = 2;
}
message CreateSliceMessage {
string Index = 1;
uint64 Slice = 2;
bool IsInverse = 3;
}
message DeleteIndexMessage {
string Index = 1;
}
message CreateIndexMessage {
string Index = 1;
IndexMeta Meta = 2;
}
message CreateFrameMessage {
string Index = 1;
string Frame = 2;
FrameMeta Meta = 3;
}
message DeleteFrameMessage {
string Index = 1;
string Frame = 2;
}
message CreateFieldMessage {
string Index = 1;
string Frame = 2;
Field Field = 3;
}
message DeleteFieldMessage {
string Index = 1;
string Frame = 2;
string Field = 3;
}
message Frame {
string Name = 1;
FrameMeta Meta = 2;
repeated string Views = 3;
}
message Schema {
repeated Index Indexes = 1;
}
message Index {
string Name = 1;
repeated Frame Frames = 4;
repeated InputDefinition InputDefinitions = 6;
}
message InputDefinition {
string Name = 1;
repeated Frame Frames = 2;
repeated InputDefinitionField Fields = 3;
}
message InputDefinitionField {
string Name = 1;
bool PrimaryKey = 2;
repeated InputDefinitionAction InputDefinitionActions = 3;
}
message InputDefinitionAction {
string Frame = 1;
string ValueDestination = 2;
map<string, uint64> ValueMap = 3;
uint64 RowID = 4;
}
message CreateInputDefinitionMessage {
string Index = 1;
InputDefinition Definition = 3;
}
message DeleteInputDefinitionMessage {
string Index = 1;
string Name = 2;
}
message URI {
string Scheme = 1;
string Host = 2;
uint32 Port = 3;
}
message Node {
string ID = 1;
URI URI = 2;
bool IsCoordinator = 3;
}
message NodeStateMessage {
string NodeID = 1;
string State = 2;
}
message NodeEventMessage {
uint32 Event = 1;
Node Node = 2;
}
message NodeStatus {
Node Node = 1;
MaxSlices MaxSlices = 2;
Schema Schema = 3;
}
message ClusterStatus {
string ClusterID = 1;
string State = 2;
repeated Node Nodes = 3;
}
message Field {
string Name = 1;
string Type = 2;
int64 Min = 3;
int64 Max = 4;
}
message CreateViewMessage {
string Index = 1;
string Frame = 2;
string View = 3;
}
message DeleteViewMessage {
string Index = 1;
string Frame = 2;
string View = 3;
}
message ResizeInstruction {
int64 JobID = 1;
Node Node = 2;
Node Coordinator = 3;
repeated ResizeSource Sources = 4;
Schema Schema = 5;
ClusterStatus ClusterStatus = 6;
}
message ResizeSource {
Node Node = 1;
string Index = 2;
string Frame = 3;
string View = 4;
uint64 Slice = 5;
}
message ResizeInstructionComplete {
int64 JobID = 1;
Node Node = 2;
string Error = 3;
}
message SetCoordinatorMessage {
Node New = 1;
}
message UpdateCoordinatorMessage {
Node New = 1;
}
message Topology {
string ClusterID = 1;
repeated string NodeIDs = 2;
}
message RecalculateCaches {}