aboutsummaryrefslogtreecommitdiffstats
path: root/kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto
diff options
context:
space:
mode:
authorkomels <komels@yandex-team.ru>2022-04-14 13:10:53 +0300
committerkomels <komels@yandex-team.ru>2022-04-14 13:10:53 +0300
commit21c9b0e6b039e9765eb414c406c2b86e8cea6850 (patch)
treef40ebc18ff8958dfbd189954ad024043ca983ea5 /kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto
parent9a4effa852abe489707139c2b260dccc6f4f9aa9 (diff)
downloadydb-21c9b0e6b039e9765eb414c406c2b86e8cea6850.tar.gz
Final part on compatibility layer: LOGBROKER-7215
ref:777c67aadbf705d19034a09a792b2df61ba53697
Diffstat (limited to 'kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto')
-rw-r--r--kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto43
1 files changed, 43 insertions, 0 deletions
diff --git a/kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto b/kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto
new file mode 100644
index 0000000000..7b685f5966
--- /dev/null
+++ b/kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto
@@ -0,0 +1,43 @@
+syntax = "proto3";
+
+package Ydb.Yndx.KeyValue.V1;
+
+option java_package = "com.yandex.ydb.yndx.keyvalue.v1";
+option java_outer_classname = "KeyValueGrpc";
+option java_multiple_files = true;
+
+import "kikimr/yndx/api/protos/ydb_yndx_keyvalue.proto";
+
+// KeyValue tablets provide a simple key-value storage in a low-overhead and easy-to-shoot-your-leg manner.
+// To use KeyValue tablets in an efficient way one must be familiar with the design of both the KeyValue tablet
+// and the Distributed Storage underneath it.
+
+service KeyValueService {
+
+ // Create a keyvalue volume by the path and a count of partitions
+ rpc CreateVolume(KeyValue.CreateVolumeRequest) returns (KeyValue.CreateVolumeResponse);
+
+ // Drop the keyvalue volume by the path
+ rpc DropVolume(KeyValue.DropVolumeRequest) returns (KeyValue.DropVolumeResponse);
+
+ // List partitions of keyvalue volume in the local node.
+ rpc ListLocalPartitions(KeyValue.ListLocalPartitionsRequest) returns (KeyValue.ListLocalPartitionsResponse);
+
+ // Obtains an exclusive lock for the tablet.
+ rpc AcquireLock(KeyValue.AcquireLockRequest) returns (KeyValue.AcquireLockResponse);
+
+ // Performs one or more actions that modify the state of the tablet as an atomic transaction.
+ rpc ExecuteTransaction(KeyValue.ExecuteTransactionRequest) returns (KeyValue.ExecuteTransactionResponse);
+
+ // Reads value stored in the item with the key specified.
+ rpc Read(KeyValue.ReadRequest) returns (KeyValue.ReadResponse);
+
+ // Reads a list of items with the keys in the range specified.
+ rpc ReadRange(KeyValue.ReadRangeRequest) returns (KeyValue.ReadRangeResponse);
+
+ // List existed items with the keys in the range specified.
+ rpc ListRange(KeyValue.ListRangeRequest) returns (KeyValue.ListRangeResponse);
+
+ // Gets storage channel status of the tablet.
+ rpc GetStorageChannelStatus(KeyValue.GetStorageChannelStatusRequest) returns (KeyValue.GetStorageChannelStatusResponse);
+}