Databases Reference
In-Depth Information
sizes, indexes are useless, and the block structure is a kind of quasi-index. Infobright
requires a customized version of the server, because portions of the server have to be
rewritten to work with column-oriented data. Some queries can't be executed by the
storage engine in column-oriented mode, and cause the server to fall back to row-by-
row mode, which is slow. Infobright is available in both open source-community and
proprietary commercial versions.
Another column-oriented storage engine is Calpont's InfiniDB, which is also available
in commercial and community versions. InfiniDB offers the ability to distribute queries
across a cluster of machines. We haven't seen anyone use it in production, though.
By the way, if you're in the market for a column-oriented database that isn't MySQL,
we've also evaluated LucidDB and MonetDB. You can find benchmarks and opinions
on the MySQL Performance Blog, although they will probably become somewhat out-
dated as time passes.
Community storage engines
A full list of community storage engines would run into the scores, and perhaps even
to triple digits if we researched them exhaustively. However, it's safe to say that most
of them serve very limited niches, and many aren't known or used by more than a few
people. We'll just mention a few of them. We haven't seen most of these in production
use. Caveat emptor !
Aria
Aria, formerly named Maria, is the original MySQL creator's planned successor to
MyISAM. It's available in MariaDB. Many of the features that were planned for it
seem to have been deferred in favor of improvements elsewhere in the MariaDB
server. At the time of writing it is probably best to describe it as a crash-safe version
of MyISAM, with several other improvements such as the ability to cache data (not
just indexes) in its own memory.
Groonga
This is a full-text search storage engine that claims to offer accuracy and high speed.
OQGraph
This engine from Open Query supports graph operations (think “find the shortest
path between nodes”) that are impractical or impossible to perform in SQL.
Q4M
This engine implements a queue inside MySQL, with support for operations that
SQL itself makes quite difficult or impossible to do in a single statement.
SphinxSE
This engine provides a SQL interface to the Sphinx full-text search server, which
we discuss more in Appendix F .
 
Search WWH ::




Custom Search