Дуг Лиланд
ПО СЛОВАМ ДУГА ЛИЛАНДА, Hekaton — уже не первая попытка Microsoft интегрировать в свои продукты технологию обработки данных в оперативной памяти
Источник: Microsoft

Совершенствуя свою технологию оперативной обработки транзакций, корпорация Microsoft оснастила СУБД SQL Server функциями обработки данных в оперативной памяти.

В следующей версии SQL Server появится возможность держать в оперативной памяти сервера отдельные таблицы или даже всю базу данных. «Любое приложение, вынужденное постоянно считывать данные с жесткого диска и записывать их туда снова, заметно выиграет, если данные разместить в оперативной памяти», — подчеркнул генеральный менеджер Microsoft Дуг Лиланд. В настоящее время корпорация и ряд ее клиентов занимаются тестированием технологии управления данными в памяти, разрабатываемой под кодовым наименованием Hekaton.

Держа таблицу базы данных в памяти, сервер может выполнять транзакции гораздо быстрее, потому что ему не приходится ни считывать данные с диска, ни записывать их обратно. По оценкам Microsoft, размещение данных в оперативной памяти позволит выполнять транзакции в 50 раз быстрее по сравнению со стандартным механизмом SQL Server.

«Технология Hekaton предназначена для ускорения оперативной обработки транзакций, которая широко используется в электронных банковских системах, системах ERP и других решениях, предусматривающих интенсивный обмен данными с диском, — указал Лиланд. — Hekaton функционирует только на одном сервере, но на объем оперативной памяти при этом никаких жестких ограничений не накладывается, и система может использовать столько памяти, сколько способен вместить в себя этот сервер».

Hekaton в полной мере отвечает требованиям ACID (atomicity, consistency, isolation, durability — «атомарность, непротиворечивость, изолированность, устойчивость»), предъявляемым к системам управления базами данных реляционного типа. Журналы последовательно выполняемых транзакций сохраняются в оперативной памяти и периодически записываются на диск. Программное обеспечение использует ряд алгоритмов сжатия, позволяющих уместить в памяти больше данных. Например, информация может записываться в колоночное хранилище, объединяющее данные одного типа.

Чтобы упростить администраторам баз данных задачу обработки данных в памяти, разработчики новой версии SQL Server включили в состав своего программного продукта инструментрий, позволяющий выбирать размещаемые в оперативной памяти базы данных или отдельные их таблицы. Никаких изменений в приложения, обращающиеся к этим базам данных, вносить не придется. Кроме того, Hekaton сможет компилировать хранимые процедуры, которые тоже будут размещаться в памяти. «Появится возможность скомпилировать хранимые процедуры и держать их в памяти в виде машинного кода», — пояснил Лиланд.

Технологии обработки данных в памяти завоевывают все большую популярность у организаций, которым нужна высокая скорость операций с данными. К таким решениям относятся, в частности, системы Oracle Exadata и SAP HANA. Интеграция технологии обработки данных в оперативной памяти в SQL Server упростит ИТ-архитектуру клиентов, избавив их от необходимости искать и поддерживать автономные продукты такого рода.

По словам Лиланда, это уже не первая попытка Microsoft интегрировать в свои продукты технологию обработки данных в оперативной памяти. Она используется, в частности, в компонентах PowerPivot и Power View, позволяющих быстро оперировать большими объемами данных в Excel.