Giter Club home page Giter Club logo

serengeti's Introduction

Serengeti - The Autonomous Distributed Database

Java CI with Maven

Serengeti Dashboard

This software application proves the potential for an autonomous distributed database system.

Serengeti runs on any machine through the JVM and requires zero configuration or management to setup or maintain.

Simply start Serengeti on any number of machines on a controlled network where each machine is a member of the same subnet. Each instance will automatically connect to each other and create a distributed database.

Data will be replicated across the network and when a new node joins, it will automatically be given the existing databases and tables layout along with all replication information.

If one of the instances dies, the other nodes will check back and wait for a short recovery before reallocating the database pieces that were on that node to other nodes across the network.

How do I interact with it?

Once Serengeti is running, you simply connect to http://<localhost_or_node_ip>:1985/dashboard to get going.

Requirements

This project was built on IntelliJ IDEA under JDK 11 runtime.

Is there a JAR available?

Yes, take a look at the release page

Currently version 0.0.1 is the only version, so grab it here

Unzip it and then simply run java -jar serengeti.jar

Build it yourself?

Yes, of course you can!

git clone https://github.com/ao/serengeti.git

Using IntelliJ?

Open in IntelliJ IDEA.

Edit configurations..

+ Application

Set the classpath to Serengeti and the Main class to Serengeti

Run the application!

Using Maven on the commandline?

mvn clean install

java -jar target/serengeti-1.0-SNAPSHOT.jar

Problems?

Create an issue if you need help

serengeti's People

Contributors

ao avatar dependabot[bot] avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

serengeti's Issues

AMO

We can gave Halloween In Christmas!

Create Github Actions AutoReleaser

Given a successful PR merged into master
When merge has been completed
Then a Github Action will be executed to create a new tagged release Jar

Design a better Storage mechanism

At the moment, storage is basically just a serialized class with data saved in it, persisted to disk.

It would be better to swap this out with a more performant option.

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.