Oracle Database In-Memory enables a dual-format architecture inside a single Oracle Database instance — traditional row-based format for OLTP workloads and a columnar in-memory format for analytic queries — without requiring a separate data warehouse. It is a separately licensed option for Oracle Database Enterprise Edition at $23,000 per processor. The compliance trap is straightforward and expensive: setting INMEMORY_SIZE to any non-zero value in your init.ora or spfile — even as a test — activates the option and requires a licence on every processor running that instance. In a RAC cluster, that means every node. Former Oracle insiders explain exactly what triggers the In-Memory licence, how Oracle LMS detects usage, and how to defend against inflated In-Memory audit claims.
Oracle Database In-Memory, introduced in Oracle Database 12c Release 1, enables a dual-format architecture within a standard Oracle Database instance. Row-format data continues to be stored on disk and in the buffer cache for OLTP operations — inserts, updates, deletes, and row-by-row retrieval. Simultaneously, selected tables, partitions, or materialized views are populated in a separate in-memory columnar format called the In-Memory Column Store (IMCS) for analytic queries — full table scans, aggregations, joins, and filters across large datasets.
The performance case is genuine: columnar in-memory processing can deliver 100x speed improvements for analytic queries compared to traditional row-format scans, without requiring a separate analytical database or ETL pipeline. Oracle has marketed In-Memory as a core competitive differentiator for mixed OLTP/OLAP workloads since its introduction.
The distinction that matters for licensing: Oracle Database In-Memory is not a product you install separately. It is a capability built into Oracle Database EE that is activated by setting a single initialisation parameter. This architecture makes accidental activation — and accidental licence triggering — straightforward.
Oracle Database In-Memory is priced as an Oracle Database EE option. Its list price is $23,000 per processor (per physical processor socket, applying the Core Factor Table for CPU reduction). Annual support is $5,060 per processor at the standard 22% support rate — though Oracle's published metric may vary slightly year over year. As with all Oracle Database options, you must also hold an underlying EE licence for every processor on which the option is deployed.
For a typical 8-core Intel server, applying the Core Factor Table (0.5 for Intel multi-core) reduces 8 cores to 4 processor licences. In-Memory would cost $92,000 in licence fees plus $20,240 in annual support on that single server. Scale to a 4-node RAC cluster — common for production OLAP use cases — and the figure reaches $368,000 in licences plus $80,960 annually in support. These figures assume Intel processors at the 0.5 core factor; SPARC T-series at 0.25 further reduces the licence count but Oracle hardware is increasingly rare in enterprise estates.
Oracle's list prices are not what enterprises pay. Enterprise deals typically achieve 50–75% discount on options. Our Oracle contract negotiation service has benchmark data on In-Memory discounts across industries. The gap between list price and contracted price is where negotiation leverage lives — but that leverage disappears once you are under audit.
The Oracle Database In-Memory licence requirement is triggered by a single condition: setting the INMEMORY_SIZE initialisation parameter to a value greater than zero. There are no other conditions. You do not need to populate any objects into the In-Memory Column Store. You do not need to query any In-Memory data. You do not need to explicitly enable the INMEMORY attribute on any table or partition. Setting INMEMORY_SIZE > 0 is sufficient — and Oracle's LMS audit scripts will identify it.
The practical risk zone is testing and proof-of-concept work. A DBA who sets INMEMORY_SIZE to 8GB to test analytic query performance, then reduces it back to zero after the test, has technically used the In-Memory option. Oracle's LMS scripts look at both current and historical V$PARAMETER values where database audit trails are enabled. The test environment that was "just trying it out" creates a licence requirement that Oracle will claim extends across the full production estate in many audit scenarios.
Our Oracle compliance review includes a full Oracle Database options scan — including INMEMORY_SIZE parameter analysis — across your estate before Oracle LMS arrives. We identify what is deployed, what is licensed, and where the gaps are.
Oracle's licence rule for Database options is that an option must be licensed on every processor in the cluster where it is deployed. For Oracle Database In-Memory in a RAC environment, this means every node in the RAC cluster must be licensed for In-Memory — even if the In-Memory Column Store is not populated on every node, and even if analytic queries only execute on one or two nodes in practice.
Oracle's metric for RAC licensing is consistent with all options: you cannot selectively license In-Memory on a subset of RAC nodes. The moment INMEMORY_SIZE > 0 on any RAC instance, all instances in that cluster require In-Memory licensing. This is Oracle's standard cluster licensing rule and applies equally to Partitioning, Advanced Security, Diagnostics Pack, Tuning Pack, and every other separately licensed option.
The RAC multiplier scenario: A 4-node RAC cluster with dual 8-core processors per node (32 physical sockets, Intel at 0.5 core factor = 16 processor licences per node, 64 total). In-Memory enabled on all nodes = 64 × $23,000 = $1.472M list price for In-Memory alone, before discounts. Annual support at 22%: $323,840. One parameter setting on a test node in a RAC cluster can create a million-dollar back-licence claim.
We have seen Oracle LMS audit claims based on INMEMORY_SIZE being set during a test in a pre-production RAC cluster that shares Oracle Home with the production cluster. Oracle's position in such scenarios is that the production estate requires In-Memory licensing because the option was available and accessible — even if production never used it. Challenging this requires forensic evidence of actual usage boundaries, which is exactly what our Oracle audit defence service delivers.
Oracle's License Management Services team uses the USMM (Usage and Measurement Management) tool and custom LMS scripts to detect Oracle Database option usage. For In-Memory, the detection methodology is specific and automated. Understanding exactly what Oracle looks for is critical to building a credible defence.
The critical point for audit defence is that Oracle LMS scripts capture a point-in-time snapshot. If INMEMORY_SIZE has been set to zero at the time of measurement, the scripts will typically not find current In-Memory usage. However, Oracle may request historical parameter change data from the database audit trail or from Oracle Enterprise Manager metrics if those are in use. Your defence posture should include documentation of when and why any INMEMORY_SIZE changes were made — and evidence that production workloads did not rely on In-Memory capabilities.
If you have received an LMS audit letter and are concerned about In-Memory exposure, our audit defence team can review your LMS script outputs and help you construct a technical and contractual challenge to any In-Memory claims.
Cloud deployment does not change the fundamental Oracle Database In-Memory licence requirement — it changes the metric for counting the licence. On-premises uses physical processors with the Core Factor Table applied. In cloud environments, the metric shifts to physical cores (not virtual CPUs) on the underlying physical host, or to a negotiated virtual CPU (vCPU) metric depending on the contract and licence type.
Cloud environments create additional complexity because autoscaling — adding virtual machines or increasing instance sizes to handle load — can trigger In-Memory licence requirements on additional processors if INMEMORY_SIZE is set in the base image. An auto-scaling group that launches new Oracle Database instances from a template with INMEMORY_SIZE > 0 technically creates a licence requirement on every instance launched. Oracle's cloud licensing guide covers these scenarios in depth.
Our Oracle Cloud and OCI advisory service helps enterprises review their cloud BYOL configuration to identify In-Memory exposure before deploying at scale.
We have successfully challenged inflated In-Memory back-licence claims by demonstrating that production workloads never relied on In-Memory capabilities — only test environments triggered the parameter. Our audit defence team knows exactly how Oracle builds these cases and how to dismantle them.
Oracle Database In-Memory delivers genuine performance benefits for analytic-heavy workloads running on Oracle Database EE. The question is not whether In-Memory works — it does — but whether the $23,000 per processor price is justified versus alternatives. There are several legitimate strategies for enterprises who want analytic performance without paying Oracle's In-Memory option premium.
Our Oracle licence optimisation service conducts an evidence-based assessment of whether In-Memory is delivering return on its option cost relative to alternatives. We have helped enterprises identify $1M+ in annual savings by right-sizing Database options including In-Memory through a combination of negotiated discount improvements and legitimate architectural changes.
The Oracle Database options landscape — In-Memory, Diagnostics Pack, Tuning Pack, Partitioning, RAC, Advanced Security, Active Data Guard, Database Vault, GoldenGate — collectively adds $100,000+ per processor in list-price options to many enterprise Oracle estates. Reviewing the full Oracle Database options licensing picture as a unit often reveals significant right-sizing opportunities.
If Oracle LMS has identified In-Memory usage in your environment and is claiming back-licence fees, the defence strategy depends on the technical facts of your specific deployment. There is no universal response, but there are consistent technical and contractual challenges that reduce or eliminate In-Memory claims.
In a recent engagement, a manufacturing client received an In-Memory back-licence claim of $2.8M based on a 4-node RAC cluster where INMEMORY_SIZE had been set to 32GB during a 6-week proof-of-concept 18 months earlier. We demonstrated that the PoC instance was a non-production clone on the same cluster, that no production queries used the In-Memory Column Store execution path, and that INMEMORY_SIZE was reset to zero before production go-live. The final settlement: $0 for In-Memory, plus a 3-year EE contract with improved pricing terms. See our case studies for more examples of how we challenge Oracle audit claims.
Every Oracle Database option — In-Memory, Diagnostics Pack, Partitioning, RAC, Advanced Security, Active Data Guard — explained with pricing, licence triggers, and audit defence strategies.
Download Free White Paper →Audit alerts, option licensing updates, and negotiation tactics — direct to your inbox. Read by Oracle stakeholders at 500+ enterprises.
Written by the Oracle Licensing Experts team — former Oracle executives, LMS auditors, and contract managers who now work exclusively for enterprise buyers. Not affiliated with Oracle Corporation.
Free Research
Download our Oracle OCI Licensing Guide — expert analysis from former Oracle insiders, 100% buyer-side.
Download the OCI Licensing Guide →Free Research
Download our Oracle BYOL on AWS and Azure Guide — expert analysis from former Oracle insiders, 100% buyer-side.
Download the BYOL on AWS & Azure Guide →Free Research
Download our Oracle SaaS Subscription Negotiation Guide — expert analysis from former Oracle insiders, 100% buyer-side.
Download the SaaS Negotiation Guide →