groot.sdk.model.proto Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of groot-client Show documentation
Show all versions of groot-client Show documentation
The Java client of Groot, a persistence storage engine
/**
* Copyright 2020 Alibaba Group Holding Limited.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
syntax = "proto3";
package gs.rpc.groot;
import "schema_common.proto";
option java_package = "com.alibaba.graphscope.proto.groot";
option java_multiple_files = true;
message OperationPb {
int64 partitionKey = 1;
OpTypePb opType = 2;
bytes dataBytes = 3;
}
message OperationBatchPb {
int64 latestSnapshotId = 1;
repeated OperationPb operations = 2;
}
message LogEntryPb {
int64 snapshotId = 1;
OperationBatchPb operations = 2;
}
enum OpTypePb {
MARKER = 0;
OVERWRITE_VERTEX = 1;
UPDATE_VERTEX = 2;
DELETE_VERTEX = 3;
OVERWRITE_EDGE = 4;
UPDATE_EDGE = 5;
DELETE_EDGE = 6;
CREATE_VERTEX_TYPE = 7;
CREATE_EDGE_TYPE = 8;
ADD_EDGE_KIND = 9;
DROP_VERTEX_TYPE = 10;
DROP_EDGE_TYPE = 11;
REMOVE_EDGE_KIND = 12;
PREPARE_DATA_LOAD = 13;
COMMIT_DATA_LOAD = 14;
CLEAR_VERTEX_PROPERTIES = 15;
CLEAR_EDGE_PROPERTIES = 16;
}
message VertexIdPb {
int64 id = 1;
}
message EdgeIdPb {
VertexIdPb srcId = 1;
VertexIdPb dstId = 2;
int64 id = 3;
}
message EdgeLocationPb {
gs.rpc.graph.EdgeKindPb edgeKind = 1;
bool forward = 2;
}
message DataOperationPb {
// One of [VertexIdPb, EdgeIdPb]
bytes keyBlob = 1;
// One of [LabelIdPb, EdgeLocation]
bytes locationBlob = 2;
map props = 3;
repeated int32 propIds = 4;
}
message KindOperationPb {
gs.rpc.graph.EdgeKindPb edgeKind = 1;
}
message DdlRequestPb {
OpTypePb opType = 1;
bytes ddlBytes = 2;
}
message DdlRequestBatchPb {
repeated DdlRequestPb ddlRequests = 1;
}
message DdlOperationPb {
int64 schemaVersion = 1;
bytes ddlBlob = 2;
}
message CreateVertexTypePb {
gs.rpc.graph.TypeDefPb typeDef = 1;
int64 tableIdx = 2;
}
message AddEdgeKindPb {
gs.rpc.graph.EdgeKindPb edgeKind = 1;
int64 tableIdx = 2;
}
message EdgeTableIdEntry {
gs.rpc.graph.EdgeKindPb edgeKind = 1;
int64 tableId = 2;
}
message VertexTableIdEntry {
gs.rpc.graph.LabelIdPb labelId = 1;
int64 tableId = 2;
}
message GraphDefPb {
int64 version = 1;
repeated gs.rpc.graph.TypeDefPb typeDefs = 2;
repeated gs.rpc.graph.EdgeKindPb edgeKinds = 3;
map propertyNameToId = 4;
int32 labelIdx = 5;
int32 propertyIdx = 6;
repeated VertexTableIdEntry vertexTableIds = 7;
repeated EdgeTableIdEntry edgeTableIds = 8;
int64 tableIdx = 9;
}
message StorePropertyPb {
int32 property_id = 1;
gs.rpc.graph.PropertyValuePb property_value = 2;
}
message StorePropertyListPb {
repeated StorePropertyPb properties = 1;
}
message ConfigPb {
map configs = 1;
}
message BackupInfoPb {
int32 globalBackupId = 1;
int64 snapshotId = 2;
GraphDefPb graphDef = 3;
repeated int64 walOffsets = 4;
map partitionToBackupId = 5;
}
message DataLoadTargetPb {
string label = 1;
string srcLabel = 2;
string dstLabel = 3;
int32 labelId = 4;
int32 srcLabelId = 5;
int32 dstLabelId = 6;
}
message PrepareDataLoadPb {
DataLoadTargetPb target = 1;
int64 tableIdx = 2;
}
message CommitDataLoadPb {
DataLoadTargetPb target = 1;
int64 tableIdx = 2;
string path = 3;
int32 partitionId = 4;
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy