Fork me on GitHub

H-Store is an experimental main-memory, parallel database management system that is optimized for on-line transaction processing (OLTP) applications. It is a highly distributed, row-store-based relational database that runs on a cluster on shared-nothing, main memory executor nodes.

The H-Store project is a collaboration between MIT, Brown University, Carnegie Mellon University, Yale University, and Intel.

New Release (March 2011)

March 3rd, 2011 at 2:09 pm

Although the H-Store project is not on a regular release schedule, we feel that we have reached a point where we have some new features that may be of interest to the research community. Our goal is not to create a full-featured, stable system to use in production environment, but there are some features that distinguish us from VoltDB.

Major highlights of this release:

  1. Significant optimizations of single-partition transactions. Added heavy use of object pooling and cached query batch planning.
  2. Added support for general transactions that touch an arbitrary number of partitions.
  3. Improved distributed query planner. Unlike VoltDB’s query planner, we can now push down projection operators and parallelize all aggregates supported by H-Store (except for COUNT(DISTINCT)). This greatly reduces the amount of data that needs to be sent from all of the partitions to the initiating partition.
    Update: VoltDB’s query planner now does predicate push-down as of May 2011.
  4. The system can predict the execution path of arbitrary transactions. The developer no longer needs to annotate stored procedures with the @ProcInfo that VoltDB requires (more details coming soon).
  5. Many bug fixes for interacting with the transaction coordinator (support for larger batch sizes).
  6. New tuning parameters.
  7. Improved the H-Store Catalog Viewer Tool

The source code for this release can be download via anonymous SVN:

https://database.cs.brown.edu/svn/hstore/tags/release-2011-03

Or from a pre-packaged source code tarball.