Вы находитесь на странице: 1из 225

Innovative Technology for Insightful Impact

Richs Overview @richniemiec

Advisor to Rolta International Board


Former President of TUSC

Former President Rolta TUSC & President Rolta EICT


International
Author (3 Oracle Best Sellers #1 Oracle Tuning Book for a
Decade):

Inc. 500 Company (Fastest Growing 500 Private Companies)


10 Offices in the United States (U.S.); Based in Chicago
Oracle Advantage Partner in Tech & Applications

Oracle Performing Tips & Techniques (Covers Oracle7 & 8i)


Oracle9i Performance Tips & Techniques
Oracle Database 10g Performance Tips & Techniques

Former President of the International Oracle Users Group


Current President of the Midwest Oracle Users Group
Chicago Entrepreneur Hall of Fame - 1998
E&Y Entrepreneur of the Year & National Hall of Fame - 2001
IOUG Top Speaker in 1991, 1994, 1997, 2001, 2006, 2007
MOUG Top Speaker Twelve Times
National Trio Achiever award - 2006
Oracle Certified Master & Oracle Ace Director
Purdue Outstanding Electrical & Computer and Engineer - 2007
2

New Position

Nobody Does IT Better


Applications

Infrastructure

Create, Innovate, Manage

Plan, Build, Integrate

Strategy
Implementation
Managed Services

Data Centers
Cloud and Virtualization
Mobility and Security

AdvizeX and ROLTA

Business Applications (EBS, BI, EPMetc.)


Middleware
Database & Managed Services

Infrastructure Applications Exchange, SharePoint


Storage
Server Platform
Network

Desktop, Mobility, and End User Compute


Management Tools

Redefining Value and Solutions for Customers

Agenda Whats Important Now (W.I.N.)


Oracle Trends
In-Memory Option

12c Key Features


FMW & Cloud (Apps)

Engineered Systems
Big Data & IOT (Internet of Things)

Know the Oracle

Oracle Firsts Innovation!


1979 First commercial SQL relational database management system
1983 First 32-bit mode RDBMS
1984 First database with read consistency
1987 First client-server database
1994 First commercial and multilevel secure database evaluations
1995 First 64-bit mode RDBMS
1996 First to break the 30,000 TPC-C barrier
1997 First Web database
1998 First Database - Native Java Support; Breaks 100,000 TPC-C
1998 First Commercial RDBMS ported to Linux
2000 First database with XML
2001 First RDBMS with Real Application Clusters & First middle-tier database cache
2004 First True Grid Database
2005 First FREE Oracle Database (10g Express Edition)
2006 First Oracle Support for LINUX Offering
2007 Oracle 11g Released!
2008 Exadata V1 Server Announced (Oracle buys BEA)
2009 Oracle buys Sun Java; MySQL; Solaris; Hardware; OpenOffice
2010 Oracle announces MySQL Cluster 7.1, Exadata, Exalogic, Americas Cup Win
2011 X2-2 Exadata, ODA, Exalytics, SuperCluster, Big Data, Cloud, Social Network
2012 X3-2 Exadata, Expanded Cloud Offerings, Solaris 11.1
2013 Oracle12c Released! Oracle X3-8 Exadata, Acquisitions (Acme Packetetc.)!
2014 Acquisitions/New: Responsys (Marketing) & Corente (cloud); In-Memory DB

MANY OTHERS WITHIN THIS PRESENTATION!


8

Thanks oracle.com for many slides!

How BIG Oracle is Getting - OW

10

11

How about the Oracle JAVA World?

12

Carpeting the STREET!

13

Were #1 in Everything!

Oracle In the News

12.1.0.2

In-Memory (IM) Overview


Transactions run faster on row format
Example: Insert or query a sales order
Fast processing few rows, many columns
The BUFFER CACHE is used

Row

Analytics run faster on column format


Example : Report on sales totals by region
Fast accessing few columns, many rows

Column

The In-Memory Column Store is used

Memory
Transactions
In the
Buffer Cache

Thanks Oracle: Graphics

Memory

SALES
Row
Format

SALES
Column
Format

18

Analytics
In the
In-Memory
Column Store

IM Why its a Better Way

12.1.0.2

Reasons why IM is more better than others:


Access only column data needed
Scan/filter data in compressed format
Using storage indexes to prune using min/max
Use SIMD to apply filter predicates using vector
processing evaluate multiple values with a single
CPU instruction. Billions of rows scanned vs.
millions in buffer cache.
Can be partially populated during startup and later
filled with accessed objects (there are also crash
benefits see docs).
19

IM - Basics

12.1.0.2

You may remove some indexes on tables (make


invisible initially); Leave indexes that support referential
integrity and fast OLTP access to small amounts of data.
Buffer cache usually only has 10% or less of a table
(unless its very small), where IM has 100% of the table.
Some products force you to cache the entire database
Oracle allows object level INMEMORY.
IM does not have an LRU (like buffer cache), When full
- another object in the IM must be dropped or
declared NO INMEMORY a warning in the alert log
that an attempt was made to populate data and the IM
column store is full!
20

With In-Memory Drop Analytics Indexes?

12.1.0.2

Oracles new In-Memory Option*

12.1.0.2

100x faster real time analytics queries


2x faster OLTP & 3-4x faster INSERTS
Oracle demo showed Wikipedia query 1354x
faster than NO INDEX vs. NO INDEX using InMemory (Drop analytics indexes?)
Easy settings** (flip a switch):
inmemory_size = 2000G
alter table EMP inmemory;
(also alter for individual partition)
* Announced /not yet available (loaded on startup/first access)
** No documented/undocumented parameter in current version.

IM - Initialization Parameters

12.1.0.2

The Database In-Memory is not enabled if:


INMEMORY_SIZE is set to zero!
Add space to the SGA_TARGET to accommodate
the IM: ALTER SYSTEM SET SGA_TARGET=200G
scope=both (SGA_TARGET must be large enough
for new IM)
ALTER SYSTEM SET INMEMORY_SIZE=100G
scope=both
The IM Column Store (IM) creates an area in the
SGA called In-Memory Area (IM Column Store).
This is an added memory area in addition to the
buffer cache and other SGA areas.
23

12.1.0.2 In-Memory Column Store


MANY code examples Just FYI

24

12.1.0.2

12.1.0.2

IM Alter object to use it

12.1.0.2

Place entire tablespace (puts tables/partitions/mv into IM):


SQL> ALTER TABLESPACE tbcsp1 INMEMORY;
Instantly remove the emp table from the IM column store:
SQL> ALTER TABLE emp NO INMEMORY;

Instantly remove D1 Partition(dept) from IM column store:


SQL> ALTER TABLE dept MODIFY PARTITION d1 NO
INMEMORY;
A partitioned table automatically inherits whether or not the table is
IM. You can remove the D1 partition on the DEPT table from the IM
immediately:
25

IM Exclude Columns from IM

12.1.0.2

Exclude some columns from going into the IM (default


is all columns go into IM):
SQL> ALTER TABLE emp INMEMORY NO
INMEMORY (ename, job, mgr, hiredate, deptno,
sal, comm);
Table altered.

The example above shows how to only put empno


column into the IM Column Store

26

IM Priority Levels

12.1.0.2

Change the Priority Level: Objects are populated based


on priority or immediately if they are accessed. The
priorities that you can set are:
CRITICAL Populated upon database opening
HIGH Populated after CRITICAL if space exists in
IM
MEDIUM After CRITICAL/HIGH if space exists in
IM
LOW - After CRITICAL/HIGH/MEDIUM if space
exists
NONE (default) Populated only when accessed
for the first time if space exists in IM
27

The Virtual Column

12.1.0.2

Populate EMP table on database startup (when open):


ALTER TABLE emp INMEMORY PRIORITY CRITICAL;
Table altered.

Populate the EMP table upon first access:


ALTER TABLE emp INMEMORY
Table altered.

28

IM - Compression

12.1.0.2

Compression Level when populating the IM :


NO MEMCOMPRESS Populate IM without compressing
MEMCOMPRESS FOR DML Minimal compression for DML
MEMCOMPRESS FOR QUERY LOW Optimized for query
(DEFAULT)
MEMCOMPRESS FOR QUERY HIGH Optimized for query
but save more space
MEMCOMPRESS FOR CAPACITY LOW Balanced with
bias toward saving space (+OZIP)
MEMCOMPRESS FOR CAPACITY HIGH Optimized for
best space savings (slowest)
Usually get 2-20x; Ive seen 50x+
29

IM IMCUs & Compression

12.1.0.2

Create the EMP table using the IM, with compression


settings for QUERY, not populating DEPTNO column,
and compressing the ename column at higher level:
CREATE TABLE emp77 (EMPNO number(4), ENAME
varchar2(10), DEPTNO number (2))
INMEMORY MEMCOMPRESS FOR QUERY HIGH
NO INMEMORY(deptno)
INMEMORY MEMCOMPRESS FOR CAPACITY HIGH(ename);

