Download - The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Transcript
Page 1: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Lucas Jellema (CTO, AMIS)

25 April 2014

The evolution of the Database – role of the database in application architecture

Page 2: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

2

Two years ago – here at Fontys

Page 3: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

3

Agenda

• Wie of wat is AMIS?• Hoe verging het Chiel na zijn studie in Eindhoven?• Hoe zit het met die Database?• Vragen & Opmerkingen

Page 4: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

AMIS

• Leuke organisatie!• Oracle & Java specialisten (pakweg 90 man & vrouw)• Gevestigd in Nieuwegein• Opgericht in 1991 door studenten van de Universiteit Twente

– A M I S

• Opdrachten in – Heerlen, Joure, Almelo, Nijmegen, Deventer– Utrecht, Den Haag, Amsterdam, Rotterdam– New Caledonia, Mongolië, Canada,

Denemarken, België, Koeweit, Faroër eilanden, Duitsland, Verenigde Staten, …

• Stage-opdrachten– Mail: [email protected]

Page 5: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

The Presenter:Lucas Jellema

• Lives in The Netherlands (close to Amsterdam)

• Started doing Oracle in 1994 with Oracle Consulting (Oracle Designer, Forms, Database)

• Joined AMIS in 2002 – now working as CTO, Consultant (Architect, Technical Lead, Programmer)and Trainer

• Oracle ACE (2005) & ACE Director (2006)• Author of ‘Oracle SOA Suite 11g Handbook’

(Oracle Press, 2010)• Presenter at Oracle OpenWorld, JavaOne and

many Oracle and Java User Group Conferences• Frequent blogger at http://technology.amis.nl• Active with SQL & PL/SQL, Java EE & ADF,

SOA, BPM & more Fusion Middleware

Page 6: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

6

AMIS

• Projecten rond (enterprise) web applicaties en portalen, B2B integratie, “mobilisering”, 24/7 beschikbaarheid, User Experience, business process management

• Klanten waaronder:– Politie Nederland, Randstad, Raad voor de Rechtspraak, NS, ProRail, Eneco– Pensioenfondsen, financiële instellingen, logistieke bedrijven, software producenten

• Technische kreten– Database, Middleware

SOA, BI, IoT,Big Data, UX, HTML 5,(No)SQL, Events,Java, grid, IdM, XML,Cloud, BPM, VM,Provisioning, ScalabilityEngineered Systems

Page 7: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

7

Chiel

Page 8: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

8

THE EVOLUTION OF THE DATABASE – ROLE OF THE DATABASE IN APPLICATION ARCHITECTURE

Page 9: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Overview

• Role of the Database in Modern Architecture • More than a container for data• Evolution of the Oracle Database• Recent Trends around the Database• Q & A

Page 10: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

10

Decentralized Silos to central, consolidated Layers

Page 11: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

11

Decentralized Silos to central, consolidated Layers (2)

Page 12: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

12

Page 13: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

13

Consolidated, Layered Architecture

Data

Business

Interface

Page 14: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

14

Consolidated, Layered Architecture

Data

Business

Interface

Page 15: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

15

Cloud Power

PaaS

Page 16: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

More than a container for data

• “We could also do that in the database”• in the database? Huh?

RDBMS ≈>>

Page 17: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Brief history of Oracle Database

• 1970: Paper “A Relational Model of Data for Large Shared Data Banks” by Ted Codd (IBM)

• 1977: Software Development Laboratories was founded• Late ‘70s – Project “Oracle” – executed by SDL for the CIA• 1979: SDL became Relational Software, Inc. and introduced Oracle V2

(built in PDP-11)– Basic SQL functionality (query, join) but no transactions

• 1982: RSI became Oracle Corporation• 1983: Oracle 3 - rewritten in C, ported to UNIX platforms and extended

with COMMIT and ROLLBACK• 1984: Oracle 4 – read consistency• 1985-1990: Oracle 5, 5.1 and 6: client/server, distributed queries, row

level locking & hot back ups• 1993: Oracle7… more than just a database

Page 18: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)
Page 19: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

PL/SQL VM

