Как работают столбчатые базы данных?
Columnar database является концепция довольно конкретная архитектура/реализация. Другими словами, нет конкретного описания того, как работают эти базы данных; Действительно, некоторые из них основаны на традиционной, ориентированной на ряд СУБД, просто сохраняя информацию в таблицах с одним (или, скорее, двумя) столбцами (и добавлением необходимого слоя для доступа к столбчатым данным простым способом).
Как они отличаются от реляционных баз данных? Они обычно отличаются от традиционных (строки-ориентированного) база данных с относительно ...
- производительности ...
- требования к хранению ...
- простоты модификации схемы ...
... в определенных случаях использование DBMSes.
В частности, они предлагают преимущества в областях, упомянутых, когда типичное использование заключается в вычислении совокупных значений в ограниченном количестве столбцов, в отличие от попыток и получения всех/большинства столбцов для данного объекта.
Есть ли пробная версия столбчатой базы данных, которую я могу установить, чтобы поиграть? (Я нахожусь в Windows 7) Да, есть коммерческая, бесплатная, а также реализация столбчатых баз данных с открытым исходным кодом. См. Список в конце Wikipedia article для стартера.
Остерегайтесь того, что некоторые из этих реализаций были введены по адресу , а конкретная потребность (скажем, очень малая занимаемая площадь, высоко сжимаемое распределение данных или эмуляция запасной матрицы и т. Д.) Вместо того, чтобы предоставлять универсальную СУБД с общим назначением.
Примечание: Замечание о «ориентации на одну цель» нескольких столбчатых СУБД не является критикой этих реализаций, а скорее указывает на то, что такой подход для СУБД уклоняется от более «естественного» (и, конечно, более широкого используемый) подход к хранению записей. В результате этот подход используется, когда подход, ориентированный на ряд строк, не является удовлетворительным и, следовательно, имеет тенденцию к
a) предназначен для конкретной цели b) получает меньше ресурсов/процентов, чем работа над «Общим назначением», «Пробовал и проверял», табличный подход.
Ориентировочно, модель данных Entity-Attribute-Value (EAV) может быть альтернативной стратегией хранения, которую вы можете рассмотреть. Несмотря на отличную от «чистой» модель Columnar DB, EAV разделяет несколько характеристик столбцов DB.
В дополнение к уменьшенному количеству обращений, упомянутых в ответах, некоторые реализации (например, хранилище столбцов SQL-сервера) будут сжимать данные. Это предотвращает фильтрацию строк, но может дополнительно повысить производительность запросов. – Pace