Table created.

30

Check IM in USER_TABLES

12.1.0.2

SQL> alter table emp inmemory;


Table altered.

select table_name, inmemory, inmemory_priority,


inmemory_compression
from user_tables
where table_name = 'EMP'
TABLE_NAME
INMEMORY INMEMORY_P INMEMORY_COMPRESS
---------------------------- -------- ----------- ----------------EMP
ENABLED NONE
FOR QUERY LOW

31

Running queries using IM

12.1.0.2

Execution Plans for IM (may use IM for this query):


SELECT EMPNO
FROM EMP
ORDER BY EMPNO;
EMPNO
---------7839

-------------------------------------------------------------------------| Id | Operation
|Name |
-------------------------------------------------------------------------| 0 | SELECT STATEMENT
|
|
| 1 | SORT AGGREGATE
|
|
| 2 | PARTITION RANGE ALL
|
|
|* 3 | TABLE ACCESS INMEMORY FULL | EMP |
-------------------------------------------------------------------------32

Oracles new In-Memory Option

12.1.0.2

NO SQL coding changes necessary.


NO SQL restrictions mentioned
NO changes required to any applications
NO changes to the data itself
NO changes if you use multitenant (CDB/PDBs)
NO changes if you use it in the Cloud

Some questions remain:


How much will it cost is it a $$ option?
How much additional memory do I need?
How much physical space will I save?
How compressed is the columnar compression?

Oracle DEMO 5M rows/sec No Index


7B rows/sec In-Memory with No Index (InMem)

Oracles In-Memory Option LIVE DEMO

12.1.0.2

3B row table search:


INDEXED = 2B rows/sec
UNINDEXED = 5M rows/sec
In-Memory = 7B rows/sec (with NO INDEX)

In-Memory = 1354x faster than UNINDEXED search


Tuning = 400x faster than UNINDEXED search
In-Memory = 3.5x faster than INDEX search
3.5x faster for this example only, but no index saves
space and DML costs so there are multiple benefits. If
not properly indexed its much more!

341 Billion Rows per Second!!

36

12.1.0.2

IM Why so fast?
SIMD (Simple Instruction, Multiple Data)

Concept of SIMD

12.1.0.2

Oracle SIMD From Oracle

Performs the same operation on multiple data points


simultaneously - Wikipedia (i.e. Scans multiple data values in
the same CPU instruction (instead of one at a time)).
37

The 12c Multi-Tenant Database


MANY code examples Just FYI

We Beta Tested it for you

Pluggable Databases are Here!

39

Start with a Pristine Oracle System and


Brand New Oracle Database

Install New DB

Add User Data

More Data

Non-CDB

Pristine DB

Separate PDB

Keep Pristine DB Separated


40

Pluggable Databases

CDB = Container Database (has Root DB & also has a seed PDB)
PDB = Pluggable Database (plugged into a CDB)
Non-CDB = Original type of Database (neither a CDB or PDB)
Why?: Cant consolidate 100s of database on one machine too
many resources required when you add the SGAs up! Enter PDBs.
Share: Big Data Sources, Acquisitions, Partners, Shared Research,
Governments

Quickly create a new database (PDB) or copy existing one (PDB)


Move existing PDBs to new platform or location or clone it (snapshot)
Patch/Upgrade PDB by plugging it into a CDB at a later version
Physical machine runs more PDBs old way: Easier to manage/tune
Backup entire CDB + any number of PDBs
New syntax for commands: PLUGGABLE DATABASE
Prepare NOW by analyzing your architecture!
41

Containers 0 - 254

Entire CDB => Container ID = 0


Root (CDB$ROOT) => Container ID = 1
Seed (PDB$SEED) => Container ID = 2
PDBs => Container ID = 3 to 254

(While in PDB1):
SQL> SHO CON_ID CON_NAME

(Connect to ROOT):
SQL> connect / as sysdba
SQL> SHO CON_ID CON_NAME

CON_ID
-----------------------------3

CON_ID
-----------------------------1

CON_NAME
-----------------------------PDB1

CON_NAME
-----------------------------CDB$ROOT

42

(integer overflow!)

CDB or PDB created


Background Processes /SGA (shared by root & all
PDBs)
Character Set shared by root & all PDBs
Redo shared by root and all PDBs
Undo shared by root and all PDBs
Time Zones can be set for each PDB
Initialization parameters some can be set by PDB
Temporary Tablespace each PDB (future may share)
Separate SYSTEM & SYSAUX for root & each PDB
Data files separate for root & each PDB (same block
size)
43

Pluggable Databases

44

Query the PDBs


select name, open_mode, open_time
from v$pdbs;
NAME
--------------PDB$SEED
PDB1
PDB_SS

OPEN_MODE
---------READ ONLY
READ WRITE
READ WRITE

OPEN_TIME
-------------------------23-FEB-13 05.29.19.861 AM
23-FEB-13 05.29.25.846 AM
23-FEB-13 05.29.37.587 AM

45

Pluggable Databases
PDB is backward compatible with pre-12c database.
Common users like SYS, SYSTEM connect to the CDB and
also across all PDBS in which it has privileges (you can create
your own common users as well). Common users
create/plug/unplug PDBs.
Privileged common users can even switch CDBs
Local users are only in a SINGLE PDB (dwadm, erpadm
etc.)
Listener, Service Name, ..etc. needed
One CDB has same software version, Active Data Guard,
RMAN Backups, Initialization parameters related to database
level (character set for instance)
Plug or unplug a PDB into a CDB. Plug it in to associate it
with the CDB, consisting of the XML file describing the PDB and
its files (database files and wallet file)
46

Creating a PDB: Many ways to do it


Create a PDB by copying the seed PDB
Create a PDB by cloning another PDB
Create a PDB by using the XML metadata files
and other files and plugging them into a CDB
Create a PDB using a non-CDB (multiple ways)
Use DBMS_PDB to create an unplugged PDB
Create an empty PDB and use data pump to move data
Using GoldenGate replication to create

47

Cloning a PDB
CREATE PLUGGABLE DATABASE pdb2 FROM pdb1;
*

ERROR at Line 1:
ORA-65016: FILE_NAME_CONVERT must be specified

CREATE PLUGGABLE DATABASE pdb2 FROM pdb1


