Categorygithub.com/cloudflare/gohbase
modulepackage
0.0.0-20241018155309-bd35f2484bf9
Repository: https://github.com/cloudflare/gohbase.git
Documentation: pkg.go.dev

# README

Golang HBase client Build Status codecov.io GoDoc

This is a pure-Go client for HBase.

Current status: prototype.

Supported Versions

HBase >= 1.0

Installation

go get github.com/tsuna/gohbase

Example Usage

Create a client

client := gohbase.NewClient("localhost")

Insert a cell

// Values maps a ColumnFamily -> Qualifiers -> Values.
values := map[string]map[string][]byte{"cf": map[string][]byte{"a": []byte{0}}}
putRequest, err := hrpc.NewPutStr(context.Background(), "table", "key", values)
rsp, err := client.Put(putRequest)

Get an entire row

getRequest, err := hrpc.NewGetStr(context.Background(), "table", "row")
getRsp, err := client.Get(getRequest)

Get a specific cell

// Perform a get for the cell with key "15", column family "cf" and qualifier "a"
family := map[string][]string{"cf": []string{"a"}}
getRequest, err := hrpc.NewGetStr(context.Background(), "table", "15",
    hrpc.Families(family))
getRsp, err := client.Get(getRequest)

Get a specific cell with a filter

pFilter := filter.NewKeyOnlyFilter(true)
family := map[string][]string{"cf": []string{"a"}}
getRequest, err := hrpc.NewGetStr(context.Background(), "table", "15",
    hrpc.Families(family), hrpc.Filters(pFilter))
getRsp, err := client.Get(getRequest)

Scan with a filter

pFilter := filter.NewPrefixFilter([]byte("7"))
scanRequest, err := hrpc.NewScanStr(context.Background(), "table",
		hrpc.Filters(pFilter))
scanRsp, err := client.Scan(scanRequest)

Contributing

Any help would be appreciated. Please use GerritHub to send changes for review, instead of GitHub pull requests. Please sign the Contributor License Agreement when you send your first change for review.

License

Copyright © 2015 The GoHBase Authors. All rights reserved. Use of this source code is governed by the Apache License 2.0 that can be found in the COPYING file.

# Packages

No description provided by the author
No description provided by the author
Package region contains data structures to represent HBase regions.
No description provided by the author
Package zk encapsulates our interactions with ZooKeeper.

# Functions

FlushInterval will return an option that will set the timeout for flushing the RPC queues used in a given client.
NewAdminClient creates an admin HBase client.
NewClient creates a new HBase client.
RpcQueueSize will return an option that will set the size of the RPC queues used in a given client.
ZKPath will return an option that will set the ZooKeeper resources to reference for the HBase master and meta region server.

# Variables

ErrDeadline is returned when the deadline of a request has been exceeded.
ErrRegionUnavailable is returned when sending rpc to a region that is unavailable.
TableNotFound is returned when attempting to access a table that doesn't exist on this cluster.

# Interfaces

AdminClient to perform admistrative operations with HMaster.
Client a regular HBase client.

# Type aliases

No description provided by the author