Go Reference
Tigris provides an easy-to-use and intuitive interface for Go. Setting up the database is instantaneous, as well - no need for tedious configuration. You define the data model as part of the application code, which then drives the database infrastructure without you having to configure and provision database resources.
1. Install package
go get -u github.com/tigrisdata/tigris-client-go@latest
2. Define data models
type Reviews struct {
Author string
Ratings float64
}
type Catalog struct {
Id int `tigris:"primary_key,autoGenerate"`
Name string
Price float64
Brand string
Labels string
Popularity int
}
cfg := &tigris.Config{
URL: "localhost:8081",
Project: "your-tigris-project-name",
}
client, err := tigris.NewClient(ctx, cfg)
db, err := tigris.OpenDatabase(ctx, cfg, &User{}, &Product{}, &Order{})
3. Persist data
_, err := catalogs.Insert(ctx,
&Catalog{Name: "fiona handbag", Price: 99.9, Brand: "michael kors", Labels: "purses", Popularity: 8})
if err != nil {
// handle error
}
4. Query data
product, err := catalogs.ReadOne(ctx, filter.Eq("Brand", "adidas"))
if err != nil {
panic(err)
}
fmt.Println(product)
5. Search data
request := search.NewRequestBuilder().WithQuery("running").Build()
it, err := catalogs.Search(ctx, request)
if err != nil {
// handle error
}
defer it.Close()
var result search.Result[Catalog]
for it.Next(&result) {
fmt.Printf("%+v\n", result)
}
if it.Err() != nil {
// handle streaming error
}