FILE_NAME_CONVERT =
('/u01/app/oracle/oradata/cdb1/pdb1',
'/u01/app/oracle/oradata/cdb1/pdb2);

Note: pdb1 must be OPEN and READ ONLY mode or ORA-65001


48

Unplug/Plug-in a 12.1 PDB

CDB with 2 PDBs

=
CDB with 1 PDB

Unplug PDB

Plug into a Different CDB (12.2):

+
49

Plug in an Unplugged PDB


CREATE PLUGGABLE DATABASE dwpdb USING
'/disk1/usr/dwpdb.xml' NOCOPY TEMPFILE REUSE;
CREATE PLUGGABLE DATABASE dwpdb USING
'/disk1/usr/dwpdb.xml'
SOURCE_FILE_NAME_CONVERT = ('/disk1/oracle/dw/',
'/disk2/oracle/dw/') NOCOPY STORAGE (MAXSIZE 4G
MAX_SHARED_TEMP_SIZE 100M) TEMPFILE
REUSE;
You can unplug/plug across database version boundaries!

50

Unplugging & Dropping PDBs

ALTER PLUGGABLE DATABASE dwpdb


UNPLUG INTO '/oracle/data/dwpdb.xml';
DROP PLUGGABLE DATABASE dwpdb KEEP
DATAFILES;
DROP PLUGGABLE DATABASE dwpdb
INCLUDING DATAFILES;

51

Moving between CDB/PDBs - Switch Containers


SQL> ALTER SESSION SET CONTAINER=PDB1;
Session altered.
SQL> alter session set container=CDB1;
ERROR:
ORA-65011: Pluggable database does not exist
ALTER SESSION SET CONTAINER=CDB$ROOT;
Session altered.

ALTER SESSION SET CONTAINER=PDB$SEED;


Session altered.
ALTER SESSION SET CONTAINER=pdb_ss; (not case sensitive)
Session altered.

52

Open/Close PDBs
SQL> ALTER PLUGGABLE DATABASE CLOSE IMMEDIATE;
Pluggable database altered.
SQL> ALTER PLUGGABLE DATABASE OPEN READ WRITE;
Pluggable database altered.
SQL> ALTER PLUGGABLE DATABASE CLOSE; (shutdown)
Pluggable database altered.

Alter pluggable database open upgrade; (to migrate)


Pluggable database altered.

53

Open/Close PDBs
ALTER PLUGGABLE DATABASE PDB_SS, PDB1 CLOSE; (not in CDB)
ALTER PLUGGABLE DATABASE PDB_SS, PDB1 CLOSE
*
ERROR at line 1:
ORA-65040: operation not allowed from within a pluggable database

alter session set container=CDB$ROOT;


Session altered.

alter pluggable database ALL open read only; (from CDB)


Pluggable database altered.
ALTER PLUGGABLE DATABASE PDB_SS, PDB1 CLOSE;
Pluggable database altered.

54

Check PDB status


select name, open_mode,
from
v$pdbs;
NAME
---------PDB$SEED
PDB1
PDB_SS

OPEN_MODE
---------READ ONLY
MOUNTED
MOUNTED

open_time

OPEN_TIME
------------------------11-MAR-13 09.29.18.284 PM
27-MAR-13 01.19.02.666 AM
27-MAR-13 01.19.02.985 AM

55

Open/Close PDBs
ALTER PLUGGABLE DATABASE PDB_SS, PDB1 open;
Pluggable database altered.
select name, open_mode,
from
v$pdbs;

NAME
---------PDB$SEED
PDB1
PDB_SS

OPEN_MODE
---------READ ONLY
READ WRITE
READ WRITE

open_time

OPEN_TIME
------------------------11-MAR-13 09.29.18.284 PM
27-MAR-13 01.26.32.905 AM
27-MAR-13 01.26.36.559 AM

56

Open/Close PDBs
alter pluggable database all except pdb1 close immediate;
Pluggable database altered.
select name, open_mode,
from
v$pdbs;
NAME
---------PDB$SEED
PDB1
PDB_SS

OPEN_MODE
---------READ ONLY
READ WRITE
MOUNTED

open_time

OPEN_TIME
------------------------11-MAR-13 09.29.18.284 PM
27-MAR-13 01.26.32.905 AM
27-MAR-13 01.29.47.225 AM

alter pluggable database pdb$seed close immediate;


alter pluggable database pdb$seed close immediate
*

ERROR at line 1:
ORA-65017: seed pluggable database may not be dropped or altered

57

Startup PDB
Startup pluggable database pdb1 open;(read/write)
Pluggable Database opened.
(or while in pdb1 just run STARTUP)

Startup pluggable database pdb1 open read only;


Pluggable Database opened.
Startup pluggable database pdb1 force; (closes/opens)
Pluggable Database opened.
(or while in pdb1 just run STARTUP FORCE)

58

Careful New commands!


SQL> SHUTDOWN PLUGGABLE DATABASE PDB1;
SP2-0717: illegal SHUTDOWN option
SQL> STARTUP
Pluggable Database opened.
SQL> SHUTDOWN (also SHUTDOWN ABORT works)
ORACLE instance shut down.
select name, open_mode,
from
v$pdbs;

open_time

NAME
OPEN_MODE OPEN_TIME
---------- ---------- ------------------------PDB1
MOUNTED
27-MAR-13 01.50.25.345 AM

59

Query PDBs after PDB1 shutdown


SQL> connect / as sysdba
Connected.
select name, open_mode,
from
v$pdbs;
NAME
---------PDB$SEED
PDB1
PDB_SS

OPEN_MODE
---------READ ONLY
MOUNTED
READ WRITE

open_time

OPEN_TIME
------------------------11-MAR-13 09.29.18.284 PM
27-MAR-13 02.00.06.536 AM
27-MAR-13 01.41.58.049 AM

60

When you startup the CDB


SQL> startup
ORACLE instance started.
Total System Global Area
Fixed Size
Variable Size
Database Buffers
Redo Buffers
Database mounted.
Database opened.

626327552
2276008
524289368
92274688
7487488

bytes
bytes
bytes
bytes
bytes

select name, open_mode,


from
v$pdbs;
NAME
---------PDB$SEED
PDB1
PDB_SS

open_time

OPEN_MODE OPEN_TIME
---------- ------------------------READ ONLY 27-MAR-13 02.04.46.883 AM
MOUNTED
MOUNTED
61

RMAN & other Nice Commands

alter pluggable database all open;


(great command!)

RMAN> alter pluggable database pdb1 close;


RMAN> restore pluggable database pdb1;
RMAN> recover pluggable database pdb1 until
SCN 777070;
RMAN> alter pluggable database pdb1 open
resetlogs;
srvctl add service pdb <pdb_name>
62

Where is Everything?
SELECT d.con_ID, p.PDB_NAME, d.FILE_ID, d.TABLESPACE_NAME,
d.FILE_NAME
FROM
CDB_PDBS p, CDB_DATA_FILES d
WHERE p.PDB_ID(+) = d.CON_ID
order by d.con_id;
CON_ID PDB
FILE_ID TABLESPACE_NAME FILE_NAME
--------- --------- --------- ---------------- ----------------------------------------------1
6 USERS
/u01/app/oracle/oradata/cdb1/users01.dbf
1
4 UNDOTBS1
/u01/app/oracle/oradata/cdb1/undotbs01.dbf
1
3 SYSAUX
/u01/app/oracle/oradata/cdb1/sysaux01.dbf
1
1 SYSTEM
/u01/app/oracle/oradata/cdb1/system01.dbf
2 PDB$SEED
2 SYSTEM
/u01/app/oracle/oradata/cdb1/pdbseed/system01.dbf
2 PDB$SEED
5 SYSAUX
/u01/app/oracle/oradata/cdb1/pdbseed/sysaux01.dbf
3 PDB1
7 SYSTEM
/u01/app/oracle/oradata/cdb1/pdb1/system01.dbf
3 PDB1
8 SYSAUX
/u01/app/oracle/oradata/cdb1/pdb1/sysaux01.dbf
4 PDB_SS
9 SYSTEM
/u01/app/oracle/oradata/cdb1/pdb_ss/system01.dbf
4 PDB_SS
10 SYSAUX
/u01/app/oracle/oradata/cdb1/pdb_ss/sysaux01.dbf
4 PDB_SS
11 EXAMPLE
/u01/app/oracle/oradata/cdb1/pdb_ss/example.dbf
11 rows selected.

63

Map tables to PDBs


SELECT
FROM
where
AND
ORDER

p.PDB_ID, p.PDB_NAME, t.OWNER, t.TABLE_NAME


CDB_PDBS p, CDB_TABLES t
p.PDB_ID = t.CON_ID
T.OWNER ='ORDDATA
BY t.TABLE_NAME;

PDB_ID
---------2
3
2
3
3
2
3
2

PDB_NAME
---------PDB$SEED
PDB1
PDB$SEED
PDB1
PDB1
PDB$SEED
PDB1
PDB$SEED

OWNER
---------ORDDATA
ORDDATA
ORDDATA
ORDDATA
ORDDATA
ORDDATA
ORDDATA
ORDDATA

TABLE_NAME
-----------------------------ORDDCM_ANON_ACTION_TYPES
ORDDCM_ANON_ACTION_TYPES
ORDDCM_ANON_ATTRS
ORDDCM_ANON_ATTRS
ORDDCM_ANON_ATTRS_TMP
ORDDCM_ANON_ATTRS_TMP
ORDDCM_ANON_ATTRS_WRK
ORDDCM_ANON_ATTRS_WRK

64

Able to modify initialization parameter for a


given PDB
SELECT NAME FROM V$PARAMETER

WHERE

ISPDB_MODIFIABLE

AND

NAME LIKE 'optim%;

= 'TRUE'
(without condition can set 147 parameters out of 357)
(There were 341 parameters in 11gR2)

NAME
---------------------------------------optimizer_adaptive_reporting_only
optimizer_capture_sql_plan_baselines
optimizer_dynamic_sampling
optimizer_features_enable
optimizer_index_caching
optimizer_index_cost_adj
optimizer_mode
optimizer_use_invisible_indexes
optimizer_use_pending_statistics
optimizer_use_sql_plan_baselines
10 rows selected.

Key ones modifiable: cursor_sharing, open_cursors, result_cache_mode, sort_area_size


Key ones NOT modifiable: shared_pool_size, db_cache_size, memory_target, pga

65

Set PDB Resource Plans


If 4 PDBs have 3 shares each, there are 12 shares total and each has
3/12 or 1/4th of the CPU resources (and parallel query resources).
If 2 PDBs have 3 shares & 2 PDBs have 1 share, then the ones with 3
shares have 3/8ths of the CPU resources and are 3x more likely to
queue parallel queries than the ones that have 1 share.
CPU utilization_limit (cpu) and parallel_server_limit (parallel query
resources) percents also can be set.
BEGIN DBMS_RESOURCE_MANAGER.CREATE_CDB_PLAN_DIRECTIVE(
plan => 'newcdb_plan',
pluggable_database => pdb1',
shares => 3,
utilization_limit => 70,
parallel_server_limit => 70);
END;
/
66

Resource Plans for CDB/PDB


(Use 12c Cloud Control OEM)

67

Pluggable Databases are Here!


IM with CDB/PDB
IMMEMORY_SIZE
(Shared by all PDBs)

Local
IM alloc

Local
IM alloc

Local
IM alloc

Global CDB INMEMORY_SIZE


There are local settings in each PDB as well
Place objects INMEMORY in each PDB
Starting PDBs & setting PRIORITY very important
68

Vbox running 12c Database

69

Invisible Columns

Invisible Columns
The new 12c feature allows you to hide columns
If a user or developer selects ALL columns (or does a DESC)
from a table (i.e. select *) the invisible columns will NOT be
displayed.
If a user specifically selects the invisible column (i.e. select
salary,) the column WILL be displayed in the output (you
have to know its there).
You can set column(s) to be visible/invisible with an alter table :

SQL> ALTER TABLE EMPLOYEE MODIFY (SSN INVISIBLE);


Table altered.

71

Invisible Columns
Example Simple EMP SELECT
SELECT *
FROM EMP
WHERE SAL > ANY
(SELECT SAL
FROM EMP
WHERE DEPTNO=30)
AND DEPTNO=10
ORDER BY SAL DESC;
EMPNO
---------7839
7782
7934

ENAME
---------KING
CLARK
MILLER

JOB
MGR HIREDATE
DEPTNO
SAL COMM
--------- ----- --------- ------- ---------- ----PRESIDENT
17-NOV-81
10
5000 1000
MANAGER
7839 09-JUN-81
10
2450
0
CLERK
7782 23-JAN-82
10
1300
0

Both SAL & COMM columns displayed above!


72

Invisible Columns
alter table emp modify (sal invisible, comm invisible);
Table altered.
SELECT *
FROM EMP
WHERE SAL > ANY
(SELECT SAL
FROM EMP
WHERE DEPTNO=30)
AND DEPTNO=10
ORDER BY SAL DESC;
EMPNO
---------7839
7782
7934

ENAME
---------KING
CLARK
MILLER

JOB
MGR HIREDATE
DEPTNO
--------- ----- --------- ------PRESIDENT
17-NOV-81
10
MANAGER
7839 09-JUN-81
10
CLERK
7782 23-JAN-82
10

No SAL or COMM columns displayed above!


73

Invisible Columns
Example sal invisible but selected
SELECT SAL, JOB, ENAME,DEPTNO
FROM EMP
WHERE SAL > ANY
(SELECT SAL
FROM EMP
WHERE DEPTNO=30)
AND DEPTNO=10
ORDER BY SAL DESC;
SAL
---------5000
2450
1300

JOB
--------PRESIDENT
MANAGER
CLERK

ENAME
DEPTNO
---------- ------KING
10
CLARK
10
MILLER
10

SAL column IS displayed since I specifically SELECTED it.


74

Invisible Columns
Example sal/comm to visible
To turn it back to being visible):
ALTER TABLE EMP MODIFY (SAL VISIBLE, COMM VISIBLE);
Table Altered.

