Search

Top 60 Oracle Blogs

Recent comments

November 2016

Attribute clustering (part 1)

One of the nice facilities in 12c is the ability to instruct the database to co-locate data during loading in order to facilitate reduced resource consumption for subsequent queries.

Here’s an example of it in use. First I’ll create table SOURCE_DATA to mimic some randomised incoming data feed



SQL> exec dbms_random.seed(0)

PL/SQL procedure successfully completed.

SQL> drop table source_data purge;
drop table source_data purge
           *
ERROR at line 1:
ORA-00942: table or view does not exist


SQL>
SQL> create table source_data  as
  2      select d.*
  3      from dba_objects d
  4      where object_id is not null
  5      order by dbms_random.random;

Table created.

So let’s now populate (create) our table T with a straight copy of the data from SOURCE_DATA and index a column of interest

DOAG 2016

I had a great time at DOAG 2016. It’s one of the best run conferences I’ve been to! I did a quick cameo during the keynote to talk about performance in Oracle’s cloud. Nothing like being on stage with a guy wearing a tie. :) Thanks Andrew for inviting me to say a few words.

Kerry_on_stage_doag_2016

Oracle Cloud Performance Testing Results


 

That was fun!

Then I did a couple of technical talks.

Oracle 12.2 DBaaS Availability!

At Oracle Open World 2016 Larry Ellison introduced Oracle Database 12c Release 2 (12.2) and shared that it would be available first to Oracle Cloud customers.

Immediately after Open World 12.2 became available to people who subscribed to the Oracle Exadata Express Cloud; those of us on DBaaS needed to wait for a little while longer.

In the second week of November, Oracle released Oracle Database 12c Release 2 (12.2) to DBaaS (DataBase as a Service) customers. Here’s how it looks when creating an instance:

oracledbaas12cr2

The ACE Scorecard

Azure and Oracle Cloud – My First Time

Below talks about my experience trying out Azure and Oracle cloud for the very first time (and at the same time).


So last night I tried for the very 1st time the Azure and Oracle Cloud. Here, I just like to share my experience. BTW I am a big fan of DigitalOcean because of its user friendly interface, very fast to setup (end to end 2 minutes w/ few button clicks), and fantastic community and HOWTOs (https://www.digitalocean.com/community/). If I have to choose a cloud dev environment provider I would still use DigitalOcean.

Now, being a newbie on both these platforms. I’m looking for a similar experience as DigitalOcean.

The cloud experience comparison is broken down to 3 categories:

DOAG 2016 - "Oracle Database Cloud Performance" presentation material

Thanks to all attendees that came to my presentation "Oracle Database Cloud Performance" at the DOAG conference 2016. You can check the presentation material here at Slideshare.

Friday Philosophy – Your Experience can Keep You Ignorant

This week I was in an excellent presentation by Kerry Osborne about Outlines, SQL profiles, SQL patches and SQL Baselines. I’ve used three of those features in anger but when I looked at SQL Patches I just could not understand why you would use them – they looked to me like a very limited version of SQL Profiles.

Advanced Oracle memory profiling using pin tool ‘pinatrace’

In my previous post, I introduced Intel Pin. If you are new to pin, please follow this link to my previous post on how to set it up and how to run it.

One of the things you can do with Pin, is profile memory access. Profiling memory access using the pin tool ‘pinatrace’ is done in the following way:

$ cd ~/pin/pin-3.0-76991-gcc-linux
$ ./pin -pid 12284 -t source/tools/SimpleExamples/obj-intel64/pinatrace.so

The pid is a pid of an oracle database foreground process. Now execute something in the session you attached pin to and you find the ‘pinatrace’ output in $ORACLE_HOME/dbs:

SQL Server on Linux

I thought I’d do something on Oracle this week, but then Microsoft made an announcement that was like an early Christmas present-  SQL Server release for Linux.

Introduction to Intel Pin

This blogpost is an introduction to Intel’s Pin dynamic instrumentation framework. Pin and the pintools were brought to my attention by Mahmoud Hatem in his blogpost Tracing Memory access of an oracle process: Intel PinTools. The Pin framework provides an API that abstracts instruction-set specifics (on the CPU layer). Because this is a dynamic binary instrumentation tool, it requires no recompiling of source code. This means we can use it with programs like the Oracle database executable.
The Pin framework download comes with a set of pre-created tools called ‘Pintools’. Some of these tools are really useful for Oracle investigation and research.