The In-Memory Column Store feature that was introduced by Oracle in the database version 12c (18.104.22.168) brings the solution for accelerating performance of database-driven business decision-making to real-time speeds. Since it is an extra-license feature for which Oracle makes you pay around 50% on top of your CPU license (similar to RAC option), you probably ask yourself a few valid questions. Don’t we cache everything already in memory anyway? Is it really required for my application, my company? Will it work for my workload at all? In this post I’ll give you a short guideline and introduction into Oracle database In-Memory feature.
First of all me personally and so probably you do not know any database that works only on disk. Indeed we cache most of our data, code and intermediate results in memory already. Furthermore there are some extra Oracle database performance features that help you to achieve that fairly efficiently, for example:
– KEEP/RECYCLE Pools
– RESULT Cache
– 12c Big Table Caching
– 12c Full Database Caching
The key point of Oracle In-Memory is not “What to cache” but “How”. So the major difference of Oracle In-Memory Column Store is that it enables individual database segments to be loaded into memory in the compressed columnar format. This technique enables segment scans to perform much faster than the traditional on-disk formats, providing performance boost for analytical and reporting workload.
Below is a quick summary (OnePager) of the most valuable tips and best practices in order to speed up an Oracle Support (MOS) Service Request (SR) resolution:
- Speed up SR creation using:
– Use OCM and System/Target list -> Right Click on a target -> Create SR button (best method for initial SR)
– “Create SR Like Selected SR” (best method in case a similar SR for the same target exists already)
– Using SR Profiles (as alternative in case both above methods are not available/appropriate)
- Provide proper SR description and problem type including all relevant logs, traces, screenshots, etc. right at the beginning
- Open SR with Severity 2 as minimum (in case you want the SR resolution will move during the day)
- Ensure the Oracle Support engineer is in similar time zone (unless it’s 24×7 SR), otherwise request SR reassignment
- Ask for the proper root cause analysis, path forward and detail action plan
- Respond to your action codes fast in SR (Customer Working, Solution Offered) to ensure the SR is moving
- Track Timelines in the SR body yourself (since MOS does not do it properly)
- Speed up communication with Support Engineer using alternative ways:
- Ask Support Engineer to open a chat
- Ask Support Engineer to open a web conference (get instructions from the engineer how to start it)
- Call Support Engineer (call Oracle Support and ask them to connect you to the Engineer)
- Raise SR Severity to 1 (24×7 or during business hours; it works also for test systems!)
- Escalate SR / Request Management Attention
If you have more valuable tips on how to speed up Oracle Support (MOS) Service Request (SR) resolution, share your ideas in comments and/or else like/share it with others.
If you are not satisfied with the resolution or response to a critical Service Request (SR) at My Oracle Support (MOS), you can escalate it. SR escalation process (formerly known as the Duty Manager Process) is officially known as Requesting Manager Attention to a Service Request. This procedure will facilitate the assignment of a Support Manager [and potentially another support Engineer] to the SR, creation of an Action Plan and as the result it will usually speed up the resolution of the issue.
See below a Workbook of how to properly escalate MOS SR which is based on the Oracle official procedure, best practices and my own experience (this is a draft document -> it will be adjusted based on your valuable comments and experiences that you can post right below this post).
Before Escalating MOS SR
- Raise SR Severity (do not escalate if you have an ability to raise the severity)
- Work properly yourself with SR to avoid delays using the SR Tips and Best practices
- In case you decide to escalate SR ensure the following:
- You have a valid reason and business case at your hands.
- Decide who will be the main contact from your side for the escalation process and that contact information is properly documeted in the SR (either as Primary or Alternate SR contact or if other: place it in SR body).
1. Insert the below template into the SR
This step is optional but makes sense to ensure proper communication Read more »
I’m often asked questions on Oracle database or client software installation in Silent Mode with using response file. I used to do it in the past but not anymore. The silent software installation with Oracle response file is still available but I found another handy option in Oracle 11g/12c of doing the same. The same silent installation can be done directly from the command prompt without using an Oracle response file but it requires a minimum set of variables (from the response file) as arguments to the Oracle Universal Installer (OUI) (i.e “runInstaller or setup.exe”).
I give a few tested examples below to install Oracle software in Silent mode without a response file:
Oracle Database 11.2 on Linux silent installation (Enterprise Edition Software Only)
./runInstaller -silent -debug -force \ Read more »
My next post is an answer to the below question about Oracle SQL CASE expression and the way how it manipulates with NULL values compared to DECODE function. This topic in fact is very common in Oracle database developers’ area.
Could you please help me to clarify below mention doubt.
select decode (null,null,’true’,’false’) as value from dual
select case null when null then ‘true’ else ‘false’ end as Case_Test from dual
OUTPUT :- FALSE
Why above mention queries are giving different output and what is the difference between case and decode?
CASE expression treats NULLs in Oracle database SQL a bit differently compared to DECODE. You have to understand that the Boolean expressions usually result in TRUE or FALSE , but NULLs introduce a third possible result which is : UNKNOWN . At the same time NULL is not the same as UNKNOWN. See an example below:
sum + NULL results in NULL (this is a Scalar expression.)
NULL = NULL results in UNKNOWN (this is a Boolean expression.)
sum < NULL results in UNKNOWN (this is a Boolean expression.)
Ok. Now let’s explore the Oracle SQL CASE expression itself.
CASE introduces two ways of conditional expressions: Simple CASE and Searched CASE. Read more »