Note: This is not for heavy security; there are other ways to achieve that:

You can use column level security using Oracle's VPD (Virtual
Private Database) to create a policy function and apply the policy
function to our table, so that it does NOT display certain rows for a
given deptno, BUT ONLY when the salary and/or COMM columns are
selected. So all rows displayed when I DON'T choose SAL and/or
COMM and all rows EXCEPT deptno 10 when I DO choose the SAL
and/or COMM columns.
You could also use TDE (Transparent Data Encryption) to encrypt
the data for a given column. This is part of Oracle's Database
Advanced Security Options and has certain restrictions.
75

The Invisible Index


(Briefly See 12c Best Tuning Features on
the web for more)

The Invisible Index


Set an index to VISIBLE or INVISIBLE
ALTER INDEX idx1 INVISIBLE;
ALTER INDEX idx1 VISIBLE;
CREATE INDEX... INVISIBLE;

Great to turn off indexes for a while when you think


theyre not being used, but BEFORE you drop them.
Can NOT use INDEX hint (to override invisibility)
anymore, but CAN use NO_INDEX (to turn off visible
indexes).
The index IS MAINTAINED during DML
Great for testing!

77

The Invisible Index


create index deptno_invisible_idx on dept_rich(deptno) invisible;
Index created.

select count(*) from dept_rich where deptno = 30; (doesnt see


the index)
COUNT(*)
-------------512
Execution Plan
---------------------------------------------------------Plan hash value: 3024595593
-------------------------------------------------------------------------------| Id | Operation
| Name
| Rows | Bytes | Cost (%CPU)| Time
|
-------------------------------------------------------------------------------|
0 | SELECT STATEMENT
|
|
1 |
2 |
4
(0)| 00:00:01 |
|
1 | SORT AGGREGATE
|
|
1 |
2 |
|
|
|* 2 |
TABLE ACCESS FULL| DEPT_RICH | 512 | 1024 |
4
(0)| 0:00:01 |
-------------------------------------------------------------------------------78

The Invisible Index (set visible)


alter index dept_rich_inv_idx visible;
Index altered.

select count(*) from dept_rich where deptno = 30;


(it does see the index)
COUNT(*)
-------------512
Execution Plan
---------------------------------------------------------Plan hash value: 3699452051
--------------------------------------------------------------------------------------| Id | Operation
| Name
| Rows | Bytes | Cost (%CPU)| Time
|
--------------------------------------------------------------------------------------|
0 | SELECT STATEMENT |
|
1 |
2 |
1
(0)| 00:00:01 |
|
1 | SORT AGGREGATE
|
|
1 |
2 |
|
|
|* 2 |
INDEX RANGE SCAN| DEPT_RICH_INV_IDX | 512 | 1024 |1 (0)| 00:00:01 |
---------------------------------------------------------------------------------------

79

Multiple Types of Indexes on the


Same Column
(Using the Invisible Index)

Multiple Types of Indexes on Same Column(s)

Create MORE than one index on a column


Set only ONE index to VISIBLE
Ok to have ONE + any Function Based Index
(exception)
Great to use different types of indexes for batch,
query, or data warehousing at different times.
Some restrictions applyfor a give column(s)
You can not create a B-tree AND B-tree cluster index
You can not create a B-tree and an index-organized table
(IOT)

All indexes ARE MAINTAINED during DML


DML could be slow if TOO MANY indexes are created

Great for variable workloads!


81

Multiple Types of Indexes on Same Column(s)


Create a Unique Index:
create unique index dept_unique1 on
dept(deptno);
Index created.

select a.table_name, a.index_name,


b.column_name, a.uniqueness, a.visibility
from
user_indexes a, user_ind_columns b
where a.index_name = b.index_name
and
a.table_name = DEPT;
TABLE_NAME INDEX_NAME
COLUMN_NAME UNIQUENESS
VISIBILITY
---------- --------------- ------------ ------------ ----------DEPT
DEPT_UNIQUE1
DEPTNO
UNIQUE
VISIBLE

82

Multiple Types of Indexes on Same Column(s)


Try to create a second index on same column:
create index dept_normal on dept(deptno);
create index dept_normal on dept(deptno)
*
ERROR at line 1:
ORA-01408: such column list already indexed

Make FIRST Index Invisible & can now create SECOND index:
alter index dept_unique1 invisible;
Index altered.

create index dept_normal on dept(deptno);


Index created.

83

Multiple Types of Indexes on Same Column(s)


Check the Indexes Views TWO Indexes on the same column:
select a.table_name, a.index_name,
b.column_name, a.uniqueness, a.visibility
from
user_indexes a, user_ind_columns b
where a.index_name = b.index_name
and
a.table_name = DEPT;
TABLE_NAME
---------DEPT
DEPT

INDEX_NAME
--------------DEPT_UNIQUE1
DEPT_NORMAL

COLUMN_NAME
-----------DEPTNO
DEPTNO

84

UNIQUENESS
-----------UNIQUE
NONUNIQUE

VISIBILITY
---------INVISIBLE
VISIBLE

Multiple Types of Indexes on Same Column(s)


Add indexes FIVE Indexex on the same column:
select a.table_name, a.index_name,
b.column_name, a.uniqueness, a.visibility
from
user_indexes a, user_ind_columns b
where a.index_name = b.index_name
and
a.table_name = DEPT;
TABLE_NAME
---------DEPT
DEPT
DEPT
DEPT
DEPT

INDEX_NAME
--------------DEPT_UNIQUE1
DEPT_REVERSE
DEPT_NORMAL
DEPT_BITMAP
DEPT_FB

COLUMN_NAME
-----------DEPTNO
DEPTNO
DEPTNO
DEPTNO
SYS_NC00004$

UNIQUENESS
-----------UNIQUE
NONUNIQUE
NONUNIQUE
NONUNIQUE
NONUNIQUE

