Что такое VertiPaq и как он работает - PullRequest
7 голосов
/ 01 сентября 2011

Я изучаю индекс Column Store (функция Denali CTP3) и узнал, что он использует архитектуру VertiPaq для сжатия данных. Мне стало интересно узнать, что это такое, как это работает, это архитектура. Я проверил в Google, но нет удовлетворительного результата. Может ли кто-нибудь, пожалуйста, дайте мне знать подробно, что это такое, как это работает, алгоритм / архитектура за этим и т. Д.

И как это помогает в сжатии данных

Ответы [ 2 ]

4 голосов
/ 06 сентября 2011

Я написал сообщение в блоге об этом, которое, мы надеемся, ответит на ваши вопросы об индексах хранилищ столбцов: http://www.jamesserra.com/archive/2011/08/sql-server-%e2%80%9cdenali%e2%80%9d-project-apollo/

Пожалуйста, дайте мне знать, если у вас все еще есть вопросы.

1 голос
/ 11 апреля 2012

И как это помогает в сжатии данных

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

Когда данные хранятся по столбцам, данные часто могут быть сжимается более эффективно, чем при хранении в рядном порядке. Обычно в столбце больше избыточности, чем в строке, что обычно означает, что данные могут быть сжаты в большей степени. Когда данные более сжаты, для извлечения данных требуется меньше ввода-вывода в память. Кроме того, большая часть данных может находиться в данный объем памяти. Сокращение ввода-вывода может значительно ускорить запрос время отклика. Сохранение большего количества вашего рабочего набора данных в памяти ускорит время отклика для последующих запросов, которые обращаются к те же данные.

Источник: Подробнее о технологии columnstore

...