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