VISIBILITY
---------INVISIBLE
INVISIBLE
INVISIBLE
VISIBLE
VISIBLE

(Index types: NORMAL, NORMAL/REV, UNIQUE, BITMAP, FUNCTION-BASED NORMAL)

85

Adaptive Query Optimization


(Thanks Oracle docs.)

Adaptive Query Optimization


Adaptive query optimization allows optimizer to adjust execution
plan at run time when additional/better information is available.
Adaptive Plans: Different Join Methods (change NL to HASH) or Parallel
Distribution
Adaptive Statistics: Dynamic stats, Auto Reoptimization, and SQL Plan Directives

Adaptive Plans does not pick the final plan until execution time
based on statistics collection. Information learned at execution time
is used in future executions. Youll see the plan table output in the
note section:
Note
-------------------------- this is an adaptive plan

The 12c Adaptive Optimizer adapts plans based on not just the
original tables stats, but also additional adaptive statistics
There are three types of Adaptive Statistics:
Dynamic Statistics (previously dynamic sampling in 10g/11g) or runtime statistics
Automatic Reoptimization or statistics generated after the initial execution
SQL Plan Directives direct optimizer to dynamic statistics & gets accurate cardinality
87

Adaptive Query Optimization:


Oracle Docs Great Example

88

Adaptive Query Optimization:


Oracle Docs Great Example

Shows Final Plan

Shows Initial Plan


89

Runaway Query Management

Runaway Query Management


Resource Manager now pro-actively manages problems
queries and takes action based on settings for a given
consumer group when:

CPU is exceeded
Physical I/O is exceeded (disk)
Logical I/O is exceeded (memory)
Elapsed Time is exceeded

This can be automated!


New views allow the DBA to see problem queries that are
over the limit for each Consumer Group (can be set to
automatically be terminated or can be switched to a new
group with lower resources)
Views are persisted in the AWR
Must have the appropriate resources to manage this
Can be set based on start of session or start of SQL or
PL/SQL:
SWITCH_FOR_CALL resource plan directive
91

Runaway Query Management


(Oracle 12c DBA Guide example)

Create a Resource
plan Directive that
kills any session that
exceeds 60 seconds
of CPU time
Create a Resource plan
Directive that switches
sessions to low_group if >
10000 physical IOs or
>2500M of data
transferred. Session
returns to original group
after bad query ends

BEGIN
DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE (
PLAN => 'DAYTIME',
GROUP_OR_SUBPLAN => 'OLTP',
COMMENT => 'OLTP group',
MGMT_P1 => 75,

SWITCH_GROUP => 'KILL_SESSION',


SWITCH_TIME => 60);
END;
/
BEGIN
DBMS_RESOURCE_MANAGER.CREATE_PLAN_DIRECTIVE (
PLAN => 'DAYTIME',
GROUP_OR_SUBPLAN => 'OLTP',
COMMENT => 'OLTP group',
MGMT_P1 => 75,

SWITCH_GROUP => 'LOW_GROUP',


SWITCH_IO_REQS => 10000,
SWITCH_IO_MEGABYTES => 2500,
SWITCH_FOR_CALL => TRUE);
END;
/
92

Monitoring the 12c Database


Using Enterprise Manager CC

Create and Manage 12c DB with CC


(Use 12c Cloud Control OEM)

94

Database Replay Options...


(Thanks Oracle/Jagan Athreya for this slide!)

95

Other 12c Features

Database Instance Smart Flash Cache Support for Multiple Devices (can
access/combine) without the overhead of the local volume manager.
Supports In-Memory Jobs & In-Memory Temporary Tablespaces
Active Data Guard Security has in-memory table of failed login attempts
Heat Map that tracks modifications of rows (block level), table, partition
levels
Automate policy-driven data movement and compression using Heat Map
Move partitions while ONLINE with DML happening / Flex ASM to other
storage
Improved query performance against OLAP cubes (especially Exadata)
Automatic extended stats for groups of columns accessed together
DBMS_STATS.GATHER_TABLE_STATS run on a partitioned table when
CONCURRENT is set to TRUE will gather stats using multiple jobs
concurrently
Online statistics gathered during a bulk load (similar to rebuild index
command)
Flashback Data Archive (FDA) can be fully used on HCC tables on Exadata
Enterprise Manager Database Express 12c ships with every database
(NICE!)
Spot ADDM triggered by high CPU or I/O into AWR Reports
Mask Data At Source for testing & Oracle Masking templates for EBusiness
Oracle Data Redaction (prevents things like SSN from being displayed)
96

Other 12c Features

Full Transportable support & Point-in-time recovery for PDBs


TRUNCATE TABLE CASCADE (truncate child tables too)
Data Pump No Logging Option for import
No-echo of Encryption Passwords on expdp/impdp commands
Sql*Loader Express Mode no control file!
In-Database MapReduce (Big Data)
Update strong user authentication using kerberos & Simplified Vault
administration
Many Windows enhancements (if you must use Windoze)
Fast Application Notification (FAN) gets improved with Application Continuity
which helps recover incomplete requests without executing more than once.
Real-Time Apply (redo) is now default for Data Guard vs. applying archive
logs
SQL Apply Support for Objects, Collections, XML Type, & SecureFiles LOBs
Oracle Spacial is now Oracle Spacial & Graph Enhancements include
routing engine enhancements, caching of index metadata, vector
performance, Asian address support (geocoding), raster algebra & analytics,
enhance image processing
Many ACFS, Oracle Multimedia, Oracle Text & Oracle XML enhancements
VARCHAR2(32767) not default/4K stored inline/>4K out of line(like a LOB)
97

Oracle Strategy & Embracing Mobile

Unbelievable Tools to build GREAT things!

Products have Web/Mobile/Cloud Focus


Web Based Applications
Security for BYOD (Bring Your Own Device)
Capable of many Mobile form factors
iPad, iPad Mini, Android, other Tablets
Smart Phones, other Phones

Development tools - Build once &run on any


platform
Cloud Ready!
Get your Apps Mobile Ready!
Get ready: Internet of Things (IOT)

Oracle Mobile Apps More and More On The Way


PeopleSoft

PeopleSoft

EXPENSES

REQUISITIONS

PeopleSoft

PeopleSoft

PeopleSoft

PeopleSoft

EXPENSES

REQUISITIONS

APPROVAL

COMPANY DIRECTORY

Siebel CRM

Siebel CRM

Siebel CRM

PeopleSoft

OPPORTUNITIES
PeopleSoft

APPROVAL

COMPANY
DIRECTORY

PHARMA SALES LIFE


SCIENCES

PHARMA SALES REP

PeopleSoft

PeopleSoft

PeopleSoft
TRAVEL
Siebel
CRM
AUTHORIZATION

Siebel CRM PROJECTS

TIME REPORTING

PHARMA SALES
REP

PHARMA SALES
LIFE SCIENCES

PeopleSoft

PeopleSoft

Siebel CRMEXECUTIVE HOMEPAGE

CASH MANAGER

PeopleSoft
LINE LEVEL MANAGER

OPPORTUNITIES

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

JD Edwards

PeopleSoft

PeopleSoft

PeopleSoft

PeopleSoft

Siebel CRM

Siebel CRM

SERVICE ORDERS

SERVICE REQUEST
STATUS

RETAIL EXECUTION
CONSUMER GOODS

TPM CONSUMER
GOODS

CONTACTS

FIELD SERVICE

EXPENSES

PAYMENT REQUEST

PROCUREMENT OFFICER
HOMEPAGE

TIME CARD

BENEFIT PLANS
MODIFICATION

CUSTOMER 360

MOBILE KNOWLEDGE

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

Siebel CRM

SERVICE ORDERS

SERVICE REQUEST
STATUS
E-Business
Suite

RETAIL EXECUTION
CONSUMER
GOODS
E-Business
Suite
E-Business Suite

TPM CONSUMER
GOODSSuite
E-Business

CONTACTS

FIELD SERVICE

JD Edwards

JD Edwards

E-Business Suite

REQUSITIONS

PO APPROVAL

SERVICE ORDERS

SAAS HCM

SAAS HCM

COMPANY DIRECTORY

WORKER PORTRAIT

SAAS HCM

JD Edwards
APPROVALS

REQUSITIONS

TRANSPORTATION

SAAS HCM

JDRECRUITING
Edwards
PO APPROVAL

AGILE PLM

REQUEST STATUS

SAAS HCM

SAAS HCM

E-Business Suite
GOALS

RESUME SCREENING

SERVICE ORDERS

ORDERS

SAAS HCM

E-Business
Suite
CANDIDATE
SCREENING

TRANSPORTATION

JD Edwards
EXPENSES

JD Edwards

JD Edwards

JD Edwards

JD Edwards

JD Edwards

JD Edwards

REQUISITIONS