(Oracle7, 1993)

PL/SQL VM

Page 20: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

PL/SQL Virtual Machine

• Ever since Oracle7, the Oracle RDBMS contains a PL/SQL Virtual Machine

• That means: write [PL/SQL] once, run anywhere (as long as the RDBMS is running)

• This portability of PL/SQL across platforms is pretty extraordinary!

PL/SQL

Page 21: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

1993 2009

10g7.0 8.0 8i 9i

internet

xml

JVM inside

ANSI/standardsinterMedia

Spatial

OLAP/BI/Analytics

Data Warehouse/ETL

The Grid

11g

PL/SQL:Triggers, Packages

SOA

SOX

Constraints

20011997 2004

Data Mining

Semantic Query

OO

RegExp

‘13

XE

NoSQL

Evolution of the Oracle Database

12c

CBO

RAC

Flashback & Total Recall

Data Guard

R

24/7 EBR

Cloud

Multi-platform porting

Materialized Views & Query Rewrite

SQL2Hadoop

Pattern Matching

Temporal DB

Multitenant

In Memory DB

JSON

Data Masking

Page 22: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Backup and recovery

• Back up is not relevant….• .. unless you have an established and test recovery strategy!• Backup should be done ‘hot and on line’• Recovery should be

– Unnecessary– Online– Focused– Quick

• Oracle Backup & Recovery facilities– Data Guard – (remote)

synchronized Stand By Database

– Flashback Recovery – RMAN

Page 23: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

24/7 – High Availability

• Unplanned Downtime– Real Application Clusters (RAC)– Data Guard Standby Database for fail over– Hot Patching– Back-up Air Conditioning & Power Generator

• Planned Downtime– Online Redefinition– Edition Based Redefinition for zero down time database application upgrades– NoSQL “read ahead & write behind” cache layer

Page 24: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Compression

• When the system’s performance is I/O bound– Reading/writing data from/to storage cannot keep at the same rate as the CPUs

• there is spare capacity in the CPUs to alleviate the I/O burden– Through a reduction in the volume of data to be read and written – by zipping before write and unzipping after read

• The same information gets across in fewer bytes and therefore with less I/O

• It even reduces storagerequirements– Has a green bonus!

Page 25: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Flashback and Total Recall

• Oracle Database has long had two capabilities for ‘remembering’ the old situation regarding records– Uncommitted transactions whose changes are local– Read consistency, even for long running queries

• In 9i, 10g and 11g this featurehas been extended to remember‘the old situation’ for far longer– Undo Data => Flashback Archive

• This allows for – Historical queries– Trend analysis over time– Point-in-time recovery

• At database, schema, tableor even record level

• 12c adds Valid Time Modeling (aka TemporalValidity): database keeps track of begin and enddate of the valid period of records

Page 26: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Valid time aware flashback queries

• Select all employees who were employed at a certain moment in time

• Perform all queries as if we traveled back in time

• Example: Run an end-of-year report in the end of January

SELECT * FROM EMP AS OF TIMESTAMP TO_TIMESTAMP('01-JUN-2012 12.00.01 PM')

EXECUTE DBMS_FLASHBACK_ARCHIVE.enable_at_time ( 'ASOF' , TO_TIMESTAMP('29-MAR-20414 13:14:15') );

Page 27: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Role of the Database in Modern Architecture

• Single Point of …• What goes where …

Page 28: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Reaching out from the database

Database

Page 29: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Java Class processing an HTTP request: The servlet

• The JVM can handle HTTP requests via the Servlet Container• HTTP requests are routed to a custom Java Class that writes the (usually

HTML response)• The Servlet infrastructure handles the actual HTTP response to the

invokerJVM

Servlet

http request

http responseWebLogic Server

Page 30: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

PL/SQL Package processing an HTTP request: The embedded PL/SQL gateway

• The Database (the PL/SQL VM) can handle HTTP requests via the Embedded PL/SQL Gateway

• HTTP requests are routed to a custom PL/SQL Package that writes the (usually HTML response)

• The EPG infrastructure handles the actual HTTP response to the invoker

http request

