A Go Library for interacting with the Apache Pinot Controller
Explore the docs »
Report Bug
·
Request Feature
Table of Contents
A library for interacting with Apache Pinot Controllers via the Controller REST API.
go get github.com/azaurus1/go-pinot-api
user := pinotModel.User{
Username: "user",
Password: "password",
Component: "BROKER",
Role: "admin",
}
userBytes, err := json.Marshal(user)
if err != nil {
log.Panic(err)
}
// Create User
createResp, err := client.CreateUser(userBytes)
if err != nil {
log.Panic(err)
}
f, err := os.Open(schemaFilePath)
if err != nil {
log.Panic(err)
}
defer f.Close()
var schema pinotModel.Schema
err = json.NewDecoder(f).Decode(schema)
if err != nil {
log.Panic(err)
}
_, err = client.CreateSchema(schema)
if err != nil {
log.Panic(err)
}
For more examples, please refer to the Documentation
- User Management
- Schema Management
- Table Management
- Segment Management
- Tenant Management
- Cluster Management
- Instance Management
- Task Management
See the open issues for a full list of proposed features (and known issues).
See the Contributing Guide
Distributed under the MIT License. See LICENSE
for more information.
Liam Aikin - liamaikin@gmail.com
Project Link: https://github.com/azaurus1/go-pinot-api
- Many thanks to Hagen H (Hendoxc)