Git Product home page Git Product logo

archai's People

Contributors

scoiatael avatar

Stargazers

 avatar  avatar

Watchers

 avatar

archai's Issues

HTTP writer interface

POST /event. Should support:

  • required stream parameter,
  • required event parameter,

Cassandra schema

Check for keyspace, create as needed. Should be read from configuration.
Check if tables in Cassandra are migrated on start, keep track of migrations, migrate to latest if needed.
Initial schema should include two tables: one for migrations, 2nd for events. Event table could looks as follows:

 CREATE TABLE IF NOT EXISTS events (
    id TIMEUUID,
    blob BLOB,
    stream VARCHAR,
    meta MAP<TEXT, TEXT>,
    PRIMARY KEY (stream, id)
  )

HTTP reader interface

GET /events. Should support:

  • required stream parameter,
  • optional cursor parameter (defaults to beginning),
  • optional limit parameter (defaults to 100),
  • custom port (should be able to run both writer and reader on same port),
  • should validate parameters, return 400 with JSON-encoded error.

Telemetry

Should be optional, set via configuration file.
For metrics: initially could support Graphite, or DataDog.
For logs, should support logging to stdout, or syslog.

CI integration

Some sort of unit-test runner, along with linter. Via CircleCI/Travis/other free-for-open-projects solution. Should test with live Cassandra (requires support from CI service).

Configuration

Should read configuration from commandline, and have option for reading it from custom file, or directory. Much like Consul, Nomad.

CD integration

Deploy this project to some private VPS and make sure it's running. Most likely should re-deploy on each release. Releases can be built with CircleCI/Travis.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.