No description
Find a file
Ben Johnson 5d79555d3e add backup/restore to pilosactl
This commit adds two commands:

    pilosactl backup
    pilosactl restore

The `Client` implementations have also been added to support these
commands:

    func (c *Client) BackupTo(w io.Writer, db, frame string) error
    func (c *Client) RestoreFrom(r io.Reader, db, frame string) error

Backups occur on a per-frame basis and all slices from the cluster
are packed into a single tar file. The backup tool attempts to
read from owner nodes in a random order and will retry against
the next owner if one fails.

During restore, the slices are restored to all owner nodes. This
allows users to backup a frame from one cluster and restore it
to a different one -- even if the topology of the new cluster is
different.
2016-02-29 08:38:24 -07:00
cmd add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
Godeps add cache persistence 2016-02-13 10:02:53 -07:00
internal generated using go generate 2016-02-25 17:15:40 -06:00
pql add Range() support 2016-02-23 14:53:03 -07:00
roaring align more with go idioms 2016-02-24 15:02:24 -06:00
.gitignore Update import path 2015-08-05 22:50:38 -06:00
attr.go add Range() support 2016-02-23 14:53:03 -07:00
attr_test.go add Range() support 2016-02-23 14:53:03 -07:00
bitmap.go add bitmap and profile attribute support 2016-02-01 08:44:33 -07:00
cache.go add cache persistence 2016-02-13 10:02:53 -07:00
client.go add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
client_test.go add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
cluster.go cluster-wide import 2016-01-05 20:09:17 -07:00
cluster_test.go refactor 2015-12-02 15:34:49 -07:00
db.go refactor attribute stores 2016-02-16 13:41:37 -07:00
db_test.go refactor attribute stores 2016-02-16 13:41:37 -07:00
executor.go merged 2016-02-24 14:19:44 -06:00
executor_test.go add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
fragment.go merge 2016-02-26 12:13:03 -06:00
fragment_test.go add backup/restore endpoints 2016-02-25 17:29:45 -07:00
frame.go add Range() support 2016-02-23 14:53:03 -07:00
frame_test.go refactor attribute stores 2016-02-16 13:41:37 -07:00
handler.go add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
handler_test.go add backup/restore endpoints 2016-02-25 17:29:45 -07:00
index.go issue 41 2016-02-25 15:43:52 -06:00
index_test.go bulk importer 2016-01-02 15:10:17 -07:00
Makefile godep 2015-09-03 13:52:45 -06:00
NOTES refactor 2015-12-02 15:34:49 -07:00
pilosa.go add backup/restore to pilosactl 2016-02-29 08:38:24 -07:00
popcnt.go added benchmark for assembly vs native popcount 2015-12-22 09:34:26 -06:00
popcnt_amd64.s added benchmark for assembly vs native popcount 2015-12-22 09:34:26 -06:00
popcnt_asm.go added benchmark for assembly vs native popcount 2015-12-22 09:34:26 -06:00
popcnt_generic.go added benchmark for assembly vs native popcount 2015-12-22 09:34:26 -06:00
popcnt_test.go added benchmark for assembly vs native popcount 2015-12-22 09:34:26 -06:00
README.md refactor 2015-12-02 15:34:49 -07:00
time.go add Range() support 2016-02-23 14:53:03 -07:00
time_test.go add Range() support 2016-02-23 14:53:03 -07:00

pilosa

Pilosa is a bitmap index database.

Getting Started

Pilosa uses the new Go 1.5 vendoring experiment. To enable this, you'll need to export an environment variable in your .profile:

export GO15VENDOREXPERIMENT=1

Then you can download the source by running go get:

$ go get github.com/umbel/pilosa

Now you can install the pilosa binary:

$ go install github.com/umbel/pilosa/...

Now run pilosa with the default configuration:

pilosa

Development

Updating dependencies

To update dependencies, you'll need to install godep:

$ go get -u github.com/tools/godep

Then save the dependencies in your project:

$ godep save ./...

Make sure you have set the GO15VENDOREXPERIMENT environment variable!