SERVICE ORDERS

PURCHASE ORDERS

PO APPROVAL

SUPPLIER SELF SERVICE

PROJECTS ON THE GO

E-Business Suite

E-Business Suite

E-Business Suite

E-Business Suite

E-Business Suite

E-Business Suite
E-Business
Suite
PROJECTS ON THE GO
WAREHOUSE

SUPPLIER SELF SERVICE

E-Business
SuiteEXPENSES
AGILE PLM

E-Business Suite
COMPANY DIRECTORY

INTEGRATION

AGILE PLM

REQUEST STATUS

ORDERS

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

PeopleSoft

JD Edwards

E-Business Suite

SAAS HCM

RECRUITING

RESUME SCREENING

CANDIDATE
SCREENING

SUCCESSION
PLANNING

TIME CARD

INTERVIEW
MANAGEMENT

TALENT REVIEW

LEARNING

TIME CARD

MAINTENANCE
SERVICE REQUEST

EXPENSES

REQUISITION

APPROVALS

SAAS HCM

PeopleSoft

PeopleSoft

TIMECARD

BENEFIT PLANS
MODIFICATION

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

SAAS HCM

COMPANY
DIRECTORY

WORKER PORTRAIT

APPROVALS

RECRUITING

RESUME
SCREENING

GOALS

SAAS HCM
CANDIDATE
SCREENING

PeopleSoft

Siebel CRM

Siebel CRM

JD Edwards

JD Edwards

E-Business Suite

E-Business Suite

E-Business Suite

E-Business Suite

SAAS HCM

GUIDED SELF SERVICE

PRM

CLIENTELLING

ASSET MANAGEMENT

WAREHOUSE INQUIRY

EXPENSES

ASSET MANAGEMENT

WORKER ABSENCES

WORKER PORTRAIT

WORKER ABSENCES

REQUISITIONS

Thanks Oracle: Graphics

Exadata Paradigm Shift!

Exadata X-3: In-Memory Database


X4-8 is 12T DRAM / 44T Flash (88T Compressed Flash)

103

The X4-2 is much more than X3-2


2x more Flash Memory
4x more Flash Memory with
Flash Compression
77% more Flash IOPS
2X more DRAM
33% more High Capacity Disk
100% more High Performance
Disk
50% more CPU cores
Can expand V2, X2, X3 ( or
rack)
X4-8 announced in August:
240 CPU cores and up to 12
(Oracles picture)
TB of memory for database
*** If on 11.2.3.3+ Does not require Database/ASM /
processing per rack
Cluster upgrade
104

Benefits Multiply*: Access 1/2000th the data; Like


getting 24P memory resident in 12T of an X4-8

10 TB of user data
Requires 10 TB of IO

1 TB
with compression

100 GB
with partition pruning

Sub second
On Database
Machine
20 GB
with Storage Indexes

5 GB
with Smart Scans

Data is 10x Smaller, Scans are 2000x faster


*Oracle Slide Thanks!
105

Exalytics Hot Data Warehouse!

SuperCluster Unreal Speed!

M6-32 Big Memory Machine 32T RAM

Oracles M6-32 Big Memory Machine*


32 M6 Sparc CPUs
384 total cores = 32 CPUs x 12 cores/each
3072 threads = 96 threads/CPU x 32 CPUs

32T of DRAM
Fastest In-Memory Database
1024 Memory DIMMs (Dual In-Line Memory Module)

CPUs communicate using Oracles System


Coherency Interconnect 384 port silicon switching
network - with 3T/sec bandwidth
Enables massive shared memory for In-Memory
Applications
M6 boards plug directly into M5 chassis (same)
*Available NOW!

Oracles M6-32 SuperCluster

Oracles M6-32 SuperCluster Machine*


Fastest Database Machine
Integrated Exadata Storage for 10x database I/O
acceleration
Connected to Exadata Storage Expansion Rack
InfiniBand I/O Interconnect
3T Silicon Network for CPU communications
32T Memory for Column Store

Oracle Demo:
341 B rows/sec WOW!!
(accessing 218B row table sub-second)

*Available NOW!

Software in the Silicon coming soon

Big Data
Rich Niemiec

113

Mark Hurd & Incredible Trends

Mark Hurd & Incredible Trends


Average age of Apps is 20 yearsback then

No Search
Few using the Internet
No Amazon
No Facebook
No Twitter

40% Data growth per year


90% of Data created in past two years
Big bank Now has 300P & growing at 40%
Mobile Retail is getting huge & may be most of
the future market
Oracle will spend $5B in R&D this year

How Much Data


2004 monthly internet traffic >1E; 2010 it was 21E/month.
In 2012, 2.5E data created every day (about 1Z=1000E
per year)
June 2012 Facebook has 100P Hadoop cluster
Facebook: 500T processed daily (210T/hr Hive scanned)
A Single Jet Engine 20T/hour same rate as Facebook!
Gmail has 450 million users
Wal-Mart 1 million customer transactions/hour (2.5P DB)
Large Hadron Colider produced 13P in one year
Business data doubles every 1.2 years
19% of $1B companies have >1P of data (31% in 2013)
2011 First Exabyte tape library from Oracle
Decoding Human Genome took 10 yrs; Now takes a week!

What is Big Data and Big Data Analytics?


Big Data applied to non-structured data sets
whose size is beyond the ability of commonly
used software tools to capture, manage, and
process the data within a tolerable elapsed time.
Big Data Analytics is the process of leveraging
data that is too large in volume, too broad in
variety and too high in velocity to be analyzed
using traditional methodologies.

117

Why use Big Data?

What we
know,
we know

What we
know, we
dont know

What we dont know,


dont know
Cloud Computing, Mobile Computing, SocialweMedia
and Big Data

Analytics are driving the New Computing Paradigm.


This paradigm in-turn sparks-off Business Transformations to
improve Efficiency, Compliance with Regulation and overall
Business Sustainability based on Customer Centricity.

Why Is Big Data Important?

Jiawan Zhang
School of Computer Software,
Tianjin University

Technology Trends: Gartner Hype Cycle 2013

Every Organization Will Use Big Data


Big Data includes: Social Media, Sensor Data, Biological,
Traffic, RFID Data, Environmental, Aerial, Wireless, Security &
Video Data, Retail, Medical, Engineering Systems, Search
Data, Photographs, Call Records, CRM/ERP data, etc.

121

IOUG Survey September 2012

IOUG Survey September 2012

IOUG Survey September 2012

Why so slow? Big B&R issues / HA Issues / Sprawl


Does have Kerberos & Access Control Lists (ACL)
NO role based authentication, LDAP or Active Directory
no encryption on data in transit between nodes. Many
tools also lack security. Also no compression with splits.
Companies DO NOT allow certain data on Hadoop!

Big Data

3V Thinking in a 4V World

Characteristics of Big Data

Finance
Telecom
Retail
Life Sciences
Media
Government

Big Data Themes


HW & SW technologies for large data volumes
Focus on Web 2.0 technologies
Database Scale-out
Relational & Distributed Data Analytics
Distributed File Systems
Real Time Analytics

Big Data Domains


Digital Marketing Optimization
Data Exploration & Discovery
Fraud Detection & Prevention
Social Network & Relationship Analysis
Machine-generated Data Analytics
Data Retention

Big Data Providers

Revolution of Big Data Tools

Google File System (GFS)

Googles
MapReduce

Google BigTable

Apache / Hadoop World


Hadoop File System (HDFS)

MapReduce

Apache Hive
(DWHSE)
ZooKeeper & Pig
(coordination) (Manipulate HDFS)

Hbase
Hypertable
(Baidu uses)
Cassandra
(Based on DynamoDB
[Amazon] and BigTable)

All Data is not similar!

Data Realm Characteristics (Oracle Information Architecture Framework)

NoSQL Databases over 120 (& Data Stores)

Many are EVENTUALLY CONSISTENT unlike Oracles NoSQL Database.

Many NoSQL Databases Eventually Consistent

IOUG Survey September 2012

133

Oracle Database is Loaded with Analytics!


Analytical Feature

Description

Data Mining

Oracle Data Mining implements complex algorithms to discover patterns, predict probable
outcomes, identify key predictors, etc.

Complex data
transformations

ETL capabilities and SQL expressions or DBMS_DATA_MINING_TRANSFORM package.


for missing values, outlier treatments, binning and normalization.

Statistical functions

SQL statistical functions: hypothesis testing ( t-test, F-test), pearson correlation, crosstab/descriptive statistics (median, mode, etc). DBMS_STAT_FUNCS package adds distribution
fitting procedures.

Window / Analytic
SQL functions

Computing cumulative, moving, and centered aggregates.

Frequent Itemsets

DBMS_FREQUENT_ITEMSET used as a building block for the Association algorithm used by


Oracle Data Mining.

Image feature
extraction

