Changes in This Release for Oracle Database In-Memory Guide

This preface contains:

Changes in Oracle Database 12c Release 2 (

Oracle Database In-Memory Guide for Oracle Database 12c Release 2 ( has the following changes.

New Features

The following major features are new in this release:

  • In-Memory Column Store (IM column store) dynamic resizing

    You can now dynamically increase the size of the In-Memory Area without reopening the database.

    See "Increasing the Size of the IM Column Store Dynamically".

  • In-Memory Expressions (IM expressions)

    Oracle Database automatically identifies frequently used (“hot”) expressions that are candidates for population in the IM column store. A candidate expression might be (monthly_sales*12)/52. IM expressions can greatly improve the performance of analytic queries that use computationally intensive expressions and access large data sets.

    See "Optimizing Queries with In-Memory Expressions".

  • In-Memory virtual columns (IM virtual columns)

    IM virtual columns enable the IM column store to materialize some or all virtual columns in a table.

    See "Enabling and Disabling Columns for In-Memory Tables".

  • IM FastStart

    IM FastStart optimizes the population of database objects in the IM column store by storing IMCUs directly on disk.

    See "Managing IM FastStart for the IM Column Store".

  • Object-level support for services

    For an individual object, the INMEMORY ... DISTRIBUTE clause has a FOR SERVICE subclause that limits population to the database instance where this service is allowed to run. For example, you can configure an INMEMORY object to be populated in the IM column store on instance 1 only, or on instance 2 only, or in both instances.

    See "Object-Level Service Controls".

  • IM column store on a standby database

    You can enable an IM column store in an Oracle Active Data Guard standby database. You can populate a completely different set of data in the in-memory column store on the primary and standby databases, effectively doubling the size of the in-memory column store that is available to the application.

    See "Deploying an IM Column Store with Oracle Active Data Guard".

  • ADO support for the IM column store

    You can use Automatic Data Optimization (ADO) policies to evict objects such as tables, partitions, or subpartitions from the IM column store based on Heat Map statistics. Successful policy completion results in setting NO INMEMORY for the specified object.

    See "Enabling ADO for the IM Column Store".

  • Join groups

    A join group is a user-created object that lists two columns that can be meaningfully joined. In certain queries, join groups enable the database to eliminate the performance overhead of decompressing and hashing column values. Join groups require an IM column store.

    See "Optimizing Joins with Join Groups".