Почему базы данных на основе столбцов быстрее запрашивают? - PullRequest
0 голосов
/ 22 мая 2018

Я изучаю подход к использованию новой базы данных, которая будет использоваться для нашего нового приложения.Объем данных не будет таким большим, как 100 миллионов записей, но будет около 10 миллионов записей, прежде чем они будут заархивированы.Будет ли использование подхода на основе столбцов для такого большого количества данных очень полезным, чем база данных на основе строк?Почему база данных на основе столбцов быстрее запрашивает?

1 Ответ

0 голосов
/ 22 мая 2018

По сути, основное различие между БД, ориентированными на строки и столбцы, заключается в модели, которую они используют для сериализации данных.БД, ориентированные на строки, хранят данные в каждой строке в виде смежных блоков.БД, ориентированные на столбцы, хранят данные каждого столбца в смежных блоках.Кроме того, эти блоки обычно сжимаются и сортируются.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...