Coder Social home page Coder Social logo

nkgfirecream / fastore Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 202.18 MB

NewSQL database management system based on columnar scale-out topology.

Home Page: http://www.digithought.com/products-services/fastore

Makefile 0.21% Groff 0.03% Awk 0.01% C 11.57% Shell 0.58% M4 0.10% Tcl 0.31% HTML 0.04% C++ 85.05% Yacc 0.07% Batchfile 0.01% Perl 0.08% Lex 0.01% Thrift 0.07% Python 0.19% Java 0.71% PHP 0.26% Emacs Lisp 0.01% Vim Script 0.01% C# 0.66%

fastore's Introduction

Fastore

NewSQL database management system based on a columnar scale-out topology. By embracing modern hardware design, Fastore provides ultra-high transaction and query throughput.

Features include:

  • Scale out - add more "cheap" nodes for redundancy and faster performance
  • Primary in-memory, but durable
  • For both analytics and transaction processing
  • Optimistic and pessimistic concurrency
  • Supports Windows and Linux
  • Accessible via C, C++, .NET, and Java APIs

Technical Details:

  • Since Fastore uses columnar storage, no indexes are needed, the join cost is even across columns and tables, and there is a high potential for analytic queries.
  • Fastore is able to store data in-memory as it utilizes memory-optimized structures; this enables durable logging and check-pointing and support for joins using random access.
  • Transactions can satisfy the ACID properties, with isolation via revisions and true durability with torn-page handling. Fastore uses a consistency model to facilitate backup and recovery.
  • Fastore supports optimistic concurrency - the application server handles the bulk of the transaction processing, conflicts result in retry, and snapshot isolation and early conflict detection can prevent data inconsistencies or failure. Pessimistic concurrency is also used in explicit locking for high contention points.
  • Fastore's ability to replicate its network topology across several servers allows for multi-site distribution, and thus prevents the need to scale-up. This also means there will be no single point of contention or failure, so clients can coordinate the transactions.
  • No latch overhead and maximized cache locality make Fastore optimal for NUMA memory architecture and disk throughput.

Implementation details:

  • Written primarily in C++ 11
  • Uses SQLite's query engine, which was well suited given that the query processor resides on the "client" (typically an application server, but client relative to the database system).

Status:

  • Reading is primarily in place
  • Transactions are partly implemented

See Contributing for information on how and where to help out. More information here: http://www.digithought.com/products-services/fastore

fastore's People

Contributors

n8allan avatar

Watchers

aliraza avatar  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.