mirror of
https://github.com/dolthub/dolt.git
synced 2026-02-10 03:09:35 -06:00
44bb16385c5c4f4b997b2144aa4d0bf0bc9a7ecc
To facilitate validation, DataStore needs to remember which chunks it's seen, what their refs are, and the Noms type of the Values they encode. Then, DataStore can look at each Value that comes in via WriteValue() and validate it by checking every embedded ref (if any) against this cache. Towards #654
Noms
Noms is a content-addressable, append-only, peer-to-peer, structured data store.
In other words, noms is git for data.
This repository contains two reference implementations of the noms protocol - one in Go, and one in JavaScript. It also includes a number of tools and sample applications.
Prerequisites
- Go 1.4+
- Python 2.7+ (Note: Python 2.x only, not Python 3.x)
- Node.js 5.3+
Set environment variables
- Ensure
$GOPATHis set correctly - Set
GO15VENDOREXPERIMENT=1in your environment - all our code requires this
Get the code
go get -u -t github.com/attic-labs/noms/...
Build
go install `go list ./... | grep -v /vendor/`
go test `go list ./... | grep -v /vendor/`
Run
cd "$GOPATH/src/github.com/attic-labs/noms/clients/counter"
go build
./counter -ldb=/tmp/foo -ds=foo
./counter -ldb=/tmp/foo -ds=foo
./counter -ldb=/tmp/foo -ds=foo
What next?
- Learn the core tools:
server,splore,shove,csv import/export,json_importer,xml_importer - Run sample apps:
sfcrime - NomDL reference (TODO)
- Go SDK reference (TODO)
- JavaScript SDK reference (TODO)
Recommended Chrome extensions
- Hides generated (Go) files from GitHub pull requests: GitHub PR gen hider.
Description
Releases
127
Languages
Go
84.1%
Shell
15%
JavaScript
0.3%
Java
0.1%
Python
0.1%