http response Custom PL/SQL package

EPG

htp

Page 31: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

The Talking Database

Details on the Employee. Employee name is Smith, his job

is Analyst. He works in department 20…

EMP

Page 32: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

The Talking Database

PL/SQLexposed through

dbms_epg

http

audio/mpeg, binary data

http

Employees Table

1

2

3

45

67

Page 33: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Reaching out from the database

Database

dbms_epg(mod_plsql)

http

XMLDB

httpftp

webdav

utl_http

http

AdvancedQueuing

AQjms

Queue

RESTWeb

Service

File, O/S

JDBC, SQL Net, DB Link

Page 34: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Stock management

Page 35: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Stock management

Page 36: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Do not do it…More often than required

• If it has been produced before…– Reuse before re-produce!

• If it has been shipped before…– Reuse instead of re-ship

• … provided it is still fresh

Web Browser

RDBMS

Java EE Application Server

Page 37: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Do not do it…More often than required

• Save on network trips, context switches and tiers to cross

• Save on ‘reproducing’ same results Web Browser

RDBMS

Java EE Application Server

- JS data (memory)

- Cookies- HTML 5 db

Edge Cache

CacheCluster Fail-Over(Session State)Result StoreWrite Behind Client Result

Cache

Result Cache

Materialized View

Page 38: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Fast Data – Real Time Event processing

• The league of real time events– Continuous stream of a multitude of tiny events with hardly any payload, to

analyze & aggregate– Sent from physical sensors (temperature, pressure, RFID, security gates), process

sensors, Twitter, manufacturing equipment, database triggers, web servers, ESBs, stock trade tickers, sport statistics, RSS, network switches, …

Page 39: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

No SQL

• Replacing Relational Database?– Front End & Middle Tier Cache for read only data provisioning – Non-Transactional processing of large volumes of data

– Not Only SQL– Working closely with ‘back-end’ relational database– Working with Hadoop for off-line, parallel processing

Page 40: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Do not do it…In a suboptimal place

• Do not perform a task in a resource that is not ideally suited for that task– If it directly contributes to overall performance

Page 41: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Do not do it…In a suboptimal place

• Leverage database for what it’s good at– Data Integrity – Primary Key /Unique Key /Foreign Key– Aggregation– Sorting– Data Rule enforcement– Bulk DML and Copy data– Analytical Functions, Model clause, Rollup

• Specialized engines for– HTML rendering and Session Management– Imaging and Document Processing– Match and Search– Speech Recognition– Cryptography– 3D – ….

Page 42: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Recent Trends around the Database

• Self managing => role of DBA• Cloud• Appliances & Engineered Systems (the ExaData machine)

– From I/O bound back to CPU bound

• NoSQL (data gathering) and R (data analysis) ...• 12c

– Multitenant, In Memory Database, Temporal Validity, Data Masking, JSON

Page 43: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Cloud

Page 44: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Cloud

• Automated (self-service) provisioning of database resources• Multi-tenant• Metering and per-usage billing• 24/7 uptime – hot patching, fail-over• Fine grained recovery, upgrade, authorizations• Scalable

• ‘The Oracle Public Cloud’ IaaS

PaaS

SaaS

Page 45: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Appliances & Engineered Systems

