06.08.2014

Oracle Database In-Memory Option

Транзакционные (OLTP) системы зачастую имеют компоненты, выполняющие в базе данных аналитические запросы, в то время как в хранилищах и аналитических системах присутствует также и транзакционная нагрузка. Ранее приходилось выбирать между двумя форматами для ускорения либо OLTP, либо аналитических задач, но выход опции Oracle Database In-Memory позволил решить эту дилемму.

В июле для заказа стала доступна обновленная опция DATABASE IN-MEMORY OPTION. С ней база данных Oracle может хранить данные выбранных таблиц в памяти одновременно в двух форматах: и в поколоночном, и в построчном.

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

Таким образом, поддержка дополнительного формата оказывает минимальное влияние на производительность даже в высоконагруженных OLTP системах. При этом, появилась возможность  отказаться от использования индексов, создаваемых специально для ускорения аналитических запросов. Для использования новой опции требуется задать размер соответствующей области памяти «inmemory_size = xxx GB» и указать таблицы, для которых требуется включить новое поколоночное представление «alter table | partition … inmemory;». 

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

 

По всем вопросам, пожалуйста, обращайтесь к вашему ведущему менеджеру или в департамент программного обеспечения software@erc.ua