Documentation ¶
Index ¶
- Constants
- Variables
- func AllowPartialResults() func(Call) error
- func CloseScanner() func(Call) error
- func DeleteOneVersion() func(Call) error
- func Durability(d DurabilityType) func(Call) error
- func Families(f map[string][]string) func(Call) error
- func Filters(f filter.Filter) func(Call) error
- func MaxResultSize(n uint64) func(Call) error
- func MaxResultsPerColumnFamily(maxresults uint32) func(Call) error
- func MaxVersions(versions uint32) func(Call) error
- func NumberOfRows(n uint32) func(Call) error
- func ResultOffset(offset uint32) func(Call) error
- func Reversed() func(Call) error
- func ScannerID(id uint64) func(Call) error
- func SkipBatch() func(Call) error
- func SplitKeys(sk [][]byte) func(*CreateTable)
- func TTL(t time.Duration) func(Call) error
- func TimeRange(from, to time.Time) func(Call) error
- func TimeRangeUint64(from, to uint64) func(Call) error
- func Timestamp(ts time.Time) func(Call) error
- func TimestampUint64(ts uint64) func(Call) error
- type Batchable
- type Call
- type Cell
- type CheckAndPut
- func (b CheckAndPut) Context() context.Context
- func (b CheckAndPut) Key() []byte
- func (b CheckAndPut) Options() []func(Call) error
- func (b CheckAndPut) Region() RegionInfo
- func (b CheckAndPut) ResultChan() chan RPCResult
- func (b CheckAndPut) SetRegion(region RegionInfo)
- func (b CheckAndPut) Table() []byte
- func (cp *CheckAndPut) ToProto() proto.Message
- type ClusterStatus
- func (b *ClusterStatus) Context() context.Context
- func (b *ClusterStatus) Key() []byte
- func (c *ClusterStatus) Name() string
- func (c *ClusterStatus) NewResponse() proto.Message
- func (b *ClusterStatus) Options() []func(Call) error
- func (b *ClusterStatus) Region() RegionInfo
- func (b *ClusterStatus) ResultChan() chan RPCResult
- func (b *ClusterStatus) SetRegion(region RegionInfo)
- func (b *ClusterStatus) Table() []byte
- func (c *ClusterStatus) ToProto() proto.Message
- type CreateTable
- func (b *CreateTable) Context() context.Context
- func (b *CreateTable) Key() []byte
- func (ct *CreateTable) Name() string
- func (ct *CreateTable) NewResponse() proto.Message
- func (b *CreateTable) Options() []func(Call) error
- func (b *CreateTable) Region() RegionInfo
- func (b *CreateTable) ResultChan() chan RPCResult
- func (b *CreateTable) SetRegion(region RegionInfo)
- func (b *CreateTable) Table() []byte
- func (ct *CreateTable) ToProto() proto.Message
- type DeleteTable
- func (b *DeleteTable) Context() context.Context
- func (b *DeleteTable) Key() []byte
- func (dt *DeleteTable) Name() string
- func (dt *DeleteTable) NewResponse() proto.Message
- func (b *DeleteTable) Options() []func(Call) error
- func (b *DeleteTable) Region() RegionInfo
- func (b *DeleteTable) ResultChan() chan RPCResult
- func (b *DeleteTable) SetRegion(region RegionInfo)
- func (b *DeleteTable) Table() []byte
- func (dt *DeleteTable) ToProto() proto.Message
- type DisableTable
- func (b *DisableTable) Context() context.Context
- func (b *DisableTable) Key() []byte
- func (dt *DisableTable) Name() string
- func (dt *DisableTable) NewResponse() proto.Message
- func (b *DisableTable) Options() []func(Call) error
- func (b *DisableTable) Region() RegionInfo
- func (b *DisableTable) ResultChan() chan RPCResult
- func (b *DisableTable) SetRegion(region RegionInfo)
- func (b *DisableTable) Table() []byte
- func (dt *DisableTable) ToProto() proto.Message
- type DurabilityType
- type EnableTable
- func (b *EnableTable) Context() context.Context
- func (b *EnableTable) Key() []byte
- func (et *EnableTable) Name() string
- func (et *EnableTable) NewResponse() proto.Message
- func (b *EnableTable) Options() []func(Call) error
- func (b *EnableTable) Region() RegionInfo
- func (b *EnableTable) ResultChan() chan RPCResult
- func (b *EnableTable) SetRegion(region RegionInfo)
- func (b *EnableTable) Table() []byte
- func (et *EnableTable) ToProto() proto.Message
- type Get
- func (b *Get) Context() context.Context
- func (g *Get) DeserializeCellBlocks(m proto.Message, b []byte) (uint32, error)
- func (g *Get) ExistsOnly()
- func (b *Get) Key() []byte
- func (g *Get) Name() string
- func (g *Get) NewResponse() proto.Message
- func (b *Get) Options() []func(Call) error
- func (b *Get) Region() RegionInfo
- func (b *Get) ResultChan() chan RPCResult
- func (b *Get) SetRegion(region RegionInfo)
- func (g *Get) SkipBatch() bool
- func (b *Get) Table() []byte
- func (g *Get) ToProto() proto.Message
- type GetProcedureState
- func (b *GetProcedureState) Context() context.Context
- func (b *GetProcedureState) Key() []byte
- func (ps *GetProcedureState) Name() string
- func (ps *GetProcedureState) NewResponse() proto.Message
- func (b *GetProcedureState) Options() []func(Call) error
- func (b *GetProcedureState) Region() RegionInfo
- func (b *GetProcedureState) ResultChan() chan RPCResult
- func (b *GetProcedureState) SetRegion(region RegionInfo)
- func (b *GetProcedureState) Table() []byte
- func (ps *GetProcedureState) ToProto() proto.Message
- type Mutate
- func NewApp(ctx context.Context, table, key []byte, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewAppStr(ctx context.Context, table, key string, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewDel(ctx context.Context, table, key []byte, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewDelStr(ctx context.Context, table, key string, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewInc(ctx context.Context, table, key []byte, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewIncSingle(ctx context.Context, table, key []byte, family, qualifier string, amount int64, ...) (*Mutate, error)
- func NewIncStr(ctx context.Context, table, key string, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewIncStrSingle(ctx context.Context, table, key, family, qualifier string, amount int64, ...) (*Mutate, error)
- func NewPut(ctx context.Context, table, key []byte, values map[string]map[string][]byte, ...) (*Mutate, error)
- func NewPutStr(ctx context.Context, table, key string, values map[string]map[string][]byte, ...) (*Mutate, error)
- func (b *Mutate) Context() context.Context
- func (m *Mutate) DeserializeCellBlocks(pm proto.Message, b []byte) (uint32, error)
- func (b *Mutate) Key() []byte
- func (m *Mutate) Name() string
- func (m *Mutate) NewResponse() proto.Message
- func (b *Mutate) Options() []func(Call) error
- func (b *Mutate) Region() RegionInfo
- func (b *Mutate) ResultChan() chan RPCResult
- func (b *Mutate) SetRegion(region RegionInfo)
- func (m *Mutate) SkipBatch() bool
- func (b *Mutate) Table() []byte
- func (m *Mutate) ToProto() proto.Message
- type RPCResult
- type RegionClient
- type RegionInfo
- type Result
- type Scan
- func NewScan(ctx context.Context, table []byte, options ...func(Call) error) (*Scan, error)
- func NewScanRange(ctx context.Context, table, startRow, stopRow []byte, ...) (*Scan, error)
- func NewScanRangeStr(ctx context.Context, table, startRow, stopRow string, ...) (*Scan, error)
- func NewScanStr(ctx context.Context, table string, options ...func(Call) error) (*Scan, error)
- func (s *Scan) AllowPartialResults() bool
- func (b *Scan) Context() context.Context
- func (s *Scan) DeserializeCellBlocks(m proto.Message, b []byte) (uint32, error)
- func (s *Scan) IsClosing() bool
- func (b *Scan) Key() []byte
- func (s *Scan) Name() string
- func (s *Scan) NewResponse() proto.Message
- func (s *Scan) NumberOfRows() uint32
- func (b *Scan) Options() []func(Call) error
- func (b *Scan) Region() RegionInfo
- func (b *Scan) ResultChan() chan RPCResult
- func (s *Scan) Reversed() bool
- func (b *Scan) SetRegion(region RegionInfo)
- func (s *Scan) StartRow() []byte
- func (s *Scan) StopRow() []byte
- func (s *Scan) String() string
- func (b *Scan) Table() []byte
- func (s *Scan) ToProto() proto.Message
- type Scanner
Constants ¶
const ( // DefaultMaxVersions defualt value for maximum versions to return for scan queries DefaultMaxVersions uint32 = 1 // MinTimestamp default value for minimum timestamp for scan queries MinTimestamp uint64 = 0 // MaxTimestamp default value for maximum timestamp for scan queries MaxTimestamp = math.MaxUint64 // DefaultMaxResultSize Maximum number of bytes fetched when calling a scanner's // next method. The default value is 2MB, which is good for 1ge networks. // With faster and/or high latency networks this value should be increased. DefaultMaxResultSize = 2097152 // DefaultNumberOfRows is default maximum number of rows fetched by scanner DefaultNumberOfRows = math.MaxInt32 // DefaultMaxResultsPerColumnFamily is the default max number of cells fetched // per column family for each row DefaultMaxResultsPerColumnFamily = math.MaxInt32 )
Variables ¶
var ( // ErrNotAStruct is returned by any of the *Ref functions when something // other than a struct is passed in to their data argument ErrNotAStruct = errors.New("data must be a struct") // ErrUnsupportedUints is returned when this message is serialized and uints // are unsupported on your platform (this will probably never happen) ErrUnsupportedUints = errors.New("uints are unsupported on your platform") // ErrUnsupportedInts is returned when this message is serialized and ints // are unsupported on your platform (this will probably never happen) ErrUnsupportedInts = errors.New("ints are unsupported on your platform") )
Functions ¶
func AllowPartialResults ¶
AllowPartialResults is an option for scan requests. This option should be provided if the client has really big rows and wants to avoid OOM errors on her side. With this option provided, Next() will return partial rows.
func CloseScanner ¶
CloseScanner is an option for scan requests. Closes scanner after the first result is returned. This is an internal option but could be useful if you know that your scan result fits into one response in order to save an extra request.
func DeleteOneVersion ¶
DeleteOneVersion is a delete option that can be passed in order to delete only one latest version of the specified qualifiers. Without timestamp specified, it will have no effect for delete specific column families request. If a Timestamp option is passed along, only the version at that timestamp will be removed for delete specific column families and/or qualifier request. This option cannot be used for delete entire row request.
func Durability ¶
func Durability(d DurabilityType) func(Call) error
Durability sets durability for mutation queries.
func MaxResultSize ¶
MaxResultSize is an option for scan requests. Maximum number of bytes fetched when calling a scanner's next method. MaxResultSize takes priority over NumberOfRows.
func MaxResultsPerColumnFamily ¶
MaxResultsPerColumnFamily is an option for Get or Scan requests that sets the maximum number of cells returned per column family in a row.
func MaxVersions ¶
MaxVersions is used as a parameter for request creation. Adds MaxVersions constraint to a request.
func NumberOfRows ¶
NumberOfRows is an option for scan requests. Specifies how many rows are fetched with each request to regionserver. Should be > 0, avoid extremely low values such as 1 because a request to regionserver will be made for every row.
func ResultOffset ¶
ResultOffset is a option for Scan or Get requests that sets the offset for cells within a column family.
func Reversed ¶
Reversed is a Scan-only option which allows you to scan in reverse key order To use it the startKey would be greater than the end key
func ScannerID ¶
ScannerID is an option for scan requests. This is an internal option to fetch the next set of results for an ongoing scan.
func SkipBatch ¶
SkipBatch is an option for batchable requests (Get and Mutate) to tell the client to skip batching and just send the request to Region Server right away.
func SplitKeys ¶
func SplitKeys(sk [][]byte) func(*CreateTable)
SplitKeys will return an option that will set the split keys for the created table
func TTL ¶
TTL sets a time-to-live for mutation queries. The value will be in millisecond resolution.
func TimeRange ¶
TimeRange is used as a parameter for request creation. Adds TimeRange constraint to a request. It will get values in range [from, to[ ('to' is exclusive).
func TimeRangeUint64 ¶
TimeRangeUint64 is used as a parameter for request creation. Adds TimeRange constraint to a request. from and to should be in milliseconds // It will get values in range [from, to[ ('to' is exclusive).
func Timestamp ¶
Timestamp sets timestamp for mutation queries. The time object passed will be rounded to a millisecond resolution, as by default, if no timestamp is provided, HBase sets it to current time in milliseconds. In order to have custom time precision, use TimestampUint64 call option for mutation requests and corresponding TimeRangeUint64 for retrieval requests.
func TimestampUint64 ¶
TimestampUint64 sets timestamp for mutation queries.
Types ¶
type Batchable ¶
type Batchable interface { // SkipBatch returns true if a call shouldn't be batched into MultiRequest and // should be sent right away. SkipBatch() bool // contains filtered or unexported methods }
Batchable interface should be implemented by calls that can be batched into MultiRequest
type Call ¶
type Call interface { Table() []byte Name() string Key() []byte Region() RegionInfo SetRegion(region RegionInfo) ToProto() proto.Message // Returns a newly created (default-state) protobuf in which to store the // response of this call. NewResponse() proto.Message ResultChan() chan RPCResult Context() context.Context }
Call represents an HBase RPC call.
type Cell ¶
Cell is the smallest level of granularity in returned results. Represents a single cell in HBase (a row will have one cell for every qualifier).
type CheckAndPut ¶
type CheckAndPut struct { *Mutate // contains filtered or unexported fields }
CheckAndPut performs a provided Put operation if the value specified by condition equals to the one set in the HBase.
func NewCheckAndPut ¶
func NewCheckAndPut(put *Mutate, family string, qualifier string, expectedValue []byte) (*CheckAndPut, error)
NewCheckAndPut creates a new CheckAndPut request that will compare provided expectedValue with the on in HBase located at put's row and provided family:qualifier, and if they are equal, perform the provided put request on the row
func (CheckAndPut) Region ¶
func (b CheckAndPut) Region() RegionInfo
func (CheckAndPut) ResultChan ¶
func (b CheckAndPut) ResultChan() chan RPCResult
func (CheckAndPut) SetRegion ¶
func (b CheckAndPut) SetRegion(region RegionInfo)
func (*CheckAndPut) ToProto ¶
func (cp *CheckAndPut) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type ClusterStatus ¶
type ClusterStatus struct {
// contains filtered or unexported fields
}
ClusterStatus to represent a cluster status request
func NewClusterStatus ¶
func NewClusterStatus() *ClusterStatus
NewClusterStatus creates a new ClusterStatusStruct with default fields
func (*ClusterStatus) Name ¶
func (c *ClusterStatus) Name() string
Name returns the name of the rpc function
func (*ClusterStatus) NewResponse ¶
func (c *ClusterStatus) NewResponse() proto.Message
NewResponse returns the empty protobuf response
func (*ClusterStatus) Region ¶
func (b *ClusterStatus) Region() RegionInfo
func (*ClusterStatus) ResultChan ¶
func (b *ClusterStatus) ResultChan() chan RPCResult
func (*ClusterStatus) SetRegion ¶
func (b *ClusterStatus) SetRegion(region RegionInfo)
func (*ClusterStatus) ToProto ¶
func (c *ClusterStatus) ToProto() proto.Message
ToProto returns the Protobuf message to be sent
type CreateTable ¶
type CreateTable struct {
// contains filtered or unexported fields
}
CreateTable represents a CreateTable HBase call
func NewCreateTable ¶
func NewCreateTable(ctx context.Context, table []byte, families map[string]map[string]string, options ...func(*CreateTable)) *CreateTable
NewCreateTable creates a new CreateTable request that will create the given table in HBase. 'families' is a map of column family name to its attributes. For use by the admin client.
func (*CreateTable) Name ¶
func (ct *CreateTable) Name() string
Name returns the name of this RPC call.
func (*CreateTable) NewResponse ¶
func (ct *CreateTable) NewResponse() proto.Message
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*CreateTable) Region ¶
func (b *CreateTable) Region() RegionInfo
func (*CreateTable) ResultChan ¶
func (b *CreateTable) ResultChan() chan RPCResult
func (*CreateTable) SetRegion ¶
func (b *CreateTable) SetRegion(region RegionInfo)
func (*CreateTable) ToProto ¶
func (ct *CreateTable) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type DeleteTable ¶
type DeleteTable struct {
// contains filtered or unexported fields
}
DeleteTable represents a DeleteTable HBase call
func NewDeleteTable ¶
func NewDeleteTable(ctx context.Context, table []byte) *DeleteTable
NewDeleteTable creates a new DeleteTable request that will delete the given table in HBase. For use by the admin client.
func (*DeleteTable) Name ¶
func (dt *DeleteTable) Name() string
Name returns the name of this RPC call.
func (*DeleteTable) NewResponse ¶
func (dt *DeleteTable) NewResponse() proto.Message
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*DeleteTable) Region ¶
func (b *DeleteTable) Region() RegionInfo
func (*DeleteTable) ResultChan ¶
func (b *DeleteTable) ResultChan() chan RPCResult
func (*DeleteTable) SetRegion ¶
func (b *DeleteTable) SetRegion(region RegionInfo)
func (*DeleteTable) ToProto ¶
func (dt *DeleteTable) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type DisableTable ¶
type DisableTable struct {
// contains filtered or unexported fields
}
DisableTable represents a DisableTable HBase call
func NewDisableTable ¶
func NewDisableTable(ctx context.Context, table []byte) *DisableTable
NewDisableTable creates a new DisableTable request that will disable the given table in HBase. For use by the admin client.
func (*DisableTable) Name ¶
func (dt *DisableTable) Name() string
Name returns the name of this RPC call.
func (*DisableTable) NewResponse ¶
func (dt *DisableTable) NewResponse() proto.Message
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*DisableTable) Region ¶
func (b *DisableTable) Region() RegionInfo
func (*DisableTable) ResultChan ¶
func (b *DisableTable) ResultChan() chan RPCResult
func (*DisableTable) SetRegion ¶
func (b *DisableTable) SetRegion(region RegionInfo)
func (*DisableTable) ToProto ¶
func (dt *DisableTable) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type DurabilityType ¶
type DurabilityType int32
DurabilityType is used to set durability for Durability option
const ( // UseDefault is USER_DEFAULT UseDefault DurabilityType = iota // SkipWal is SKIP_WAL SkipWal // AsyncWal is ASYNC_WAL AsyncWal // SyncWal is SYNC_WAL SyncWal // FsyncWal is FSYNC_WAL FsyncWal )
type EnableTable ¶
type EnableTable struct {
// contains filtered or unexported fields
}
EnableTable represents a EnableTable HBase call
func NewEnableTable ¶
func NewEnableTable(ctx context.Context, table []byte) *EnableTable
NewEnableTable creates a new EnableTable request that will enable the given table in HBase. For use by the admin client.
func (*EnableTable) Name ¶
func (et *EnableTable) Name() string
Name returns the name of this RPC call.
func (*EnableTable) NewResponse ¶
func (et *EnableTable) NewResponse() proto.Message
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*EnableTable) Region ¶
func (b *EnableTable) Region() RegionInfo
func (*EnableTable) ResultChan ¶
func (b *EnableTable) ResultChan() chan RPCResult
func (*EnableTable) SetRegion ¶
func (b *EnableTable) SetRegion(region RegionInfo)
func (*EnableTable) ToProto ¶
func (et *EnableTable) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type Get ¶
type Get struct {
// contains filtered or unexported fields
}
Get represents a Get HBase call.
func (*Get) DeserializeCellBlocks ¶
DeserializeCellBlocks deserializes get result from cell blocks
func (*Get) ExistsOnly ¶
func (g *Get) ExistsOnly()
ExistsOnly makes this Get request not return any KeyValue, merely whether or not the given row key exists in the table.
func (*Get) NewResponse ¶
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*Get) Region ¶
func (b *Get) Region() RegionInfo
func (*Get) ResultChan ¶
func (b *Get) ResultChan() chan RPCResult
func (*Get) SetRegion ¶
func (b *Get) SetRegion(region RegionInfo)
type GetProcedureState ¶
type GetProcedureState struct {
// contains filtered or unexported fields
}
GetProcedureState represents a call to HBase to check status of a procedure
func NewGetProcedureState ¶
func NewGetProcedureState(ctx context.Context, procID uint64) *GetProcedureState
NewGetProcedureState creates a new GetProcedureState request. For use by the admin client.
func (*GetProcedureState) Name ¶
func (ps *GetProcedureState) Name() string
Name returns the name of this RPC call.
func (*GetProcedureState) NewResponse ¶
func (ps *GetProcedureState) NewResponse() proto.Message
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*GetProcedureState) Region ¶
func (b *GetProcedureState) Region() RegionInfo
func (*GetProcedureState) ResultChan ¶
func (b *GetProcedureState) ResultChan() chan RPCResult
func (*GetProcedureState) SetRegion ¶
func (b *GetProcedureState) SetRegion(region RegionInfo)
func (*GetProcedureState) ToProto ¶
func (ps *GetProcedureState) ToProto() proto.Message
ToProto converts the RPC into a protobuf message
type Mutate ¶
type Mutate struct {
// contains filtered or unexported fields
}
Mutate represents a mutation on HBase.
func NewApp ¶
func NewApp(ctx context.Context, table, key []byte, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewApp creates a new Mutation request to append the given family-column-values into the existing cells in HBase (or create them if needed), in given row key of the given table.
func NewAppStr ¶
func NewAppStr(ctx context.Context, table, key string, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewAppStr is just like NewApp but takes table and key as strings.
func NewDel ¶
func NewDel(ctx context.Context, table, key []byte, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewDel is used to perform Delete operations on a single row. To delete entire row, values should be nil.
To delete specific families, qualifiers map should be nil:
map[string]map[string][]byte{ "cf1": nil, "cf2": nil, }
To delete specific qualifiers:
map[string]map[string][]byte{ "cf": map[string][]byte{ "q1": nil, "q2": nil, }, }
To delete all versions before and at a timestamp, pass hrpc.Timestamp() option. By default all versions will be removed.
To delete only a specific version at a timestamp, pass hrpc.DeleteOneVersion() option along with a timestamp. For delete specific qualifiers request, if timestamp is not passed, only the latest version will be removed. For delete specific families request, the timestamp should be passed or it will have no effect as it's an expensive operation to perform.
func NewDelStr ¶
func NewDelStr(ctx context.Context, table, key string, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewDelStr is just like NewDel but takes table and key as strings.
func NewInc ¶
func NewInc(ctx context.Context, table, key []byte, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewInc creates a new Mutation request that will increment the given values in HBase under the given table and key.
func NewIncSingle ¶
func NewIncSingle(ctx context.Context, table, key []byte, family, qualifier string, amount int64, options ...func(Call) error) (*Mutate, error)
NewIncSingle creates a new Mutation request that will increment the given value by amount in HBase under the given table, key, family and qualifier.
func NewIncStr ¶
func NewIncStr(ctx context.Context, table, key string, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewIncStr is just like NewInc but takes table and key as strings.
func NewIncStrSingle ¶
func NewIncStrSingle(ctx context.Context, table, key, family, qualifier string, amount int64, options ...func(Call) error) (*Mutate, error)
NewIncStrSingle is just like NewIncSingle but takes table and key as strings.
func NewPut ¶
func NewPut(ctx context.Context, table, key []byte, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewPut creates a new Mutation request to insert the given family-column-values in the given row key of the given table.
func NewPutStr ¶
func NewPutStr(ctx context.Context, table, key string, values map[string]map[string][]byte, options ...func(Call) error) (*Mutate, error)
NewPutStr is just like NewPut but takes table and key as strings.
func (*Mutate) DeserializeCellBlocks ¶
DeserializeCellBlocks deserializes mutate result from cell blocks
func (*Mutate) NewResponse ¶
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*Mutate) Region ¶
func (b *Mutate) Region() RegionInfo
func (*Mutate) ResultChan ¶
func (b *Mutate) ResultChan() chan RPCResult
func (*Mutate) SetRegion ¶
func (b *Mutate) SetRegion(region RegionInfo)
type RPCResult ¶
RPCResult is struct that will contain both the resulting message from an RPC call, and any errors that may have occurred related to making the RPC call.
type RegionClient ¶
RegionClient represents HBase region client.
type RegionInfo ¶
type RegionInfo interface { AvailabilityChan() <-chan struct{} MarkAvailable() MarkDead() Context() context.Context String() string ID() uint64 Name() []byte StartKey() []byte StopKey() []byte Namespace() []byte Table() []byte SetClient(RegionClient) Client() RegionClient }
RegionInfo represents HBase region.
type Result ¶
type Result struct { Cells []*Cell Stale bool Partial bool // Exists is only set if existance_only was set in the request query. Exists *bool }
Result holds a slice of Cells as well as miscellaneous information about the response.
func ToLocalResult ¶
ToLocalResult takes a protobuf Result type and converts it to our own Result type in constant time.
type Scan ¶
type Scan struct {
// contains filtered or unexported fields
}
Scan represents a scanner on an HBase table.
func NewScanRange ¶
func NewScanRange(ctx context.Context, table, startRow, stopRow []byte, options ...func(Call) error) (*Scan, error)
NewScanRange creates a scanner for the given table and key range. The range is half-open, i.e. [startRow; stopRow[ -- stopRow is not included in the range.
func NewScanRangeStr ¶
func NewScanRangeStr(ctx context.Context, table, startRow, stopRow string, options ...func(Call) error) (*Scan, error)
NewScanRangeStr creates a scanner for the given table and key range. The range is half-open, i.e. [startRow; stopRow[ -- stopRow is not included in the range.
func NewScanStr ¶
NewScanStr creates a scanner for the given table.
func (*Scan) AllowPartialResults ¶
AllowPartialResults returns true if client handles partials.
func (*Scan) DeserializeCellBlocks ¶
DeserializeCellBlocks deserializes scan results from cell blocks
func (*Scan) NewResponse ¶
NewResponse creates an empty protobuf message to read the response of this RPC.
func (*Scan) NumberOfRows ¶
NumberOfRows returns how many rows this scan fetches from regionserver in a single response.
func (*Scan) Region ¶
func (b *Scan) Region() RegionInfo
func (*Scan) ResultChan ¶
func (b *Scan) ResultChan() chan RPCResult
func (*Scan) SetRegion ¶
func (b *Scan) SetRegion(region RegionInfo)
type Scanner ¶
type Scanner interface { // Next returns a row at a time. // Once all rows are returned, subsequent calls will return io.EOF error. // // In case of an error, only the first call to Next() will return partial // result (could be not a complete row) and the actual error, // the subsequent calls will return io.EOF error. Next() (*Result, error) // Close should be called if it is desired to stop scanning before getting all of results. // If you call Next() after calling Close() you might still get buffered results. // Othwerwise, in case all results have been delivered or in case of an error, the Scanner // will be closed automatically. Close() error }
Scanner is used to read data sequentially from HBase. Scanner will be automatically closed if there's no more data to read, otherwise Close method should be called.