H-Store

From Wikipedia, the free encyclopedia
Jump to navigation Jump to search
H-Store
DevelopersBrown, CMU, MIT, Yale
Stable release
June 2016 / June 3, 2016; 9 years ago (2016-06-03)
Repository
  • {{URL|example.com|optional display text}}Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
Written inC++, Java
Engine
    Lua error in Module:EditAtWikidata at line 29: attempt to index field 'wikibase' (a nil value).
    Operating systemLinux, Mac OS X
    TypeDatabase Management System
    LicenseBSD License, GPL
    Websitehstore.cs.brown.edu

    H-Store is an experimental database management system (DBMS). It was designed for online transaction processing applications. H-Store was developed by a team at Brown University, Carnegie Mellon University, the Massachusetts Institute of Technology, and Yale University[1][2] in 2007 by researchers Michael Stonebraker, Sam Madden, Andy Pavlo and Daniel Abadi.[3][4][5]

    Architecture

    [edit | edit source]

    H-Store was promoted as a new class of parallel database management systems, called NewSQL,[6] that provide the high-throughput and high-availability of NoSQL systems, but without giving up the transactional consistency of a traditional DBMS known as ACID (atomicity, consistency, isolation and durability).[7] Such systems operate across multiple machines, as opposed to a single, more powerful, more expensive machine.[8]

    H-Store is able to execute transaction processing with high throughput by forgoing many features of traditional relational database management systems.

    H-Store was designed as a parallel system to run on a cluster of shared-nothing, main memory executor nodes (processor + memory + storage).[9] The database is partitioned into disjoint subsets each assigned to a single-threaded execution engine assigned to one core on one node. Each engine has exclusive access to all of the data in its partition. Because it is single-threaded, only one transaction at a time can access the data stored on that partition. No physical locks or latches are included in the system, and once a transaction is started, it cannot stall waiting for another transaction to complete. Throughput is increased by increasing the number of nodes in the system and reducing partition sizes.[10]

    Licensing

    [edit | edit source]

    H-Store was licensed under the BSD license and GPL licenses. By 2009, the VoltDB company developed a commercial version, and the H-Store research group shut down in 2016.[11]

    See also

    [edit | edit source]

    Lua error in mw.title.lua at line 392: bad argument #2 to 'title.new' (unrecognized namespace name 'Portal').

    References

    [edit | edit source]
    1. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    2. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    3. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    4. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    5. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    6. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    7. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    8. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    9. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    10. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).
    11. ^ Lua error in Module:Citation/CS1/Configuration at line 2172: attempt to index field '?' (a nil value).