Popularity
4.4
Growing
Activity
5.8
-
38
16
21

Programming language: Go
Latest version: v1.3.0

go-pilosa alternatives and similar packages

Based on the "NoSQL Databases" category

Do you think we are missing an alternative of go-pilosa or a related project?

Add another 'NoSQL Databases' Package

README

Go Client for Pilosa

Go client for Pilosa high performance distributed index.

What's New?

See: [CHANGELOG](CHANGELOG.md)

Requirements

  • Go 1.12 and higher.

Install

Download the library in your GOPATH using:

go get github.com/pilosa/go-pilosa

After that, you can import the library in your code using:

import "github.com/pilosa/go-pilosa"

Usage

Quick overview

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

package main

import (
    "fmt"

    "github.com/pilosa/go-pilosa"
)

func main() {
    var err error

    // Create the default client
    client := pilosa.DefaultClient()

    // Retrieve the schema
    schema, err := client.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 = client.SyncSchema(schema)

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

    // Send a Row query. If err is non-nil, response will be nil.
    response, err = client.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 = client.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](docs/data-model-queries.md)

Executing Queries

See: [Server Interaction](docs/server-interaction.md)

Importing and Exporting Data

See: [Importing and Exporting Data](docs/imports-exports.md)

Other Documentation

  • [Tracing](docs/tracing.md)

Contributing

See: [CONTRIBUTING](CONTRIBUTING.md)

License

See: [LICENSE](LICENSE)


*Note that all licence references and agreements mentioned in the go-pilosa README section above are relevant to that project's source code only.