GithubHelp home page GithubHelp logo

shuangxinyuan / hstream Goto Github PK

View Code? Open in Web Editor NEW

This project forked from hstreamdb/hstream

0.0 0.0 0.0 3.34 MB

HStreamDB is an open-source, cloud-native streaming database for IoT and beyond. Modernize your data stack for real-time applications.

Home Page: https://hstream.io/

License: Other

Shell 0.16% C++ 14.04% Python 5.54% C 0.11% Haskell 75.27% Pawn 0.04% Makefile 0.16% Thrift 4.31% Smarty 0.13% Dockerfile 0.23%

hstream's Introduction

GitHub top language GitHub Workflow Status Docker Pulls Slack Twitter Community YouTube

HStreamDB

hstream-db

HStreamDB is an open-source, cloud-native streaming database for IoT and beyond. Modernize your data stack for real-time applications.

Main Features

  • Push real-time data to your apps

    By subscribing to streams in HStreamDB, any update of the data stream will be pushed to your apps in real-time, and this promotes your apps to be more responsive.

    You can also replace message brokers with HStreamDB and everything you do with message brokers can be done better with HStreamDB.

  • Stream processing with familiar SQL

    HStreamDB provides built-in support for event-time based stream processing. You can use your familiar SQL to perform basic filtering and transformation operations, statistics and aggregation based on multiple kinds of time windows and even joining between multiple streams.

  • Easy integration with a variety of external systems

    With connectors provided, you can easily integrate HStreamDB with other external systems, such as MQTT Broker, MySQL, Redis and ElasticSearch. More connectors will be added.

  • Real-time query based on live materailze views

    With maintaining materialized views incrementally, HStreamDB enables you to gain ahead-of-the-curve data insights that response to your business quickly.

  • Reliable persistent storage with low latency

    With an optimized storage design based on LogDevice, not only can HStreamDB provide reliable and persistent storage but also guarantee excellent performance despite large amounts of data written to it.

  • Seamless scaling and high availability

    With the architecture that separates compute from storage, both compute and storage layers of HStreamDB can be independently scaled seamlessly. And with the consensus algorithm based on the optimized Paxos, data is securely replicated to multiple nodes which ensures high availability of our system.

For more information, please visit HStreamDB homepage.

Quickstart

For detailed instructions, follow HStreamDB quickstart.

  1. Install HStreamDB.
  2. Start a local standalone HStream server.
  3. Start HStreamDB's interactive CLI and create your first stream.
  4. Run a continuous query.
  5. Start another interactive CLI, then insert some data into the stream and get query results.

Documentation

Check out the documentation.

Community, Discussion, Construction and Support

You can reach the HStreamDB community and developers via the following channels:

Please submit any bugs, issues, and feature requests to hstreamdb/hstream.

How to build (for developers only)

Pre-requirements

  1. Make sure you have Docker installed, and can run docker as a non-root user.
  2. You have python3 installed.
  3. You can clone the GitHub repository by ssh key.

Get the source code

git clone --recursive [email protected]:hstreamdb/hstream.git
cd hstream/

Update images

script/dev-tools update-images

Start all required services

You must have all required services started before entering an interactive shell to do further development (especially for running tests).

script/dev-tools start-services

To see information about all started services, run

script/dev-tools info

A dev-cluster is required while running tests. All data are stored under your-project-root/local-data/logdevice

Enter in an interactive shell

script/dev-tools shell

Build as other Haskell projects

Inside the interactive shell, you have all extra dependencies installed.

I have no name!@649bc6bb75ed:~$ make
I have no name!@649bc6bb75ed:~$ cabal build all

License

HStreamDB is under the BSD 3-Clause license. See the LICENSE file for details.

Acknowledgments

  • Thanks LogDevice for the powerful storage engine.

hstream's People

Contributors

4euep avatar time-hu avatar commelina avatar yangkian avatar daleiz avatar yu-zh avatar alissa-tung avatar wfnuser avatar s12f avatar sdzx-1 avatar winterland1989 avatar swilder-m avatar emqplus avatar rory-z avatar

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.