Некоторые различия между архитектурами баз данных, ориентированных на столбцы (column-based) и на строки (row-based):
- Формат хранения данных. 3 В row-based-базах данные хранятся в строках, каждая из которых соответствует записи в таблице. 3 В column-based-базах данные хранятся в столбцах, что позволяет лучше сжимать информацию. 3
- Область применения. 3 Row-based-базы подходят для транзакционных приложений, где часто требуется доступ к целым строкам данных. 3 Column-based-базы чаще используют для аналитических целей, когда часто требуется доступ к определённым столбцам. 3
- Эффективность сжатия. 23 В row-based-базах механизмы сжатия менее эффективны, так как необходимо одновременно сжимать несколько строк с разными типами данных. 2 В column-based-базах сжатие более эффективное, что позволяет хранить больше данных на одном и том же пространстве диска. 2
- Скорость записи. 3 В row-based-базах запись новых строк быстрая, так как вся строка добавляется к существующим или новым блокам. 1 В column-based-базах запись медленнее из-за форматирования данных. 3
Многие современные СУБД поддерживают оба типа хранения. 1 Выбор ориентации хранения для сущности обычно определяется вариантами использования её атрибутов. 1 Если необходимо обращение ко всем атрибутам сущности, подойдёт ориентация на строки. 1 Когда спросом пользуются отдельные атрибуты, имеет смысл хранить их в таблицах, ориентированных на столбцы. 1