An engine to enable easy data analytics. At its base it is a task processing graph exposed through a REST api. At a higher level there is a type system over different types of data which encompasses all data and tasks in the engine. The tasks called transforms are made of a JSON description tied with some execution context. Transforms are chained together and validated according to constraints in the transform and type constraints. Tasks and data can be searched through using elasticsearch. Task execution is handled through Luigi.
ProtoML is still under heavy development stay tuned for our first full release!
- Make sure Luigi's
luigid
and elasticsearch'selasticsearch
commands can be found on the system path - Setup a go workspace
- Then run the following commands to install all needed packages:
go get https://github.com/mattbaird/elastigo
go get https://github.com/ant0ine/go-json-rest
go get https://github.com/ProtoML/ProtoML
go get https://github.com/ProtoML/ProtoML-persist
go get https://github.com/ProtoML/ProtoML-transforms
go get https://github.com/ProtoML/ProtoML-dashboard
- Be sure to set your
$PROTOMLDIR
enviroment variable to$GOPATH/src/github.com/ProtoML
- Make sure
$GOPATH/bin
is on the system path
Create a directory with a protoml configuration file ProtoML.json
. See here for an example.
Run ProtoML
in the directory.
Run ProtoMLDashboard
.