Oracle Intermedia supports extraction of color histogram, texture, and positional color.

Linear algebra

UTL_NLA package exposes a subset of the popular BLAS and LAPACK libraries for operations on
vectors and matrices.

OLAP

Multidimensional analysis beyond drill-downs and roll-ups, Oracle OLAP also supports timeseries analysis, modeling, and forecasting

Spatial analytics

Oracle Spatial's analysis and mining capabilities include binning, pattern detection, spatial
correlation, colocation mining, and spatial clustering, topology & NW data model analytics shortest path, minimum cost spanning tree, nearest-neighbors analysis, traveling salesman
problem, etc

Text Mining

Std SQL to index, search, analyze text / documents stored in DB, files, and web with automatic
classification and clustering

Popular DMFs & DMAs - supported by Oracle


Functions

Classification

Applicability
Some
Examples

Common
High,technique
Medium for
or Low
predicting
specific
outcome
Value customer

Likely Buy / No-Buy

Algorithms

Logical Regression
Nave Bayes
Support Vector M/c
Decision Tree

Regression

Predicts
continuous
numerical
Customer
Lifetime
Value
outcome
Process Yield Rates

Multiple Regression
Support Vector M/c

Attribute
Importance

Ranks
attributes
according
to
Medical
diagnosis
factors
strength
relationship with
Buyerofpriorities
target attribute.

Minimum Description
Length

Anomaly
Detection

Identifies
unusual
or suspicious
Insurance
Frauds
cases
Tax compliance

One-class Support
Vector Machine

Clustering

Finds
natural groupings.
Customer
segmentation

Enhanced K-Means
Orthogonal
Partitioning Clustering

Life Sciences Discoveries


Association

Finds
rules associated
Product
Bundlingwith
frequently
Defectco-occuring
Analysis items

Apriori

Feature
Extraction

Produces
new
attributes as
Pattern
Recognition
linear
combination
of existing
Data
Projection
attributes.

Non-Negative Matrix
Factorization

Predictive in Nature?
Hindsight

Insight

Foresight

What is happening?

Why is it happening?

What will / should happen?

Historic
orientation
Typical MIS
Reporting or BI
Oracle Reports,
Hyperion, IBM
Cognos, SAP BO,
etc

Business / Behaviour
Analysis, Trends
What is currently
happening / Why?

Forecasting
Optimization
Past behaviour to
predict future
outcomes

Moneyball Wining with Statistical Analysis


Youre not solving the problem, youre
not even looking at the problem.

Your goal shouldnt be to buy players,


your goal should be to buy wins.
Im not paying you for the player you
used to be, Im paying you for the player
you are right now.

Whats next: A Shift


from Statistical Decision
Making, to Predictive
Decision Making
137

Competitive Advantage

Business Intelligence is Driving Big Data

Sense & Respond

Predict & Act


Optimization

What is the best that could


happen?

Predictive Modeling

Generic Predictive
Analytics
Ad Hoc
Reports &
OLAP

Raw
Data

Cleaned
Data

What will happen?

Standard
Reports

Why did it happen?

What happened?

Analytics Maturity
The key is unlocking data to move decision making from sense & respond to predict & act

Rolta Oneview powered by Big Data and various Oracle Technologies,


Analytics and Products to provide Predictive Insight Solutions
Developed with Industry Leading Practices and Business Processes

Highlights from Select Industries


High Tech

Measure and improve batch and yield for


semiconductors manufacturers in multi-phase
process environment

Big Data systems gather real time manufacturing


data by tool, lot, unit, etc.

Life Sciences

Big Data based Rota-OneView supports multivariate


modeling that will predict batch quality and yield based
on integration of production, quality, maintenance and
reliability data combined with product specifications

Supports drill down to individual machinery

Oil & Gas, Chemicals and Process Manufacturing

Improved safety performance, and regulatory compliance


Improved operational efficiency, asset utilization and
sustainability
Integrated GIS information

Do you really need all the CPUs / RAM?

4000 nodes at Yahoo:


16P raw disk
32T RAM
30,000 cores

3 Nodes:
504T + 648T + 648T x
10x compression =
18P raw disk equiv.

Oracle Technologies for


Big Data Rapid Deployment Ready Now!

Savings is in the CODING time


650 lines of MapReduce Java code or 12 lines
of Oracle pattern matching SQL
Runs 50x Faster on1B row table
18 node Hadoop vs. 2 socket server

Oracle also has SQL Pattern matching in 12c


for automatic detection (sensor / fraud / alerts)

Map Followers, Geography, Medals, Interests

From Larry Ellison OpenWorld September 2012 Keynote


Used the X2-8 Exadata and X2-4 Exalytics box & Endeca

Oracle Endeca Connect to Hadoop!


Easy to Use, data discovery tool
Endeca brings together structured & nonstructured data
Pulls in social media/internet data

Incredibly fast, point & click technology


Breadcrumb feature
Who uses Endeca?
Sales & Marketing
Quality Control
Buyers & Planners

144

My Oracle Big Data Benefits

Its actually done and complete unlike others


Full Hadoop integration and loader (Oracle Big Data SQL)
Exadata and Exalytics BI integration & solution
Big Data hardware which includes Hadoop HDFS, MapReduce,
R programming language (statistics and regressionsetc.),
Oracle NoSQL, ACID compliant, Simple key-value pair data model
(hashes keys over many servers - major/minor keys & byte arrays)
Oracle NoSQL is based on Oracles BerkeleyDB (commercial 8
years!) which integrates with HDFS (Hadoop File System) using
external tables if you want,
Oracle Loader for Hadoop (OLH) takes the analyzed data from
MapReduce & puts into 11g Database as last step (15T/hr)
Concurrency is flexible at any level & its horizontally scalable
Oracle knows clustering & HA well (no single point of failure!)
Oracle Admin tools are great as are Oracle professionals
BerkeleyDB is the worlds most widely used DB toolkit >200M
deployed copies
Oracle can be REAL TIME fast, not batch processing slow

Oracle Big Data SQL

Big Data is just the start to handle IOT

147

Venturebeat.com IOT $14.4T this decade

History is Accelerating for IOT!

Driving Competitive Advantage with IOT

The Consumer IOT Connection

Wearable Tech

Intel Edison + Baby Wakes Up = Bottle starts warming up

Why Connect your Home?

Energy Savings
Automate things Things working for you!
Security & Other Monitoring
Increase House Value
Cost Savings
Shopping Convenience & Less Waste
Its Fun!

The Consumer IOT Connection

General Electric

Google Acquires Nest

Nike.com

Nike

Nike.com
Leveraged IOT into one of the leading selling
products out there.
Leveraged a huge brand name into big $$$$
(note the Apple/Google Glass packaging)

Share with your friends

World changing now

IOT Glasses:
Picture
Video
Map
Translate
Call
Integrate
with other
things

Business Insider: Google Glass

1.
2.
3.
4.
5.
6.
7.
8.

GPS
Hollywood
Air Travel
Construction
Health Care
Tours
Education
Law
Enforcement
9. Advertising

IOT Short Term How it will Affect You

Animal Tracking
(protect wildlife/trees catch
poachers)

People Tracking

Yes you are being tracked*McKinsey

IOT Long Term How to Prepare for it

Machine to Machine (M:M)

Whats Connected

IOT by Industry

Research Oracles Current IOT Information

170

Raspberry Pi If Time Permits

Raspberry Pi (Perfect Prototyping)


You can start here with Oracle and Embedded Java.
Can run Java ME or SE
Model A has 256M (SDRAM) & Model B is 512M
GPU Broadcom 250MHz
CPU 700MHz
Overclock to 1GHz
USB / UART (Serial)
Audio Jacks
SD Card Slot (storage)
Ethernet
Video HDMI
GPIO (Sensors)
Use a Wifi Dongle (WiPi) & MicroUSB power cable

Only $35 for a Model B?


Raspberry Pi, Model B: $35
Case: $9 (clear)
MicroUSB 5V power cable, at least 700mA (5V x 0.7A = 3.5W):
$5
USB keyboard &mouse: $15 (Dont need if you plug into your
PC)
HDMI monitor: $120 (Dont need if you plug into your PC)
HDMI cable: $3
SD card: $7
Ethernet cord: $6
Speakers: $9
Camera: $30
Add Wireless WiPi - $15

Total Cost = $74 (plug into your PC)


Total Cost = $254 (Acer C7 Chromebook $199)

Setup Pi
As easy as pie:

