Sign inSign up

fasthall/gochariots

By fasthall

•Updated over 8 years ago

Chariots shared log implemented in go

Image
0

10K+

fasthall/gochariots repository overview

⁠gochariots

Scalable shared log Chariots implemented in Go. For the system details, please refer to the EDBT paper: Chariots : A Scalable Shared Log for Data Management in Multi-Datacenter Cloud Environments⁠

⁠Using Docker

If you are seeing this page on Docker repository page, please see this page for details⁠.

⁠Quickstart

We can use Docker Compose to run a local shared log, or Docker Swarm to run a cluster on multiple hosts. Please see this document⁠ for detail.

⁠Appending record

To append to the shared log, send POST request to http://localhost:8080/record⁠. The payload needs to be in JSON format. See post_example.sh⁠ and example.json⁠.

⁠Issues (TODO)

When a component of any stage stops working and the controller couldn't connect to it, the controller should prompt a warning message rather than just panic.

⁠Design discussion

  • Currently sender(propogation) is bundled with maintainer. This eliminate the communication between sender and maintainer, but can't be scaled. If seperate them, sender can be scaled independently, but require extra communication.
  • Does token need to carry all records with unsatisfied dependencies? Currently it does that.

Tag summary

Content type

Image

Digest

Size

369.4 MB

Last updated

over 8 years ago

docker pull fasthall/gochariots