You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
51 lines
1.1 KiB
51 lines
1.1 KiB
# database/hbase
|
|
|
|
## 说明
|
|
Hbase Client,进行封装加入了链路追踪和统计。
|
|
|
|
## 配置
|
|
需要指定hbase集群的zookeeper地址。
|
|
```
|
|
config := &hbase.Config{Zookeeper: &hbase.ZKConfig{Addrs: []string{"localhost"}}}
|
|
client := hbase.NewClient(config)
|
|
```
|
|
|
|
## 使用方式
|
|
```
|
|
package main
|
|
|
|
import (
|
|
"context"
|
|
"fmt"
|
|
|
|
"github.com/go-kratos/kratos/pkg/database/hbase"
|
|
)
|
|
|
|
func main() {
|
|
config := &hbase.Config{Zookeeper: &hbase.ZKConfig{Addrs: []string{"localhost"}}}
|
|
client := hbase.NewClient(config)
|
|
|
|
//
|
|
values := map[string]map[string][]byte{"name": {"firstname": []byte("hello"), "lastname": []byte("world")}}
|
|
ctx := context.Background()
|
|
|
|
// 写入信息
|
|
// table: user
|
|
// rowkey: user1
|
|
// values["family"] = columns
|
|
_, err := client.PutStr(ctx, "user", "user1", values)
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
|
|
// 读取信息
|
|
// table: user
|
|
// rowkey: user1
|
|
result, err := client.GetStr(ctx, "user", "user1")
|
|
if err != nil {
|
|
panic(err)
|
|
}
|
|
fmt.Printf("%v", result)
|
|
}
|
|
```
|
|
|
|
|