http://www.raspberrypi.org/downloads
Install Linux (Raspbian is Optimized Debian Linux for Pi)
Login is pi/raspberry
Download/Copy Java 8
Deploy/Run Java FX apps (Change GPU Memory 64M to
128M
Steveonjava.com
Can use Filezilla to transfer files to pi
Can use Putty to SSH into Pi
Note that storage of O/S & files are on SD Card

Oracle videos on java.oracle.com

Blinking LED

Connect to a Relay to Switch Things ON/OFF

Hook your Pi to a Camera


Check for Criminals

Easy as PI

Control your Fan with your Cell Phone,


Gemalto Concept Board, and Java

The next Mozart of IT is coming!

Security Issues community.spiceworks.com

Shodan
Shodan is the Google for Hackers - ZDNet

IOT is under attack right now


Attack tools are better than ever
Number of hackers is growing
Industrial espionage is also growing

Why to NOT Connect your Home?

Energy hacked to Overload


Works against you instead of for you!
Security Vulnerability - Cameras used against
you. Who is tracking you?
Who is monitoring you & your children?
Its not fun having your life tracked!
Costly Items

Appliance
Admin.
Things must die
when tech is
outdated or theyll
be hacked
Must buy more
often to stay
updated!
Refrigerator 2.1
Oven Mega-Patch
Need to Index
your Toaster or
only half will get
toasted

IOT is Innovation
Innovation is introducing something new or
different!
Idea, Product, Process, Organization, Structureetc.

Innovation is not what you find in some companies


today which is why newer companies continue to
replace them!
Are you leveraging IT (and IOT/Big Data) to create
innovative products and experiences for your
customers? Are you an innovative company?
Here are organizations that are NOT missing the
boat they leverage IT, Big Data, and IOT to deliver
innovative products!

Diffusion of Innovation

1.
2.
3.
4.
5.

First knowledge
Forming an attitude
Decision to adopt or reject
Implementation and use
Confirmation of Decision

Gabriel Tarde 1903 (The S-curve or Diffusion


Curve); In the later stages no amount of
new investment in that product will yield
a normal rate of return.

Does the Graph Look Familiar

1998 Gates Steps down as President


Gates in 2006 (out completely of day-today): My announcement is not a
retirement...
On Gates departure in 2006: He wasnt
really involvedfor some time.
2014: Bill Gates substantially
increased his time at Microsoft to assist
new CEO Satya Nadella.

Disruptive Innovation
(also Creative Destruction Capitalism)

Disruptive Technologies (Clayton Christenson 1995) can hurt well managed


companies that are responsive to their customers and have excellent R&D.

Disruptive Innovation Examples

Postal Mail
Telegraph
Trains
Metal / Wood / Glass
Pictures (Chemical)
Computer
Floppy/Zip Drive
Encyclopedia

Email
Telephone / Cell
Phone
Cars / Planes
Plastics
Digital Pictures
Smartphone/Tablet
USB
Wikipedia

Disruptive Innovation Future Examples

Email
Telephone/Cell Phone
Cars / Planes
Plastics
Digital Pictures
Smartphone/Tablet
USB
Wikipedia

Instagram
Implant
Virtual Conferences
3D printed in the home
Google Glass Life Record
IOT
Cloud
Implants / Robotics

Disruptive Innovation Further yet

Instagram
Implant
Virtual Conferences
3D printed in the home
Glass/Life Recorder
IOT
Implants / Robotics
Cloud

Implant Communication
Implant
Implant
Virtual Reality / Bio printed
Implant Recorder
IOT/Implant connection
Better Implants / Robotics
Faster Cloud

Innovations In the Works / Early


Robots, Vertical Farming, 3D Bio Printing, CO2
removal, Domed City (Dubai in progress), Graphene
(stronger), Magnetic Refrigeration, Artificial Meat,
Digital Scent, Flexible electronics, Biofuels, Better Solar
& Natural Gas efficiency, Home Fuel Cells, AI, Crypto
Currency, Mobile Collaboration, Speech Recognition,
Wearable computers, Virtual Reality, Implants,
Cryonics, Brain/Computer interface, Cloaking Device,
Stealth Tech, Self Driving Car, Airless tire

Innovations: Experimental/Hypothetical
Molecular Assember (Replicator Star Trek), Fullerene
(programmable matter), quantum dots, 3D displays
(TV/Theaters), 5G, Artificial Brain, Exascale Computing,
Quantum Computing, Advanced Implants, Robotic Warfare,
Suspended Animation, DNA Life Extensions, Nanosensors,
Nanocomputers, Nanobots, Nanomedicine, Robotic
Surgery, Tricorder (sense/compute/record; scanner, sensor
for air/medical), Flying Car, Force Field, Asteroid Mining,
Anti-gravity boots, Powered Exoskeleton (commercial),
Self-assembling Swarm-bots, Beam-powered propulsion,
Maglev Train, Solar Sail (space travel), Spaceplane, Hover
Board

The Future is Already Here but..

Summary and Questions

IT & Oracle Trends


Oracle 12c New Features
What is Big Data
Big Data Revolution & Solutions
Oracle Big Data Solution
What is the Internet of Things?
IOT Short Term How it will affect you
IOT Long Term How to prepare for it
Using IOT
Summary & Questions
200

64-Bit advancement of
Directly addressable memory

4 Bit:
8 Bit:
16 Bit:
32 Bit:
64 Bit:

Address Direct
Indirect/Extended
16
(640)
256
(65,536)
65,536
(1,048,576)
4,294,967,296
18,446,744,073,709,551,616

When the hardware physically implements the theoretical


possibilities of 64-Bit, things will dramatically change.
moving from 32 bit to 64 bit will be like moving from 4 bit
to 32 bit or like moving from 1971 to 2000 overnight.
201

Addressable Memory Growth

Shift
8-bit to 16-bit
16-bit to 32-bit
32-bit to 64-bit
64-bit to 128-bit

Increase
250 times bigger
4M times bigger **
4T times bigger
10T*M times bigger

Data Growth (2000 - 2012):


800T to 2.7Z
3.4M times bigger**
Year 2020 35Z Predicted? Will be much bigger!
202

New World Ahead Leverage a Great Partner

203

How Fast are things Moving


Hoverboard created by the time I got this done!

Bowling with Enterprise Manager!

205

Oracle getting bigger than Tech!

206

Not a tech person


Know the Tech Mind!

207

Before Tech they were Engineers

208

This is How Tech Views Themselves!

209

How Everyone Else Views Tech!


Data

Do Developers think of this when they think of their DBA?


210

Whats Important Next


3D & IOT = IOE = M:M

Internet Of Things (IOT)


Machine to Machine (M:M)
Robotics and 3D

211

Sensors IOT M:M

212

Coming Robotics

213

Life-like Robots

214

Future DBA?
(Occupy Wall
Street)

215

ORFuture DBA!
(My bets on this
one)

216

Google/Cyberdyne augments people with tech


Be a Future Tech Leader!
(Integrating Tech)

217

Questions?

Final Thoughts Catching your Wave!

Things may come to those who wait, but


only the things left by those who hustle.
Abraham Lincoln
219

Build a Successful Team


Use the Technology that Creates the Future!
Make each team member feel
Together
responsible for the success of
Everyone
the project
Make each team member accountable Achieves
Share Success with all team members
More
Attributes of a Successful Team:
Respect
Common Goal
Honesty
Understanding

Loyalty
Communication
Unselfishness
Positive Attitude

Trust
Flexibility
Support
Leadership

#1 Selling Oracle Database Book on Amazon


for over 2 years!

Also available at other


places like Barnes &
Nobleetc.
Available on the
Kindle and other book
readers
Why is it #1?

221

Passion for Technology, Commitment to Excellence

A Global 200 Forbes Best Companies under $1B


Revenue of 500M+ & 3500 employees globally
A top partner to Oracle, HP, EMC, VMware, &
SAP
EBS, BI, EPM & Managed Services
2013

Top 250
Partners

222

Rising Star
Award

Rolta Your Partner in Success.


Oracle!
2012 Accomplished
Oracle Partner ofinthe
Year
(10 Titans/Excellence Awards)

Prior Years: 2002, 2004*, 2007*, 2008*, 2010, 2011


*Won 2 Awards

223

Thank You & Make a Difference in the World!

224

Copyright
Information

Neither Rolta nor the author guarantee this document to


be error-free. Please provide comments/questions to
rich.niemiec@roltasolutions.com. I am always looking to
improve!
Rich Niemiec/Rolta 2014. This document cannot be
reproduced without expressed written consent from Rich
Niemiec or an officer of Rolta, but may be reproduced or
copied for presentation/conference use.
References include Rich Niemiecs Exadata Presentation
& Oracle11g Database Performance Tuning Tips &
Techniques book, www.oracle.com, en.wikipedia.org,
slashgear.com, gifsoup.com, www.amazon.com, Tech
Crunch, www.rolta.com, The Matrix movie, Information
Week, Gartner, Computerworld, & Oracle OpenWorld
Contact Information
Rich Niemiec: rich.niemiec@roltasolutions.com

www.rolta.com
225

Вам также может понравиться