Какие преимущества имеет OLAP в памяти по сравнению с традиционными системами со значительным объемом памяти?

8

Имеют ли механизмы OLAP в памяти преимущество над традиционными механизмами OLAP, подкрепленными достаточным объемом оперативной памяти, чтобы вместить весь куб (ы)?

Например, если я использую механизм MOLAP (SSAS) и ГБ / ТБ ОЗУ, где весь куб (или даже звездообразная схема) является резидентом ОЗУ, в чем разница по сравнению с чем-то вроде TM1 / SAP HANA?

kermatt
источник

Ответы:

4

Базы данных, разработанные с предположением, что они будут полностью размещены в основной памяти, могут использовать такие структуры, как индексы T-дерева . Но реальное преимущество в том, что IMDB просто проще. Они делают меньше (поскольку им не нужно беспокоиться об управлении кешем или сериализации записей для согласованности, или вообще о том, что связано с ACID-совместимым вводом / выводом), поэтому они выполняют меньше инструкций на оборудовании, чтобы выполнить то же самое "Работа". База данных общего назначения должна быть всем для всех; как у Кожевника есть дюжина инструментов, но иногда вам просто нужен режущий край, поэтому вы покупаете лезвие у Cold Steel , и никто не спорит, что это лучший нож!

Gaius
источник
s / Cold Steel / Benchmade /;)
kermatt
4

Не моя область знаний, но, насколько я понимаю, разница в большинстве так называемых баз данных OLAP в памяти (не термин, который мне нравится, он используется как маркетинговый шаг, а не как справедливое сравнение технологий) - это столбец хранить индексы .

Хранилища столбцов и хранилища строк (насколько они действительно отличаются) - хорошее введение в технологию, если вы знакомы с традиционными структурами баз данных OLTP и OLAP.

Марк Стори-Смит
источник
4

Индексы хранилища столбцов появятся в SQL Server 2012 (он же «Denali»).

Вот ссылка на презентацию Power Point от Конора Каннингема, главного архитектора программного обеспечения в группе обработчика запросов SQL Server, в которой описывается эта новая функция.

briancarrig
источник
0

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

Кроме того, поскольку хранилище столбцов хранит все значения столбцов в последовательных блоках памяти, сканирование имеет меньше блоков, чтобы пропустить такие операции, как Select. Однако существуют транзакционные недостатки хранилищ столбцов, и, например, HANA добавила таблицы хранилищ строк в более поздних версиях.

meatcomputer
источник