Подтвердить что ты не робот

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

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

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

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

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

4b9b3361

Ответ 1

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

Ответ 2

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

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

Ответ 3

Также ознакомьтесь с магазином Michael Stonebraker C: 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."

Ответ 4

Sybase IQ - это тот, о котором я слышал.

Ответ 5

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

Ответ 7

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

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

Что касается характеристик производительности, SELECTS очень быстрые для больших объемов данных, но INSERT/UPDATE/DELETE очень медленны по сравнению со стандартным OLTP-DB, например Sybase ASE. Стоп-блокировка также сильно отличается от базы данных OLTP, поэтому при работе в хранилище данных MAIN ожидайте эксклюзивные блокировки таблиц для операций записи (INSERTS и т.д.).

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

Приветствия,

Кевин