Рекомендации по базе данных, ориентированной на столбцы [закрыто]

Я нашел базы данных, как правило, бывают двух видов: традиционные RDBMS, ориентированные на строки, или объектно-ориентированная база данных (OODBMS). Однако в середине 90-х годов, я помню, появилась новая порода баз данных, ориентированных на столбцы. Некоторые из них получили термин 4GL, но я не думаю, что это был термин, который застрял.

Что я хотел бы знать следующее:

  • какие базы данных, ориентированные на столбцы, все еще существуют?
  • какова производительность характеристики этих баз данных?
  • существуют ли базы данных с открытым исходным кодом, ориентированные на столбцы?
  • С какими платформами они взаимодействуют (.NET, Java и т. д.)
  • каков ваш общий опыт работы с ними?

две базы данных, ориентированные на столбцы, с которыми я помню работу, - это FAME и KDB.

7 ответов


HBase-это система баз данных с открытым исходным кодом, ориентированная на столбцы, смоделированная на Google BigTable.


Infobright
Это ориентированный на столбец MySQL engine
Вы можете использовать (почти) все MySQL api/interfaces/tools, но он ориентирован на столбец.

Это с открытым исходным кодом и имеет бесплатную версию.
Это очень хорошо для складирования. У меня была таблица фактов 10Gig в SQL server. Infobright сжал его до 15 МБ.


также проверьте C-store Майкла Стоунбрейкера: C-store (включает ссылки на исходный код и исследовательскую работу)

статья содержит отличную точку зрения на столбцы ориентированных баз данных, которые должны ответить на большинство ваших вопросов.

процитировать статью,

"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."

Sybase IQ один я слышал.


InfiniDB недавно был выпущен с открытым исходным кодом (GPLv2) Calpont. Он поддерживает большую часть MySQL API и хранит данные в колонке-ориентированной Моды, и оптимизирован для крупномасштабной аналитической обработки.


вот другая колонка, ориентированная на СУБД wiki


Sybase IQ ориентирован на столбец . Все столбцы автоматически индексируются при создании таблицы, и данные хорошо сжимаются в Столбцах.

Это хорошая база данных OLAP (...хранилище данных), но я бы не рекомендовал его для какой-либо обработки транзакций, поскольку он предназначен для операций хранилища данных.

Что касается характеристик производительности, выбор очень быстрый для больших объемов данных, но вставка / обновление / удаление очень медленные по сравнению со стандартом Например, OLTP DB, например Sybase ASE. Блокировка таблиц также сильно отличается от базы данных OLTP, поэтому ожидайте исключительных блокировок таблиц для операций записи (вставки и т. д.) При работе в основном хранилище данных.

в противном случае он поддерживает T-SQL (версия Sybase) и Watcom SQL.

спасибо,

Кевин