• Pre-configured, installed, plug’n’play• One stop solution in case of issues• Software/hardware mutually optimized (*

– Infini-band, Storage Cells, Flash-memory (between RAM & Disk)

Page 46: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Data Masking

• Gartner reports that: data masking should be mandatory for enterprises using copies of sensitive production data for application development, analytics or training.

• They also believe the market is expanding into production and unstructured data protection.

Page 47: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Data Redaction

• At runtime, you can optionally have the query results modified to reset/scramble/randomize sensitive data– Through ‘data redaction’ policies associated with tables and view and applied at

query time

• Because the data is masked in real-time, Data Redaction is well suited to environments in which data is constantly changing.

• You can create the Data Redaction policies in one central location and easily manage them from there.

SQL engine SQL

POLICY

POLICY

RESULTS

Page 48: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Oracle 12c (released summer 2013)C is for…

Complete

Complementary

Cloud

Consolidation

Container

Crowd

Control

Core

CentralCool Carefree

Classified

Page 49: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

DBA is resource intensive

Page 50: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Managing dozens of databases means…

– Installing– Configuring– Securing– Monitoring– Patching– Upgrading– Backing up

• many database instances on potentially a large number of machines

• Using dedicated resources for each individual database instance– 20 processes– Memory for SGA– Disk space for generic objects such as most of the SYS schema

Page 51: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Multitenant Architecture

Page 52: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Oracle Database Architecture

• Requires memory, processes and database files

ERP

Database Files

BackgroundProcesses

MemoryUtilized

RAM

Page 53: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Oracle Database Architecture

• Separate memory and processes required for each database

ERP

Database Files

MemoryUtilized

BackgroundProcesses

RAM

CRM

Database Files

BackgroundProcesses

MemoryUtilized

RAM

DW

Database Files

BackgroundProcesses

MemoryUtilized

RAM

Page 54: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

New Pluggable Database Architecture

ERP

Database Files

MemoryUtilized

BackgroundProcesses

CRM

Database Files

MemoryUtilized

BackgroundProcesses

RAM

DW

Database Files

MemoryUtilized

BackgroundProcesses

RAMRAM

• Memory and processes required at container level only

Page 55: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

New Pluggable Database Architecture

• Memory and processes required at container level only

RAM ERP CRM DW

BackgroundProcesses

MemoryUtilized Container Database

Page 56: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Multitenant Architecture

Page 57: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Multitenant Architecture

Page 58: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

58

Ease the administration burden

• Installing• Configuring• Securing• Monitoring• Patching• Upgrading• Backing up

Page 59: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Multitenant Architecture

Page 60: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

60

Fast Provisioning

Page 61: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

61

Simplified Patching

Page 62: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

62

Fast Cloning a PDB

PDBs can be cloned from remote CDBs

PDBs can be cloned from within the same CDB

Page 63: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

Manage Many as One with Multitenant

Backup databases as one; recover at pluggable database level

DW

12.1

CRM

12.1

ERP

12.1

One Backup

Point-in-time recoveryAt pluggable database level

Multitenant Container Database

Page 64: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

64

Multitenant Agility

GOLD

SILVER

BRONZE

RAC, Data Guard, Daily Incrementals

Data Guard, Daily Incrementals

Weekly Full Backups

Page 65: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

65

Big News…

Page 66: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

66

Oracle Database In Memory Option

Page 67: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

67

Hybrid, dual-format data storage transparent to application

Page 68: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

68

Oracle Technology Networkhttp://otn.oracle.com

• Gratis download van vrijwel alle Oracle producten• Gebruiken voor studie, onderzoek, prototype development, …• Geen beperking in tijd of functionaliteit• Betalen als je een

systeem in productie(gaat) nemen

• Handig: Pre-BuiltVirtual Machines– PHP– BigData– SOA & BPM– Java EE– BI– Solaris

Page 69: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

69

Oracle XE Database – free!

http://www.oracle.com/technetwork/database/database-technologies/express-edition/overview/index.html

Page 70: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

70

Summary

• Database is core of enterprise IT– Persistent when the plug is pulled

• Consolidation is important theme– More efficient usage of hardware resources and

of human resources– Agile scaling – quick, simple, cheap– Cloud as ultimate target– Also: “logical consolidation” – centralize data

• Database is bottleneck – a single point of failure• Logical consistency demands require transactions to use locks on data –

scalability at database level is reduced as a result– CAP theorem – consistency, availability and partition tolerance can not all be

achieved

• Evolution of databases continues rapidly – the relevance of the Database Platform is quite strong today

• IT is a smart career choice – and AMIS is a fun company

Page 71: The Evolution of the Oracle Database - Then, Now and Later (Fontys Hogeschool, Eindhoven)

• Blog: technology.amis.nl– On Oracle, SQL, Java, SOA, BPM & more

• Email: [email protected]

• : lucasjellema

• : www.amis.nl, [email protected] +31 306016000 Edisonbaan 15,

Nieuwegein