Documentation ¶
Overview ¶
Red Cloud is a distributed database environment implemented using gRPC and protocol buffers.
Package redcloud is a generated protocol buffer package.
It is generated from these files:
caretaker_interface.proto data_interface.proto metadata.proto node_interface.proto types.proto
It has these top-level messages:
TableName GetRequest ColumnRange GetRangeRequest InsertRequest SSTablePathDescription ServerTabletMetadata ColumnFamilyMetadata TableMetadata ServerTableMetadata RangeServingRequest RangeReleaseRequest RangeReleaseResponse ServerStatus Empty Column ColumnSet ColumnFamily
Index ¶
- Variables
- func RegisterAdminServiceServer(s *grpc.Server, srv AdminServiceServer)
- func RegisterDataNodeMetadataServiceServer(s *grpc.Server, srv DataNodeMetadataServiceServer)
- func RegisterDataNodeServiceServer(s *grpc.Server, srv DataNodeServiceServer)
- type AdminServiceClient
- type AdminServiceServer
- type Column
- type ColumnFamily
- type ColumnFamilyMetadata
- type ColumnRange
- type ColumnSet
- type Column_ColumnContentType
- type DataNodeMetadataServiceClient
- type DataNodeMetadataServiceServer
- type DataNodeServiceClient
- type DataNodeServiceServer
- type DataNodeService_GetRangeClient
- type DataNodeService_GetRangeServer
- type DataUsage
- type Empty
- type GetRangeRequest
- func (*GetRangeRequest) Descriptor() ([]byte, []int)
- func (m *GetRangeRequest) GetColumn() []string
- func (m *GetRangeRequest) GetColumnFamily() string
- func (m *GetRangeRequest) GetEndKey() []byte
- func (m *GetRangeRequest) GetMaxResults() int64
- func (m *GetRangeRequest) GetMaxTimestamp() int64
- func (m *GetRangeRequest) GetMinTimestamp() int64
- func (m *GetRangeRequest) GetStartKey() []byte
- func (m *GetRangeRequest) GetTable() string
- func (*GetRangeRequest) ProtoMessage()
- func (m *GetRangeRequest) Reset()
- func (m *GetRangeRequest) String() string
- type GetRequest
- func (*GetRequest) Descriptor() ([]byte, []int)
- func (m *GetRequest) GetColumn() string
- func (m *GetRequest) GetColumnFamily() string
- func (m *GetRequest) GetKey() []byte
- func (m *GetRequest) GetTable() string
- func (*GetRequest) ProtoMessage()
- func (m *GetRequest) Reset()
- func (m *GetRequest) String() string
- type InsertRequest
- func (*InsertRequest) Descriptor() ([]byte, []int)
- func (m *InsertRequest) GetColumn() *Column
- func (m *InsertRequest) GetColumnFamily() string
- func (m *InsertRequest) GetColumnName() string
- func (m *InsertRequest) GetKey() []byte
- func (m *InsertRequest) GetTable() string
- func (*InsertRequest) ProtoMessage()
- func (m *InsertRequest) Reset()
- func (m *InsertRequest) String() string
- type RangeReleaseRequest
- func (*RangeReleaseRequest) Descriptor() ([]byte, []int)
- func (m *RangeReleaseRequest) GetEndKey() []byte
- func (m *RangeReleaseRequest) GetStartKey() []byte
- func (m *RangeReleaseRequest) GetTable() string
- func (*RangeReleaseRequest) ProtoMessage()
- func (m *RangeReleaseRequest) Reset()
- func (m *RangeReleaseRequest) String() string
- type RangeReleaseResponse
- type RangeServingRequest
- func (*RangeServingRequest) Descriptor() ([]byte, []int)
- func (m *RangeServingRequest) GetEndKey() []byte
- func (m *RangeServingRequest) GetPaths() []*SSTablePathDescription
- func (m *RangeServingRequest) GetStartKey() []byte
- func (m *RangeServingRequest) GetTable() string
- func (*RangeServingRequest) ProtoMessage()
- func (m *RangeServingRequest) Reset()
- func (m *RangeServingRequest) String() string
- type SSTablePathDescription
- func (*SSTablePathDescription) Descriptor() ([]byte, []int)
- func (m *SSTablePathDescription) GetColumnFamily() string
- func (m *SSTablePathDescription) GetMajorSstablePath() string
- func (m *SSTablePathDescription) GetMajorSstableSize() int64
- func (m *SSTablePathDescription) GetMinorSstablePath() string
- func (m *SSTablePathDescription) GetMinorSstableSize() int64
- func (m *SSTablePathDescription) GetRelevantJournalPaths() []string
- func (*SSTablePathDescription) ProtoMessage()
- func (m *SSTablePathDescription) Reset()
- func (m *SSTablePathDescription) String() string
- type ServerStatus
- type ServerTableMetadata
- func (*ServerTableMetadata) Descriptor() ([]byte, []int)
- func (m *ServerTableMetadata) GetName() string
- func (m *ServerTableMetadata) GetTableMd() *TableMetadata
- func (m *ServerTableMetadata) GetTablet() []*ServerTabletMetadata
- func (*ServerTableMetadata) ProtoMessage()
- func (m *ServerTableMetadata) Reset()
- func (m *ServerTableMetadata) String() string
- type ServerTabletMetadata
- func (*ServerTabletMetadata) Descriptor() ([]byte, []int)
- func (m *ServerTabletMetadata) GetEndKey() []byte
- func (m *ServerTabletMetadata) GetHost() string
- func (m *ServerTabletMetadata) GetPort() int32
- func (m *ServerTabletMetadata) GetSstablePath() []*SSTablePathDescription
- func (m *ServerTabletMetadata) GetStartKey() []byte
- func (*ServerTabletMetadata) ProtoMessage()
- func (m *ServerTabletMetadata) Reset()
- func (m *ServerTabletMetadata) String() string
- type TableMetadata
- func (*TableMetadata) Descriptor() ([]byte, []int)
- func (m *TableMetadata) GetColumnFamily() []*ColumnFamilyMetadata
- func (m *TableMetadata) GetDataUsage() DataUsage
- func (m *TableMetadata) GetMaxVersionAge() int64
- func (m *TableMetadata) GetMaxVersions() int64
- func (m *TableMetadata) GetName() string
- func (m *TableMetadata) GetPathPrefix() string
- func (m *TableMetadata) GetSplitSize() int64
- func (*TableMetadata) ProtoMessage()
- func (m *TableMetadata) Reset()
- func (m *TableMetadata) String() string
- type TableName
Constants ¶
This section is empty.
Variables ¶
var Column_ColumnContentType_name = map[int32]string{
0: "DATA",
1: "TOMBSTONE",
}
var Column_ColumnContentType_value = map[string]int32{
"DATA": 0,
"TOMBSTONE": 1,
}
var DataUsage_name = map[int32]string{
0: "UNKNOWN",
1: "SENSITIVE_PERSONAL_INFORMATION",
2: "INTERNAL_BUSINESS_DATA",
}
var DataUsage_value = map[string]int32{
"UNKNOWN": 0,
"SENSITIVE_PERSONAL_INFORMATION": 1,
"INTERNAL_BUSINESS_DATA": 2,
}
Functions ¶
func RegisterAdminServiceServer ¶
func RegisterAdminServiceServer(s *grpc.Server, srv AdminServiceServer)
func RegisterDataNodeMetadataServiceServer ¶
func RegisterDataNodeMetadataServiceServer(s *grpc.Server, srv DataNodeMetadataServiceServer)
func RegisterDataNodeServiceServer ¶
func RegisterDataNodeServiceServer(s *grpc.Server, srv DataNodeServiceServer)
Types ¶
type AdminServiceClient ¶
type AdminServiceClient interface { // Create a new table with the specified metadata. CreateTable(ctx context.Context, in *TableMetadata, opts ...grpc.CallOption) (*Empty, error) // Update an existing table with the specified metadata. UpdateTable(ctx context.Context, in *TableMetadata, opts ...grpc.CallOption) (*Empty, error) // // Delete a table; since this will unregister it from all data nodes, // this may take some time. DeleteTable(ctx context.Context, in *TableName, opts ...grpc.CallOption) (*Empty, error) }
func NewAdminServiceClient ¶
func NewAdminServiceClient(cc *grpc.ClientConn) AdminServiceClient
type AdminServiceServer ¶
type AdminServiceServer interface { // Create a new table with the specified metadata. CreateTable(context.Context, *TableMetadata) (*Empty, error) // Update an existing table with the specified metadata. UpdateTable(context.Context, *TableMetadata) (*Empty, error) // // Delete a table; since this will unregister it from all data nodes, // this may take some time. DeleteTable(context.Context, *TableName) (*Empty, error) }
type Column ¶
type Column struct { // // Type of the data contained in the column. In journals and minor sstables, // this might be set to TOMBSTONE to represent that data in the column has // been deleted. Type Column_ColumnContentType `protobuf:"varint,1,opt,name=type,enum=redcloud.Column_ColumnContentType" json:"type,omitempty"` // // timestamp describes the exact point in time, encoded as milliseconds, // when the datum has been written. This will be used both for expiry (see // ttl) and to determine the most current datum in the column. // // Nonetheless, this field is filled in by the client because red-cloud // can't claim to know where the data came from. Timestamp int64 `protobuf:"varint,2,opt,name=timestamp" json:"timestamp,omitempty"` // // ttl describes the number of milliseconds this datum will be considered // valid. A compaction running after timestamp+ttl will discard this datum. // A ttl of 0 describes permanent data which will never expire. Ttl int64 `protobuf:"varint,3,opt,name=ttl" json:"ttl,omitempty"` // content contains the data actually written to the column. Content []byte `protobuf:"bytes,4,opt,name=content,proto3" json:"content,omitempty"` }
Column contains information about data contained within a column.
func (*Column) Descriptor ¶
func (*Column) GetContent ¶
func (*Column) GetTimestamp ¶
func (*Column) GetType ¶
func (m *Column) GetType() Column_ColumnContentType
func (*Column) ProtoMessage ¶
func (*Column) ProtoMessage()
type ColumnFamily ¶
type ColumnFamily struct { // Row key to identify the row this ColumnFamily pertains to. Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Many ColumnSets make a ColumnFamily. ColumnSet []*ColumnSet `protobuf:"bytes,2,rep,name=column_set,json=columnSet" json:"column_set,omitempty"` }
ColumnFamily contains all ColumnSet objects associated with a single row which belong to a single column family.
func (*ColumnFamily) Descriptor ¶
func (*ColumnFamily) Descriptor() ([]byte, []int)
func (*ColumnFamily) GetColumnSet ¶
func (m *ColumnFamily) GetColumnSet() []*ColumnSet
func (*ColumnFamily) GetKey ¶
func (m *ColumnFamily) GetKey() []byte
func (*ColumnFamily) ProtoMessage ¶
func (*ColumnFamily) ProtoMessage()
func (*ColumnFamily) Reset ¶
func (m *ColumnFamily) Reset()
func (*ColumnFamily) String ¶
func (m *ColumnFamily) String() string
type ColumnFamilyMetadata ¶
type ColumnFamilyMetadata struct { // Name of the column family registered. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` }
ColumnFamilyMetadata holds metadata for an individual column family. Only column families which have a ColumnFamilyMetadata record will be considered as existent.
func (*ColumnFamilyMetadata) Descriptor ¶
func (*ColumnFamilyMetadata) Descriptor() ([]byte, []int)
func (*ColumnFamilyMetadata) GetName ¶
func (m *ColumnFamilyMetadata) GetName() string
func (*ColumnFamilyMetadata) ProtoMessage ¶
func (*ColumnFamilyMetadata) ProtoMessage()
func (*ColumnFamilyMetadata) Reset ¶
func (m *ColumnFamilyMetadata) Reset()
func (*ColumnFamilyMetadata) String ¶
func (m *ColumnFamilyMetadata) String() string
type ColumnRange ¶
type ColumnRange struct { // Name of the first column to be returned. StartColumn string `protobuf:"bytes,1,opt,name=start_column,json=startColumn" json:"start_column,omitempty"` // // Name of the first column that should not be returned anymore, or an empty // string to operate on all columns following StartColumn. EndColumn string `protobuf:"bytes,2,opt,name=end_column,json=endColumn" json:"end_column,omitempty"` }
ColumnRange describes a range of column names to be operated on.
func (*ColumnRange) Descriptor ¶
func (*ColumnRange) Descriptor() ([]byte, []int)
func (*ColumnRange) GetEndColumn ¶
func (m *ColumnRange) GetEndColumn() string
func (*ColumnRange) GetStartColumn ¶
func (m *ColumnRange) GetStartColumn() string
func (*ColumnRange) ProtoMessage ¶
func (*ColumnRange) ProtoMessage()
func (*ColumnRange) Reset ¶
func (m *ColumnRange) Reset()
func (*ColumnRange) String ¶
func (m *ColumnRange) String() string
type ColumnSet ¶
type ColumnSet struct { // name contains the name of the column being represented. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // // A ColumnSet consists of a number of Columns. They represent different // versions of the data contained in the column. Column []*Column `protobuf:"bytes,2,rep,name=column" json:"column,omitempty"` }
ColumnSet is a list of data records for a single column within a single row.
func (*ColumnSet) Descriptor ¶
func (*ColumnSet) ProtoMessage ¶
func (*ColumnSet) ProtoMessage()
type Column_ColumnContentType ¶
type Column_ColumnContentType int32
const ( Column_DATA Column_ColumnContentType = 0 Column_TOMBSTONE Column_ColumnContentType = 1 )
func (Column_ColumnContentType) EnumDescriptor ¶
func (Column_ColumnContentType) EnumDescriptor() ([]byte, []int)
func (Column_ColumnContentType) String ¶
func (x Column_ColumnContentType) String() string
type DataNodeMetadataServiceClient ¶
type DataNodeMetadataServiceClient interface { // // ServeRange requests to start serving a specific range of the table. May // fail, but otherwise it is assumed that the table/range will be served // from this node in the future. ServeRange(ctx context.Context, in *RangeServingRequest, opts ...grpc.CallOption) (*Empty, error) // // ReleaseRange requests to stop serving a specific range of a table and to // return pointers to all files associated with the range at the time // serving has stopped. ReleaseRange(ctx context.Context, in *RangeReleaseRequest, opts ...grpc.CallOption) (*RangeReleaseResponse, error) // // GetServerStatus determines and returns some information about the status // of the server. GetServerStatus(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*ServerStatus, error) // // Ping provides simple ping functionality to check node availability. Ping(ctx context.Context, in *Empty, opts ...grpc.CallOption) (*Empty, error) }
func NewDataNodeMetadataServiceClient ¶
func NewDataNodeMetadataServiceClient(cc *grpc.ClientConn) DataNodeMetadataServiceClient
type DataNodeMetadataServiceServer ¶
type DataNodeMetadataServiceServer interface { // // ServeRange requests to start serving a specific range of the table. May // fail, but otherwise it is assumed that the table/range will be served // from this node in the future. ServeRange(context.Context, *RangeServingRequest) (*Empty, error) // // ReleaseRange requests to stop serving a specific range of a table and to // return pointers to all files associated with the range at the time // serving has stopped. ReleaseRange(context.Context, *RangeReleaseRequest) (*RangeReleaseResponse, error) // // GetServerStatus determines and returns some information about the status // of the server. GetServerStatus(context.Context, *Empty) (*ServerStatus, error) // // Ping provides simple ping functionality to check node availability. Ping(context.Context, *Empty) (*Empty, error) }
type DataNodeServiceClient ¶
type DataNodeServiceClient interface { // // Request an individual data cell from the database. If multiple versions of // the cell exist, only the latest version will be returned. Get(ctx context.Context, in *GetRequest, opts ...grpc.CallOption) (*Column, error) // // Request a range of data from the database. This will return all matching // versions of all matching data on the database. GetRange(ctx context.Context, in *GetRangeRequest, opts ...grpc.CallOption) (DataNodeService_GetRangeClient, error) // Set a very specific data cell to the specified value. Insert(ctx context.Context, in *InsertRequest, opts ...grpc.CallOption) (*Empty, error) }
func NewDataNodeServiceClient ¶
func NewDataNodeServiceClient(cc *grpc.ClientConn) DataNodeServiceClient
type DataNodeServiceServer ¶
type DataNodeServiceServer interface { // // Request an individual data cell from the database. If multiple versions of // the cell exist, only the latest version will be returned. Get(context.Context, *GetRequest) (*Column, error) // // Request a range of data from the database. This will return all matching // versions of all matching data on the database. GetRange(*GetRangeRequest, DataNodeService_GetRangeServer) error // Set a very specific data cell to the specified value. Insert(context.Context, *InsertRequest) (*Empty, error) }
type DataNodeService_GetRangeClient ¶
type DataNodeService_GetRangeClient interface { Recv() (*ColumnSet, error) grpc.ClientStream }
type DataNodeService_GetRangeServer ¶
type DataNodeService_GetRangeServer interface { Send(*ColumnSet) error grpc.ServerStream }
type DataUsage ¶
type DataUsage int32
Declaration of the type of data contained in a table.
func (DataUsage) EnumDescriptor ¶
type Empty ¶
type Empty struct { }
Empty is an empty message. There's a similar definition in the protocol buffer base, but that doesn't seem to work with all protobuf compilers, so we have our own.
func (*Empty) Descriptor ¶
func (*Empty) ProtoMessage ¶
func (*Empty) ProtoMessage()
type GetRangeRequest ¶
type GetRangeRequest struct { // Key of the first record to be returned. StartKey []byte `protobuf:"bytes,1,opt,name=start_key,json=startKey,proto3" json:"start_key,omitempty"` // // Key of the first record that shall no longer be returned; if empty, all // keys after the start key will be returned. EndKey []byte `protobuf:"bytes,2,opt,name=end_key,json=endKey,proto3" json:"end_key,omitempty"` // Name of the table which the data is being extracted from. Table string `protobuf:"bytes,3,opt,name=table" json:"table,omitempty"` // // Name of the column family the data is stored at. Data can only be // requested from a single column family at a time. ColumnFamily string `protobuf:"bytes,4,opt,name=column_family,json=columnFamily" json:"column_family,omitempty"` // List of the names of all columns affected. Column []string `protobuf:"bytes,5,rep,name=column" json:"column,omitempty"` // // Minimum timestamp to be taken into account for returning, or 0. // Please note that no number of affected timestamps filtering can be done // on the data node. MinTimestamp int64 `protobuf:"varint,6,opt,name=min_timestamp,json=minTimestamp" json:"min_timestamp,omitempty"` // Maximum timestamp to be taken into account, or 0. MaxTimestamp int64 `protobuf:"varint,7,opt,name=max_timestamp,json=maxTimestamp" json:"max_timestamp,omitempty"` // // Maximum number of results which will be returned from each data node. // There will be no ordering of results, probably, so this is mostly a // sanity check mechanism to prevent excessive load. Setting this to 0 // will disable any limits. MaxResults int64 `protobuf:"varint,8,opt,name=max_results,json=maxResults" json:"max_results,omitempty"` }
GetRangeRequest describes a request for data for a key range from a number (or range) of columns. All data matching the criteria will be streamed back to the client.
func (*GetRangeRequest) Descriptor ¶
func (*GetRangeRequest) Descriptor() ([]byte, []int)
func (*GetRangeRequest) GetColumn ¶
func (m *GetRangeRequest) GetColumn() []string
func (*GetRangeRequest) GetColumnFamily ¶
func (m *GetRangeRequest) GetColumnFamily() string
func (*GetRangeRequest) GetEndKey ¶
func (m *GetRangeRequest) GetEndKey() []byte
func (*GetRangeRequest) GetMaxResults ¶
func (m *GetRangeRequest) GetMaxResults() int64
func (*GetRangeRequest) GetMaxTimestamp ¶
func (m *GetRangeRequest) GetMaxTimestamp() int64
func (*GetRangeRequest) GetMinTimestamp ¶
func (m *GetRangeRequest) GetMinTimestamp() int64
func (*GetRangeRequest) GetStartKey ¶
func (m *GetRangeRequest) GetStartKey() []byte
func (*GetRangeRequest) GetTable ¶
func (m *GetRangeRequest) GetTable() string
func (*GetRangeRequest) ProtoMessage ¶
func (*GetRangeRequest) ProtoMessage()
func (*GetRangeRequest) Reset ¶
func (m *GetRangeRequest) Reset()
func (*GetRangeRequest) String ¶
func (m *GetRangeRequest) String() string
type GetRequest ¶
type GetRequest struct { // Key of the row to be fetched from the database. Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Name of the table which data is being extracted from. Table string `protobuf:"bytes,2,opt,name=table" json:"table,omitempty"` // Name of the column family the data is stored at. ColumnFamily string `protobuf:"bytes,3,opt,name=column_family,json=columnFamily" json:"column_family,omitempty"` // Name of the specific column being referred to. Column string `protobuf:"bytes,4,opt,name=column" json:"column,omitempty"` }
GetRequest formulates a request for fetching a single individual key.
func (*GetRequest) Descriptor ¶
func (*GetRequest) Descriptor() ([]byte, []int)
func (*GetRequest) GetColumn ¶
func (m *GetRequest) GetColumn() string
func (*GetRequest) GetColumnFamily ¶
func (m *GetRequest) GetColumnFamily() string
func (*GetRequest) GetKey ¶
func (m *GetRequest) GetKey() []byte
func (*GetRequest) GetTable ¶
func (m *GetRequest) GetTable() string
func (*GetRequest) ProtoMessage ¶
func (*GetRequest) ProtoMessage()
func (*GetRequest) Reset ¶
func (m *GetRequest) Reset()
func (*GetRequest) String ¶
func (m *GetRequest) String() string
type InsertRequest ¶
type InsertRequest struct { // Key of the row which shall be updated. Key []byte `protobuf:"bytes,1,opt,name=key,proto3" json:"key,omitempty"` // Name of the table to mutate. Table string `protobuf:"bytes,2,opt,name=table" json:"table,omitempty"` // Name of the column family to mutate. ColumnFamily string `protobuf:"bytes,3,opt,name=column_family,json=columnFamily" json:"column_family,omitempty"` // Name of the column to insert. ColumnName string `protobuf:"bytes,4,opt,name=column_name,json=columnName" json:"column_name,omitempty"` // Column value to insert into the data stream. Column *Column `protobuf:"bytes,5,opt,name=column" json:"column,omitempty"` }
InsertRequest describes a request to insert a specific value for the specified key; the timestamp and TTL will be preserved.
func (*InsertRequest) Descriptor ¶
func (*InsertRequest) Descriptor() ([]byte, []int)
func (*InsertRequest) GetColumn ¶
func (m *InsertRequest) GetColumn() *Column
func (*InsertRequest) GetColumnFamily ¶
func (m *InsertRequest) GetColumnFamily() string
func (*InsertRequest) GetColumnName ¶
func (m *InsertRequest) GetColumnName() string
func (*InsertRequest) GetKey ¶
func (m *InsertRequest) GetKey() []byte
func (*InsertRequest) GetTable ¶
func (m *InsertRequest) GetTable() string
func (*InsertRequest) ProtoMessage ¶
func (*InsertRequest) ProtoMessage()
func (*InsertRequest) Reset ¶
func (m *InsertRequest) Reset()
func (*InsertRequest) String ¶
func (m *InsertRequest) String() string
type RangeReleaseRequest ¶
type RangeReleaseRequest struct { // table is the name of the table whose data is supposed to be unloaded. Table string `protobuf:"bytes,1,opt,name=table" json:"table,omitempty"` // // start_key is the first valid key which is covered by the range which is // being loaded. StartKey []byte `protobuf:"bytes,2,opt,name=start_key,json=startKey,proto3" json:"start_key,omitempty"` // // end_key is the first key which is no longer covered by the range which is // being loaded. If this is empty, it represents the end of the table. EndKey []byte `protobuf:"bytes,3,opt,name=end_key,json=endKey,proto3" json:"end_key,omitempty"` }
RangeReleaseRequest describes a request to a data node to stop serving a given range of a given table.
func (*RangeReleaseRequest) Descriptor ¶
func (*RangeReleaseRequest) Descriptor() ([]byte, []int)
func (*RangeReleaseRequest) GetEndKey ¶
func (m *RangeReleaseRequest) GetEndKey() []byte
func (*RangeReleaseRequest) GetStartKey ¶
func (m *RangeReleaseRequest) GetStartKey() []byte
func (*RangeReleaseRequest) GetTable ¶
func (m *RangeReleaseRequest) GetTable() string
func (*RangeReleaseRequest) ProtoMessage ¶
func (*RangeReleaseRequest) ProtoMessage()
func (*RangeReleaseRequest) Reset ¶
func (m *RangeReleaseRequest) Reset()
func (*RangeReleaseRequest) String ¶
func (m *RangeReleaseRequest) String() string
type RangeReleaseResponse ¶
type RangeReleaseResponse struct { // Relevant paths for all sstables which have been unloaded. Paths []*SSTablePathDescription `protobuf:"bytes,1,rep,name=paths" json:"paths,omitempty"` }
RangeReleaseResponse is sent in response to a RangeReleaseRequest and describes the sstables and journals of the unloaded tablet(s).
func (*RangeReleaseResponse) Descriptor ¶
func (*RangeReleaseResponse) Descriptor() ([]byte, []int)
func (*RangeReleaseResponse) GetPaths ¶
func (m *RangeReleaseResponse) GetPaths() []*SSTablePathDescription
func (*RangeReleaseResponse) ProtoMessage ¶
func (*RangeReleaseResponse) ProtoMessage()
func (*RangeReleaseResponse) Reset ¶
func (m *RangeReleaseResponse) Reset()
func (*RangeReleaseResponse) String ¶
func (m *RangeReleaseResponse) String() string
type RangeServingRequest ¶
type RangeServingRequest struct { // table is the name of the table which is supposed to be loaded. Table string `protobuf:"bytes,1,opt,name=table" json:"table,omitempty"` // // start_key is the first valid key which is covered by the range which is // being loaded. StartKey []byte `protobuf:"bytes,2,opt,name=start_key,json=startKey,proto3" json:"start_key,omitempty"` // // end_key is the first key which is no longer covered by the range which is // being loaded. If this is empty, it represents the end of the table. EndKey []byte `protobuf:"bytes,3,opt,name=end_key,json=endKey,proto3" json:"end_key,omitempty"` // Relevant paths for all sstables which should be loaded. Paths []*SSTablePathDescription `protobuf:"bytes,4,rep,name=paths" json:"paths,omitempty"` }
RangeServingRequest describes a request to a data node to start serving a given range of a given table.
func (*RangeServingRequest) Descriptor ¶
func (*RangeServingRequest) Descriptor() ([]byte, []int)
func (*RangeServingRequest) GetEndKey ¶
func (m *RangeServingRequest) GetEndKey() []byte
func (*RangeServingRequest) GetPaths ¶
func (m *RangeServingRequest) GetPaths() []*SSTablePathDescription
func (*RangeServingRequest) GetStartKey ¶
func (m *RangeServingRequest) GetStartKey() []byte
func (*RangeServingRequest) GetTable ¶
func (m *RangeServingRequest) GetTable() string
func (*RangeServingRequest) ProtoMessage ¶
func (*RangeServingRequest) ProtoMessage()
func (*RangeServingRequest) Reset ¶
func (m *RangeServingRequest) Reset()
func (*RangeServingRequest) String ¶
func (m *RangeServingRequest) String() string
type SSTablePathDescription ¶
type SSTablePathDescription struct { // Name of the column family which is covered. ColumnFamily string `protobuf:"bytes,1,opt,name=column_family,json=columnFamily" json:"column_family,omitempty"` // // Path to the major sstable holding the current compacted version of the // column family in the specified table. MajorSstablePath string `protobuf:"bytes,2,opt,name=major_sstable_path,json=majorSstablePath" json:"major_sstable_path,omitempty"` // // Path to the minor sstable holding the current amended data of the column // family in the specified table. MinorSstablePath string `protobuf:"bytes,3,opt,name=minor_sstable_path,json=minorSstablePath" json:"minor_sstable_path,omitempty"` // // Path to all journal files containing further amendments of the minor // sstable which have not been (fully) compacted yet. RelevantJournalPaths []string `protobuf:"bytes,4,rep,name=relevant_journal_paths,json=relevantJournalPaths" json:"relevant_journal_paths,omitempty"` // Size of the major sstable on the most recent compaction. MajorSstableSize int64 `protobuf:"varint,5,opt,name=major_sstable_size,json=majorSstableSize" json:"major_sstable_size,omitempty"` // Size of the minor sstable on the most recent compaction. MinorSstableSize int64 `protobuf:"varint,6,opt,name=minor_sstable_size,json=minorSstableSize" json:"minor_sstable_size,omitempty"` }
SSTablePathDescription describes all paths holding data for the given table/key range.
func (*SSTablePathDescription) Descriptor ¶
func (*SSTablePathDescription) Descriptor() ([]byte, []int)
func (*SSTablePathDescription) GetColumnFamily ¶
func (m *SSTablePathDescription) GetColumnFamily() string
func (*SSTablePathDescription) GetMajorSstablePath ¶
func (m *SSTablePathDescription) GetMajorSstablePath() string
func (*SSTablePathDescription) GetMajorSstableSize ¶
func (m *SSTablePathDescription) GetMajorSstableSize() int64
func (*SSTablePathDescription) GetMinorSstablePath ¶
func (m *SSTablePathDescription) GetMinorSstablePath() string
func (*SSTablePathDescription) GetMinorSstableSize ¶
func (m *SSTablePathDescription) GetMinorSstableSize() int64
func (*SSTablePathDescription) GetRelevantJournalPaths ¶
func (m *SSTablePathDescription) GetRelevantJournalPaths() []string
func (*SSTablePathDescription) ProtoMessage ¶
func (*SSTablePathDescription) ProtoMessage()
func (*SSTablePathDescription) Reset ¶
func (m *SSTablePathDescription) Reset()
func (*SSTablePathDescription) String ¶
func (m *SSTablePathDescription) String() string
type ServerStatus ¶
type ServerStatus struct { // Number of currently allocated bytes of heap memory. HeapSize uint64 `protobuf:"varint,1,opt,name=heap_size,json=heapSize" json:"heap_size,omitempty"` // Status port for looking at the web interface. StatusPort uint32 `protobuf:"varint,2,opt,name=status_port,json=statusPort" json:"status_port,omitempty"` }
ServerStatus contains detailed information about the server load etc.
func (*ServerStatus) Descriptor ¶
func (*ServerStatus) Descriptor() ([]byte, []int)
func (*ServerStatus) GetHeapSize ¶
func (m *ServerStatus) GetHeapSize() uint64
func (*ServerStatus) GetStatusPort ¶
func (m *ServerStatus) GetStatusPort() uint32
func (*ServerStatus) ProtoMessage ¶
func (*ServerStatus) ProtoMessage()
func (*ServerStatus) Reset ¶
func (m *ServerStatus) Reset()
func (*ServerStatus) String ¶
func (m *ServerStatus) String() string
type ServerTableMetadata ¶
type ServerTableMetadata struct { // The name of the table, for identifying it. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // Table metadata associated with the table. TableMd *TableMetadata `protobuf:"bytes,2,opt,name=table_md,json=tableMd" json:"table_md,omitempty"` // // List of all tablets associated with this table and the servers they // are loaded on. Tablet []*ServerTabletMetadata `protobuf:"bytes,3,rep,name=tablet" json:"tablet,omitempty"` }
ServerTableMetadata holds Server-side table metadata for redcloud tables.
func (*ServerTableMetadata) Descriptor ¶
func (*ServerTableMetadata) Descriptor() ([]byte, []int)
func (*ServerTableMetadata) GetName ¶
func (m *ServerTableMetadata) GetName() string
func (*ServerTableMetadata) GetTableMd ¶
func (m *ServerTableMetadata) GetTableMd() *TableMetadata
func (*ServerTableMetadata) GetTablet ¶
func (m *ServerTableMetadata) GetTablet() []*ServerTabletMetadata
func (*ServerTableMetadata) ProtoMessage ¶
func (*ServerTableMetadata) ProtoMessage()
func (*ServerTableMetadata) Reset ¶
func (m *ServerTableMetadata) Reset()
func (*ServerTableMetadata) String ¶
func (m *ServerTableMetadata) String() string
type ServerTabletMetadata ¶
type ServerTabletMetadata struct { // The first key of the tablet. StartKey []byte `protobuf:"bytes,1,opt,name=start_key,json=startKey,proto3" json:"start_key,omitempty"` // // The first key after the end of the tablet, or an empty byte string // if this is the last tablet of the table. EndKey []byte `protobuf:"bytes,2,opt,name=end_key,json=endKey,proto3" json:"end_key,omitempty"` // // host currently holding the tablet. Please note that this may change // at any time. Host string `protobuf:"bytes,3,opt,name=host" json:"host,omitempty"` // // Port the host currently holding the tablet is exporting the database // service on. Port int32 `protobuf:"varint,4,opt,name=port" json:"port,omitempty"` // // Optional path to the sstable file holding the table data, so future // data nodes can pick it up. SstablePath []*SSTablePathDescription `protobuf:"bytes,5,rep,name=sstable_path,json=sstablePath" json:"sstable_path,omitempty"` }
ServerTabletMetadata holds metadata for tablets, i.e. individual pieces of tables living on specific servers.
func (*ServerTabletMetadata) Descriptor ¶
func (*ServerTabletMetadata) Descriptor() ([]byte, []int)
func (*ServerTabletMetadata) GetEndKey ¶
func (m *ServerTabletMetadata) GetEndKey() []byte
func (*ServerTabletMetadata) GetHost ¶
func (m *ServerTabletMetadata) GetHost() string
func (*ServerTabletMetadata) GetPort ¶
func (m *ServerTabletMetadata) GetPort() int32
func (*ServerTabletMetadata) GetSstablePath ¶
func (m *ServerTabletMetadata) GetSstablePath() []*SSTablePathDescription
func (*ServerTabletMetadata) GetStartKey ¶
func (m *ServerTabletMetadata) GetStartKey() []byte
func (*ServerTabletMetadata) ProtoMessage ¶
func (*ServerTabletMetadata) ProtoMessage()
func (*ServerTabletMetadata) Reset ¶
func (m *ServerTabletMetadata) Reset()
func (*ServerTabletMetadata) String ¶
func (m *ServerTabletMetadata) String() string
type TableMetadata ¶
type TableMetadata struct { // The name of the table. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` // // Desired size after which tablets should be split. // If unspecified, defaults to 128 MB. SplitSize int64 `protobuf:"varint,2,opt,name=split_size,json=splitSize" json:"split_size,omitempty"` // // Maximum number of versions to keep of each cell. If 0, cells will never // be expired automatically based on the number of them. MaxVersions int64 `protobuf:"varint,3,opt,name=max_versions,json=maxVersions" json:"max_versions,omitempty"` // // Maximum age, in milliseconds, of older versions of cells, i.e. the ones // which do not have the highest insertion time stamp. If 0, old versions // are not expired based on age. MaxVersionAge int64 `protobuf:"varint,4,opt,name=max_version_age,json=maxVersionAge" json:"max_version_age,omitempty"` // // Path the files will be stored under. Changes to this value will only take // effect gradually when tablets are reloaded. PathPrefix string `protobuf:"bytes,5,opt,name=path_prefix,json=pathPrefix" json:"path_prefix,omitempty"` // // List of all column families configured for the table. ColumnFamily []*ColumnFamilyMetadata `protobuf:"bytes,6,rep,name=column_family,json=columnFamily" json:"column_family,omitempty"` // // Declaration of the type of data contained in the table. DataUsage DataUsage `protobuf:"varint,7,opt,name=data_usage,json=dataUsage,enum=redcloud.DataUsage" json:"data_usage,omitempty"` }
TableMetadata holds table metadata for redcloud tables. This is the user-specified part of the table metadata.
func (*TableMetadata) Descriptor ¶
func (*TableMetadata) Descriptor() ([]byte, []int)
func (*TableMetadata) GetColumnFamily ¶
func (m *TableMetadata) GetColumnFamily() []*ColumnFamilyMetadata
func (*TableMetadata) GetDataUsage ¶
func (m *TableMetadata) GetDataUsage() DataUsage
func (*TableMetadata) GetMaxVersionAge ¶
func (m *TableMetadata) GetMaxVersionAge() int64
func (*TableMetadata) GetMaxVersions ¶
func (m *TableMetadata) GetMaxVersions() int64
func (*TableMetadata) GetName ¶
func (m *TableMetadata) GetName() string
func (*TableMetadata) GetPathPrefix ¶
func (m *TableMetadata) GetPathPrefix() string
func (*TableMetadata) GetSplitSize ¶
func (m *TableMetadata) GetSplitSize() int64
func (*TableMetadata) ProtoMessage ¶
func (*TableMetadata) ProtoMessage()
func (*TableMetadata) Reset ¶
func (m *TableMetadata) Reset()
func (*TableMetadata) String ¶
func (m *TableMetadata) String() string
type TableName ¶
type TableName struct { // Name of the table the operation is performed on. Name string `protobuf:"bytes,1,opt,name=name" json:"name,omitempty"` }
TableName contains just the name of a table.
func (*TableName) Descriptor ¶
func (*TableName) ProtoMessage ¶
func (*TableName) ProtoMessage()