database - valor - que es una base de datos no relacional
Recomendaciones para la base de datos orientada a columnas (7)
Infobright
Es un motor MySQL orientado a columna
Puede usar (casi) todas las API / interfaces / herramientas de MySQL, pero está orientado a columnas.
Es de código abierto y tiene una versión gratuita.
Es muy bueno para el almacenamiento. Tenía una tabla de hechos de 10 Gig en el servidor SQL. Infobright lo comprimió a 15MB.
He encontrado que las bases de datos generalmente vienen en dos formas, su RDBMS tradicional orientado a filas o una base de datos orientada a objetos (OODBMS). Sin embargo, a mediados de los 90, recuerdo, una nueva generación de bases de datos que aparecían orientadas a columnas. A algunos de ellos se les dio el término 4GL, pero no creo que haya sido un término que haya quedado.
Lo que me gustaría saber es lo siguiente:
- ¿Qué bases de datos orientadas a columnas aún existen?
- ¿Cuáles son las características de rendimiento de estas bases de datos?
- ¿Hay alguna base de datos orientada a columnas de código abierto?
- Con qué plataformas interactúan (.NET, Java, etc.)
- ¿Cuál ha sido tu experiencia general con ellos?
Las dos bases de datos orientadas a columnas con las que recuerdo haber trabajado son FAME y KDB.
Sybase IQ está orientado a columnas. Todas las columnas se indexan automáticamente cuando se crea una tabla y los datos se comprimen muy bien en las columnas.
Es una buena base de datos OLAP (... almacén de datos) pero no lo recomendaría para ningún tipo de procesamiento de transacciones ya que está diseñado para operaciones de almacenamiento de datos.
En cuanto a las características de rendimiento, los SELECTS son muy rápidos para grandes volúmenes de datos, pero INSERT / UPDATE / DELETE son muy lentos en comparación con un DB OLTP estándar, como Sybase ASE, por ejemplo. El bloqueo de tabla también es muy diferente de una base de datos OLTP, por lo que se esperan bloqueos de tabla exclusivos para las operaciones de escritura (INSERTOS, etc.) cuando se trabaja en el almacén de datos PRINCIPAL.
De lo contrario, es compatible con T-SQL (versión de Sybase) y Watcom SQL.
Aclamaciones,
Kevin
También vea la tienda C de Michael Stonebraker: C-store (incluye enlaces al código fuente y al trabajo de investigación)
El documento contiene un excelente punto de vista sobre bases de datos orientadas a columnas, que debería responder la mayoría de sus preguntas.
Para citar el documento,
"Most major DBMS vendors implement record-oriented
storage systems, where the attributes of a record (or tuple)
are placed contiguously in storage. With this row store
architecture, a single disk write suffices to push all of the
fields of a single record out to disk. Hence, high
performance writes are achieved, and we call a DBMS
with a row store architecture a write-optimized system.
In contrast, systems oriented toward ad-hoc querying
of large amounts of data should be read-optimized. Data
warehouses represent one class of read-optimized system,
in which periodically a bulk load of new data is
performed, followed by a relatively long period of ad-hoc
queries. Other read-mostly applications include customer
relationship management (CRM) systems, electronic
library card catalogs, and other ad-hoc inquiry systems. In
such environments, a column store architecture, in which
the values for each single column (or attribute) are stored
contiguously, should be more efficient. This efficiency
has been demonstrated in the warehouse marketplace by
products like Sybase IQ [FREN95, SYBA04], Addamark
[ADDA04], and KDB [KDB04]. In this paper, we discuss
the design of a column store called C-Store that includes a
number of novel features relative to existing systems."
InfiniDB fue lanzado recientemente como fuente abierta (GPLv2) por Calpont. Admite la mayor parte de la API de MySQL y almacena datos de forma orientada a columnas, y está optimizado para el procesamiento analítico a gran escala.
Esta es la wiki de DBMS orientada a columnas que tiene implementaciones DBMS orientadas a columnas
HBase es un sistema de base de datos orientado a columnas de fuente abierta modelado en BigTable de Google .
Sybase IQ es uno de los que he oído hablar.