aboutsummaryrefslogtreecommitdiffstats
path: root/kikimr/yndx/api/grpc/ydb_yndx_keyvalue_v1.proto
blob: 7b685f5966d5eb30887c46df2739d027b3bffea9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
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);
}