featurebase/client
Travis Turner 7ccc845aac
Change Ttl to TTL (#2038)
* Change Ttl to TTL

Following go convention, acronyms should have a consistent case.
See
[Initialisms](https://github.com/golang/go/wiki/CodeReviewComments#initialisms)

This commit changes some public-facing methods, so any code importing
this package and using these methods will need to be updated.

* rewrite Ttl -> TTL

Co-authored-by: reesporte <reesedporter@gmail.com>
2022-04-27 11:20:39 -05:00
..
csv Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
docs remove attributes 2021-05-14 10:28:08 -04:00
egpool Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
batch.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
batch_test.go remove unused stuff and fix a bunch of random staticcheck issues 2022-02-07 15:10:10 -06:00
client.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
client_it_test.go client side retry ingestAPI requests on primary host 2022-03-10 10:22:13 -06:00
client_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
cluster.go client side retry ingestAPI requests on primary host 2022-03-10 10:22:13 -06:00
cluster_test.go client side retry ingestAPI requests on primary host 2022-03-10 10:22:13 -06:00
doc.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
error.go client side retry ingestAPI requests on primary host 2022-03-10 10:22:13 -06:00
ingest_api_batch.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
ingest_api_batch_test.go client side retry ingestAPI requests on primary host 2022-03-10 10:22:13 -06:00
logimport.go add copyright notice back in 2021-12-10 11:01:04 -06:00
logimport_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
metrics.go add copyright notice back in 2021-12-10 11:01:04 -06:00
orm.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
orm_test.go Change Ttl to TTL (#2038) 2022-04-27 11:20:39 -05:00
README.md remove trailing spaces en masse (#2024) 2022-04-18 09:31:35 -05:00
record.go add copyright notice back in 2021-12-10 11:01:04 -06:00
record_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
response.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
response_test.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
shardnodes.go Upgrade go.mod to featurebase/v3 2022-01-21 10:57:05 -07:00
tracer.go add copyright notice back in 2021-12-10 11:01:04 -06:00
validate.go add copyright notice back in 2021-12-10 11:01:04 -06:00
validate_test.go add copyright notice back in 2021-12-10 11:01:04 -06:00
version.go add copyright notice back in 2021-12-10 11:01:04 -06:00

Go Client for Pilosa

Go client for Pilosa high performance distributed index.

Usage

If you have the pilosa repo in your GOPATH, you can import the library in your code using:

import "github.com/pilosa/pilosa/v2/client"

Quick overview

Assuming Pilosa server is running at localhost:10101 (the default):

package main

import (
	"fmt"

	"github.com/pilosa/pilosa/v2/client"
)

func main() {
	// Create the default client
	cli := client.DefaultClient()

	// Retrieve the schema
	schema, err := cli.Schema()

	// Create an Index object
	myindex := schema.Index("myindex")

	// Create a Field object
	myfield := myindex.Field("myfield")

	// make sure the index and the field exists on the server
	err := cli.SyncSchema(schema)

	// Send a Set query. If err is non-nil, response will be nil.
	response, err := cli.Query(myfield.Set(5, 42))

	// Send a Row query. If err is non-nil, response will be nil.
	response, err = cli.Query(myfield.Row(5))

	// Get the result
	result := response.Result()
	// Act on the result
	if result != nil {
		columns := result.Row().Columns
		fmt.Println("Got columns: ", columns)
	}

	// You can batch queries to improve throughput
	response, err = cli.Query(myindex.BatchQuery(
		myfield.Row(5),
		myfield.Row(10)))
	if err != nil {
		fmt.Println(err)
	}

	for _, result := range response.Results() {
		// Act on the result
		fmt.Println(result.Row().Columns)
	}
}

Documentation

Data Model and Queries

See: Data Model and Queries

Executing Queries

See: Server Interaction

Other Documentation