SlideShare une entreprise Scribd logo
1  sur  58
Copyright © 2014, Oracle and/or its affiliates. All rights reserved. |
Oracle Database 12c and DevOps
Maria Colgan & Gerald Venzl
Oracle Database Systems
June, 2017
@SQLMaria @GeraldVenzl
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
The following is intended to outline our general product direction. It is intended for
information purposes only, and may not be incorporated into any contract. It is not a
commitment to deliver any material, code, or functionality, and should not be relied upon
in making purchasing decisions. The development, release, and timing of any features or
functionality described for Oracle’s products remains at the sole discretion of Oracle.
Safe Harbor Statement
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Reputation: Fast & Agile
• Primary focus: Delivery
• Favorite line: “Let’s get it done”
Public 3
Meet the Developer
Developer
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Reputation: Cautious & Risk Averse
• Primary focus: Longevity & Security
• Favorite line: “Let’s not get hacked”
Public 4
Meet the DBA
DBA
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Together they must build a new web
application for the recently acquired
coffee shops chain
Oracle Confidential – Internal/Restricted/Highly
Restricted
5
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developer
6Public
We need to build a new web
application for the coffee
shops we recently acquired in
a hurry, so we want to use a
flexible schema using JSON
documents. Can you setup a
MongoDB database for us?
She cannot
differentiate a
blaster from a
stick…
Oh no! What
does he want
now?
DBA
Why don’t you just use
Oracle?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 7
Oracle Database 12c as a Document Store
12.2 JSON
SQL> CREATE TABLE orders
(order_details BLOB
CONSTRAINT is_json CHECK
(order_details IS JSON)
);
Table containing JSON documents
Public
• Oracle stores JSON in table columns
• No special data type
• Can be VARCHAR2, BLOB or CLOB
• JSON supported by all Oracle features
• Analytics, Encryption, In-Memory, RAC,
Replication, Parallel SQL, …
• Plus can index any JSON element
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 8
Oracle Database 12c as a Document Store
12.2 JSON
SQL> CREATE TABLE orders
(order_details BLOB
CONSTRAINT is_json CHECK
(order_details IS JSON)
);
Table containing JSON documents
Public
• Oracle stores JSON in table columns
• No special data type
• Can be VARCHAR2, BLOB or CLOB
• JSON supported by all Oracle features
• Analytics, Encryption, In-Memory, RAC,
Replication, Parallel SQL, …
• Plus can index any JSON element
IS_JSON constraint ensures only legal
JSON documents can be inserted
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
9Public
But the JSON document
is BLOB. That’s not what
we need. We need to be
able to query the
elements in the JSON
documents?
Don’t panic! Oracle
offers native SQL
support for JSON. Let me
show you
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 10
Native SQL Support for JSON
12.2 JSON
Public
• JSON can be queried using simple SQL dot
notation
SELECT
o.order_details.location.city
FROM orders o;
Location
--------------------
Boston
Los Angeles
New York
San Francisco
Washington
SQL> desc ORDERS
NAME TYPE
------------------ -----------
ORDER_DETAILS BLOB
Table containing JSON documents
{"date": "2017-05-03 10:40:36",
"loyaltyCardNo": 1230,
"location": {
"city": "Dallas",
"state": "TX”},
"salesAmount": 7.55,
"order": [ {
"item": "Espresso”, …. }
}
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
A few hours later ….........
Public 11
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
12Public
Hey, we have decided to do
everything via REST and we
know that MongoDB can
speak REST So it looks like
we need a document store
after all
Dude, REST is out of the
box with Oracle! Let me
show you
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly
Restricted
13
Conn
establishment
Ackn
Request
Response
Conn
close
Ackn
13
Request
Response
Conventional
communication
RESTful
communication
REST in a nutshell
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Oracle REST Data Services
HTTP(s) API App-Dev with Relational Tables in Oracle Database
{ “loyaltyCardNo”: 1001,
“name”: “Scott King”,
“Location”: “500 Main street, Innovation CA”
“date”: “Feb 27, 2017”
"salesAmount": 4.15
“orders”: [{"item": "Mocha","size": "medium",
"salesAmount": 4.15,
"coffee_used_gram": 15}]
}
Oracle REST
Data Services
ORDS maps standard URI requests to corresponding relational SQL (not schemaless): e.g. SQL SELECT from customers and orders table.
ORDS also transforms the SQL results into the highly popular JavaScript Object Notation (JSON), other formats include HTML, binary and CSV.
Fully committed to supporting any and all standards required by Fusion / SaaS / FMW; we are actively engaged in the ongoing dialog.
SQL
URI Request or HTTP(s) post
mapped to SQL request
JDBC
Connection
Pool
JSON
SQL result to
JSON
transformation
https://myhost/myapp/hr/customerorders/1001
URI
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Configuring REST with Oracle Exadata Express Cloud Service
15
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Configuring REST with Oracle Exadata Express Cloud Service
16
Give the service a
name and specify
the prefix
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Configuring REST with Oracle Exadata Express Cloud Service
17
Specify the rest of
the URL
orders
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Configuring REST with Oracle Exadata Express Cloud Service
18
Specify the type of
service
Specify the actual
command to be
used by the
service
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
REST Endpoint For Developer
https://xxxx-5342177.db.us.oraclecloudapps.com/apex/coffeeshop/orders
Oracle Confidential – Internal/Restricted/Highly
Restricted
19
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 20Public
Developer DBA
Go ahead, send your
REST calls
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Checking result of REST
SELECT Count(*) FROM orders;
COUNT(*)
--------
1
21
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developer
22Public
This is awesome! You just
reduced our time to market
by two weeks! Thanks a
million!
DBA
You’re
welcome
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
A few hours later ….........
Public 23
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developer
24Public
I’m heading home for the
day and I want to keep
working on my commute but
I won’t have good internet
connectivity. Can we build
the same environment in
Docker?
DBA
Absolutely! You will need
to download the Docker
image for Oracle Database
12c & Oracle SQL
Developer Let me show
you
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
1. Click on the tools menu
2. Click on the REST Data Services
3. Click on Install
Oracle Confidential – Internal/Restricted/Highly
Restricted
25
Enabling SQL Developer as ORDS
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
1. Use Oracle REST Data Service
that’s included with SQL Dev
2. Specify the location for your REST
config file
3. Click next
Oracle Confidential – Internal/Restricted/Highly
Restricted
26
Enabling SQL Developer as ORDS
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
1. Fill in you the Service Name for
your database in docker
2. Specify the password for your
ORDS_PUBLIC_USER
3. Click next
Oracle Confidential – Internal/Restricted/Highly
Restricted
27
Enabling SQL Developer as ORDS
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
1. Click Run Standalone mode
2. Specify HTTP PORT (8080)
3. Click next
4. Click finish
Oracle Confidential – Internal/Restricted/Highly
Restricted
28
Enabling SQL Developer as ORDS
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
REST Endpoint For Docker
http://localhost:8080/ords/coffeeshop/orders/order
Oracle Confidential – Internal/Restricted/Highly
Restricted
29
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
A few days later ….........
Public 30
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
31Public
How’s it going?
Isn’t the CRM data
already in the database
with the JSON data?
Yeah, exactly. Now we just
need to build some classes to
get that corresponding
relational data for the JSON
orders
Hey, we are working on
integrating the CRM data
with that JSON data we
stored
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBA
32Public
There is no need to integrate
at the app level. You can use
SQL to run a query against
the JSON & the CRM data. Let
me show you but first I’ll
need to check what the
structure of your JSON looks
like.
Developer
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Data Guide : Understanding Your JSON Documents
• Metadata discovery: discovers the structure of
collection of JSON documents
– Optional: deep analysis of JSON for List of Values, ranges,
sizing etc.
• Automatically Generates
– Virtual columns
– Relational views
• De-normalized relational views for arrays
– Reports/Synopsis of JSON structure
33
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 34
SQL> SELECT JSON_DATAGUIDE(o.order_details) FROM orders o;
JSON_DATAGUIDE(O.ORDER_DETAILS)
----------------------------------------------------------------------
[ {"o:path": "$.date", "type": "string", "o:length": 32 },
{"o:path": "$.order", "type": "array", "o:length": 256 },
{"o:path": "$.location", "type": "object", "o:length": 32},
{"o:path": "$.location.city", "type": "string", "o:length": 8},
....
{ "o:path": "$.salesAmount", "type": "number", "o:length": 4 },
{ "o:path": "$.loyaltyCardNo","type": "number", "o:length": 8}]
Data Guide : Understanding Your JSON Documents
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 35
SQL> SELECT JSON_DATAGUIDE(o.order_details) FROM orders o;
JSON_DATAGUIDE(O.ORDER_DETAILS)
----------------------------------------------------------------------
[ {"o:path": "$.date", "type": "string", "o:length": 32 },
{"o:path": "$.order", "type": "array", "o:length": 256 },
{"o:path": "$.location", "type": "object", "o:length": 32},
{"o:path": "$.location.city", "type": "string", "o:length": 8},
....
{ "o:path": "$.salesAmount", "type": "number", "o:length": 4 },
{ "o:path": "$.loyaltyCardNo","type": "number", "o:length": 8}]
Data Guide : Understanding Your JSON Documents
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Query JSON with Relational Data
SQL> SELECT c.c_name,
o.order_details.location.city,
SUM(To_number(o.order_details.salesAmount)) total
FROM customers c,
orders o
WHERE c.c_custid = o.order_details.loyaltyCardNo
GROUP BY c.c_name,
o.order_details.location.city
ORDER BY total Desc
FETCH FIRST 10 ROWS ONLY;
36
FETCH FIRST 10 ROWS ONLY
• New syntax to limit
number of rows returned
• Replaces SELECT * FROM
WHERE ROWNUM<11
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBA
37Public
To make it easier for
you, I can create a view
so the developers don’t
need to know all of the
join conditions
Developer
My developers can write
Java code in their sleep but
this SQL stuff seems really
complicated Can you do
anything to help them with
that?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Creating a View on Top of JSON & Relational Data
SQL> CREATE OR REPLACE VIEW crm_data AS
SELECT c.c_name,
o.order_details.location.city,
SUM(To_number(o.order_details.salesAmount)) total
FROM customers c,
orders o
WHERE c.c_custid = o.order_details.loyaltyCardNo
GROUP BY c.c_name,
o.order_details.location.city
ORDER BY total Desc
FETCH FIRST 10 ROWS ONLY
38
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Creating a View on Top of JSON & Relational Data
SQL> SELECT *
FROM crm_data;
39
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
40Public
No way, that just leads to a
lot of round trips between
app and database, which
will make things even
slower. And besides, this
problem has already been
solved. Ever heard of
Materialized Views?
That's great but how will that
work when we have GBs of
data in there. Surely just
selecting the JSON first and
then retrieving the
corresponding customer data is
faster and safer performance
wise
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 41Public
Oh boy, this one
really doesn’t
feel the force!
Developer
A materialized what?
DBA
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
What is a Materialized View?
• A materialized view is a database object that contains the results of a query
• The query can be base on tables, view or other materialized views
• Typically used to avoid repeating costly aggregations
• Optimizer transforms queries against original tables into a semantically
equivalent query against the materialized view
• A trade off between disk space and CPU
Oracle Confidential – Internal/Restricted/Highly
Restricted
42
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Creating Real-Time MV on Top of JSON & Relational Data
SQL> CREATE MATERIALIZED VIEW top_customers_mv
ENABLE query rewrite
AS SELECT c.c_name,
o.order_details.location.city,
SUM(To_number(o.order_details.salesAmount)) total
FROM customers c,
orders o
WHERE c.c_custid = o.order_details.loyaltyCardNo
GROUP BY c.c_name,
o.order_details.location.city;
43
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Queries Automatically Redirected to Use Materialized View
44
SQL> SELECT *
FROM crm_data;;
---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Bytes |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 10 | 20550 |
|* 1 | VIEW | | 10 | 20550 |
|* 2 | WINDOW SORT PUSHED RANK | | 1 | 2029 |
| 3 | MAT_VIEW REWRITE ACCESS FULL| TOP_CUSTOMERS_MV | 1 | 2029 |
---------------------------------------------------------------------------
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developer
45Public
I’m still not sure this
approach will scale as we
need the queries to be
returned in sub-seconds. Can
we try it with a bigger data
set?
DBA
Sure. Where is the
bigger data set?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Test MV Query Against Larger Dataset
2.56 million JSON documents
Oracle Confidential – Internal/Restricted/Highly
Restricted
46
SQL> CREATE MATERIALIZED VIEW top_customers_history_mv
ENABLE query rewrite
ENABLE on query computation
AS SELECT c.c_name,
o.order_details.location.city,
SUM(To_number(o.order_details.salesAmount)) total
FROM customers c,
orders_history o
WHERE c.c_custid = o.order_details.loyaltyCardNo
GROUP BY c.c_name,
o.order_details.location.city;
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 47Public
The what?
Developer
Oh that’s great for the
known reports but the
marketing folks want to run
ad-hoc reports too. What can
we do to make sure they stay
within 30 seconds?
DBA
Don’t panic, we can put
the tables into the
In-Memory column
store
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Oracle Database In-Memory: Dual Format Architecture
• BOTH row and column formats
for same table
• Simultaneously active and
transactionally consistent
• OLTP uses proven row format
• Analytics & reporting use new
in-memory Column format
• Seamlessly built into Database
• All enterprise features work
- RAC, Dataguard, Flashback, etc
48
Buffer Cache
New In-Memory
Column Store
SALES SALES
Row
Format
Column
Format
SALES
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
• Full JSON documents populated using an
optimized binary format
• Additional expressions can be created on JSON
columns (e.g. JSON_VALUE) & stored in column store
• Queries on JSON content or expressions
automatically directed to In-Memory format
Superfast / Multi-Model Analytics: In-Memory JSON
Relational
In-Memory Colum Store
In-Memory
Virtual Columns
In-Memory
JSON Format
Relational Virtual JSON
49
{"date": "2016-05-03 10:40:36",
"loyaltyCardNo": 1230,
"location": {
"city": "Dallas",
"state": "TX”},
"salesAmount": 7.55,
"order": [ {
"item": "Espresso”, …. }
}
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
SQL> ALTER TABLE orders_history ADD city AS
(JSON_VALUE(order_details, '$.location.city'));
SQL> ALTER TABLE orders_history ADD state AS
(JSON_VALUE(order_details, '$.location.state'));
SQL> ALTER TABLE orders_history ADD salesamount AS
(JSON_VALUE(order_details, '$.salesAmount'));
Create Virtual Columns on the Orders_History table
50
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
SQL> ALTER TABLE customers INMEMORY;
SQL> ALTER TABLE orders_history INMEMORY;
SQL> SELECT count(*) FROM customers;
SQL> SELECT count(*) FROM orders_history;
SQL> SELECT segment_name,
populate_status, bytes_not_populated
FROM v$im_segments;
Place Tables into IM Column Store
51
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
52Public
Wow, that’s fantastic. Will it
automatically stay
In-Memory?
Yup, all done for you by
the database!
This is awesome! That's
exactly what you want from
a database. Schema
flexibility, analytics and
performance.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Public 53
Just When you think everything is done …........
Security guy
Have you secured the
customer sensitive
data?
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
54Public
Hey one more thing, Mark has given us
some ridiculous security requirements.
Nobody is allowed to see the loyalty card
number and stuff like that. Can we do
something there too?"
Sure we can Let's
implement data redaction.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Define a Redaction Policy to Redact Employee Last Name
SQL> BEGIN
dbms_redact.add_policy( object_schema => ’coffeeshop',
object_name => ’customers',
column_name => ’c_custid',
policy_name => 'redact_Loyal_crd',
function_type => DBMS_REDACT.FULL,
expression => '1=1');
END;
/
Oracle Confidential – Internal/Restricted/Highly
Restricted
55
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Developer
56Public
This is just awesome, can
you also give me a REST
endpoint to that?
DBA
Of course!
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
DBADeveloper
57Public
Man, I wish we would have
talked to you sooner. You pretty
much got our go-live down
from 6 to 1 week! Hey, can we
just include you going forward
in our discussions and project
planning?
I'd be delighted to!
I always thought we should
work much closer together.
It's also great for me to have
better understand what apps
you are building in order to
support them.
Copyright © 2015, Oracle and/or its affiliates. All rights reserved. |
Summary: Oracle Database 12c & Developers = Best DevOps
Oracle Confidential – Internal/Restricted/Highly
Restricted
58
Flexibility
Native JSON support
REST Services
Scalability
Scale-out and Scale-up
Real-Time Analytics
JSON in the In-Memory
Column Store
Security
Data encrypted at rest
Data Redaction

Contenu connexe

Tendances

Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...
Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...
Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...Leighton Nelson
 
Oracle Data Protection - 1. část
Oracle Data Protection - 1. částOracle Data Protection - 1. část
Oracle Data Protection - 1. částMarketingArrowECS_CZ
 
Transform Your DBMS to Drive Application Innovation
Transform Your DBMS to Drive Application InnovationTransform Your DBMS to Drive Application Innovation
Transform Your DBMS to Drive Application InnovationEDB
 
JSON and the Oracle Database
JSON and the Oracle DatabaseJSON and the Oracle Database
JSON and the Oracle DatabaseMaria Colgan
 
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Tammy Bednar
 
APEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciAPEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciMarketingArrowECS_CZ
 
Implementing Security on a Large Multi-Tenant Cluster the Right Way
Implementing Security on a Large Multi-Tenant Cluster the Right WayImplementing Security on a Large Multi-Tenant Cluster the Right Way
Implementing Security on a Large Multi-Tenant Cluster the Right WayDataWorks Summit
 
EDB & ELOS Technologies - Break Free from Oracle
EDB & ELOS Technologies - Break Free from OracleEDB & ELOS Technologies - Break Free from Oracle
EDB & ELOS Technologies - Break Free from OracleEDB
 
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...DataWorks Summit
 
Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5EDB
 
Understanding Oracle GoldenGate 12c
Understanding Oracle GoldenGate 12cUnderstanding Oracle GoldenGate 12c
Understanding Oracle GoldenGate 12cIT Help Desk Inc
 
Biwa summit 2015 oaa oracle data miner hands on lab
Biwa summit 2015 oaa oracle data miner hands on labBiwa summit 2015 oaa oracle data miner hands on lab
Biwa summit 2015 oaa oracle data miner hands on labCharlie Berger
 
MOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database DevelopmentMOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database DevelopmentMonica Li
 
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...avanttic Consultoría Tecnológica
 
EPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in MinutesEPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in MinutesEDB
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to CloudMarcus Vinicius Miguel Pedro
 
The Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesThe Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesEDB
 
Spotlight private dns-oraclecloudservices
Spotlight private dns-oraclecloudservicesSpotlight private dns-oraclecloudservices
Spotlight private dns-oraclecloudservicesTammy Bednar
 
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)MarketingArrowECS_CZ
 

Tendances (20)

Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...
Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...
Database-as-a-Service with Oracle Enterprise Manager Cloud Control 12c and Or...
 
Oracle Data Protection - 1. část
Oracle Data Protection - 1. částOracle Data Protection - 1. část
Oracle Data Protection - 1. část
 
Transform Your DBMS to Drive Application Innovation
Transform Your DBMS to Drive Application InnovationTransform Your DBMS to Drive Application Innovation
Transform Your DBMS to Drive Application Innovation
 
JSON and the Oracle Database
JSON and the Oracle DatabaseJSON and the Oracle Database
JSON and the Oracle Database
 
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
Database@Home : Data Driven Apps - Data-driven Microservices Architecture wit...
 
APEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaciAPEX – jak vytvořit jednoduše aplikaci
APEX – jak vytvořit jednoduše aplikaci
 
Implementing Security on a Large Multi-Tenant Cluster the Right Way
Implementing Security on a Large Multi-Tenant Cluster the Right WayImplementing Security on a Large Multi-Tenant Cluster the Right Way
Implementing Security on a Large Multi-Tenant Cluster the Right Way
 
EDB & ELOS Technologies - Break Free from Oracle
EDB & ELOS Technologies - Break Free from OracleEDB & ELOS Technologies - Break Free from Oracle
EDB & ELOS Technologies - Break Free from Oracle
 
Autonomous Data Warehouse
Autonomous Data WarehouseAutonomous Data Warehouse
Autonomous Data Warehouse
 
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
Securing Enterprise Healthcare Big Data by the Combination of Knox/F5, Ranger...
 
Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5Expanding with EDB Postgres Advanced Server 9.5
Expanding with EDB Postgres Advanced Server 9.5
 
Understanding Oracle GoldenGate 12c
Understanding Oracle GoldenGate 12cUnderstanding Oracle GoldenGate 12c
Understanding Oracle GoldenGate 12c
 
Biwa summit 2015 oaa oracle data miner hands on lab
Biwa summit 2015 oaa oracle data miner hands on labBiwa summit 2015 oaa oracle data miner hands on lab
Biwa summit 2015 oaa oracle data miner hands on lab
 
MOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database DevelopmentMOUG17 Keynote: What's New from Oracle Database Development
MOUG17 Keynote: What's New from Oracle Database Development
 
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...
Meetup Oracle Database MAD_BCN: 1.3 Gestión del ciclo de vida de Oracle Datab...
 
EPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in MinutesEPAS + Cloud = Oracle Compatible Postgres in Minutes
EPAS + Cloud = Oracle Compatible Postgres in Minutes
 
2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud2019 - OOW - Database Migration Methods from On-Premise to Cloud
2019 - OOW - Database Migration Methods from On-Premise to Cloud
 
The Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle DatabasesThe Real Scoop on Migrating from Oracle Databases
The Real Scoop on Migrating from Oracle Databases
 
Spotlight private dns-oraclecloudservices
Spotlight private dns-oraclecloudservicesSpotlight private dns-oraclecloudservices
Spotlight private dns-oraclecloudservices
 
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)
Oracle databáze - zkonsolidovat, ochránit a ještě ušetřit! (1. část)
 

Similaire à Oracle database 12c_and_DevOps

Turning Relational Database Tables into Hadoop Datasources by Kuassi Mensah
Turning Relational Database Tables into Hadoop Datasources by Kuassi MensahTurning Relational Database Tables into Hadoop Datasources by Kuassi Mensah
Turning Relational Database Tables into Hadoop Datasources by Kuassi MensahData Con LA
 
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...DataWorks Summit
 
Oracle database in cloud, dr in cloud and overview of oracle database 18c
Oracle database in cloud, dr in cloud and overview of oracle database 18cOracle database in cloud, dr in cloud and overview of oracle database 18c
Oracle database in cloud, dr in cloud and overview of oracle database 18cAiougVizagChapter
 
Hacking Oracle Web Applications With Metasploit
Hacking Oracle Web Applications With MetasploitHacking Oracle Web Applications With Metasploit
Hacking Oracle Web Applications With MetasploitChris Gates
 
REST Enabling Your Oracle Database
REST Enabling Your Oracle DatabaseREST Enabling Your Oracle Database
REST Enabling Your Oracle DatabaseJeff Smith
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreMark Swarbrick
 
What's New in Oracle SQL Developer for 2018
What's New in Oracle SQL Developer for 2018What's New in Oracle SQL Developer for 2018
What's New in Oracle SQL Developer for 2018Jeff Smith
 
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...jdijcks
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...GeneXus
 
(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle CloudRuggero Citton
 
Tame Big Data with Oracle Data Integration
Tame Big Data with Oracle Data IntegrationTame Big Data with Oracle Data Integration
Tame Big Data with Oracle Data IntegrationMichael Rainey
 
Database Basics with PHP -- Connect JS Conference October 17th, 2015
Database Basics with PHP -- Connect JS Conference October 17th, 2015Database Basics with PHP -- Connect JS Conference October 17th, 2015
Database Basics with PHP -- Connect JS Conference October 17th, 2015Dave Stokes
 
Modern App Development with Oracle Cloud
Modern App Development with Oracle CloudModern App Development with Oracle Cloud
Modern App Development with Oracle CloudJuan Carlos Ruiz Rico
 
Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?DLT Solutions
 
NoSQL no MySQL 5.7
NoSQL no MySQL 5.7NoSQL no MySQL 5.7
NoSQL no MySQL 5.7MySQL Brasil
 
Reducing the Risks of Migrating Off Oracle
Reducing the Risks of Migrating Off OracleReducing the Risks of Migrating Off Oracle
Reducing the Risks of Migrating Off OracleEDB
 

Similaire à Oracle database 12c_and_DevOps (20)

Turning Relational Database Tables into Hadoop Datasources by Kuassi Mensah
Turning Relational Database Tables into Hadoop Datasources by Kuassi MensahTurning Relational Database Tables into Hadoop Datasources by Kuassi Mensah
Turning Relational Database Tables into Hadoop Datasources by Kuassi Mensah
 
Oracle NoSQL
Oracle NoSQLOracle NoSQL
Oracle NoSQL
 
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...
Big Data Management System: Smart SQL Processing Across Hadoop and your Data ...
 
Marcin Szałowicz - MySQL Workbench
Marcin Szałowicz - MySQL WorkbenchMarcin Szałowicz - MySQL Workbench
Marcin Szałowicz - MySQL Workbench
 
Oracle database in cloud, dr in cloud and overview of oracle database 18c
Oracle database in cloud, dr in cloud and overview of oracle database 18cOracle database in cloud, dr in cloud and overview of oracle database 18c
Oracle database in cloud, dr in cloud and overview of oracle database 18c
 
Hacking oracle using metasploit
Hacking oracle using metasploitHacking oracle using metasploit
Hacking oracle using metasploit
 
Hacking Oracle Web Applications With Metasploit
Hacking Oracle Web Applications With MetasploitHacking Oracle Web Applications With Metasploit
Hacking Oracle Web Applications With Metasploit
 
REST Enabling Your Oracle Database
REST Enabling Your Oracle DatabaseREST Enabling Your Oracle Database
REST Enabling Your Oracle Database
 
Oracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document StoreOracle Code Event - MySQL JSON Document Store
Oracle Code Event - MySQL JSON Document Store
 
Session 203 iouc summit database
Session 203 iouc summit databaseSession 203 iouc summit database
Session 203 iouc summit database
 
What's New in Oracle SQL Developer for 2018
What's New in Oracle SQL Developer for 2018What's New in Oracle SQL Developer for 2018
What's New in Oracle SQL Developer for 2018
 
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
Oracle Openworld Presentation with Paul Kent (SAS) on Big Data Appliance and ...
 
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
MySQL 20 años: pasado, presente y futuro; conoce las nuevas características d...
 
(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud
 
Tame Big Data with Oracle Data Integration
Tame Big Data with Oracle Data IntegrationTame Big Data with Oracle Data Integration
Tame Big Data with Oracle Data Integration
 
Database Basics with PHP -- Connect JS Conference October 17th, 2015
Database Basics with PHP -- Connect JS Conference October 17th, 2015Database Basics with PHP -- Connect JS Conference October 17th, 2015
Database Basics with PHP -- Connect JS Conference October 17th, 2015
 
Modern App Development with Oracle Cloud
Modern App Development with Oracle CloudModern App Development with Oracle Cloud
Modern App Development with Oracle Cloud
 
Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?Why Upgrade to Oracle Database 12c?
Why Upgrade to Oracle Database 12c?
 
NoSQL no MySQL 5.7
NoSQL no MySQL 5.7NoSQL no MySQL 5.7
NoSQL no MySQL 5.7
 
Reducing the Risks of Migrating Off Oracle
Reducing the Risks of Migrating Off OracleReducing the Risks of Migrating Off Oracle
Reducing the Risks of Migrating Off Oracle
 

Plus de Maria Colgan

Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptx
Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptxFive_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptx
Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptxMaria Colgan
 
Part4 Influencing Execution Plans with Optimizer Hints
Part4 Influencing Execution Plans with Optimizer HintsPart4 Influencing Execution Plans with Optimizer Hints
Part4 Influencing Execution Plans with Optimizer HintsMaria Colgan
 
Part3 Explain the Explain Plan
Part3 Explain the Explain PlanPart3 Explain the Explain Plan
Part3 Explain the Explain PlanMaria Colgan
 
Part2 Best Practices for Managing Optimizer Statistics
Part2 Best Practices for Managing Optimizer StatisticsPart2 Best Practices for Managing Optimizer Statistics
Part2 Best Practices for Managing Optimizer StatisticsMaria Colgan
 
Part1 of SQL Tuning Workshop - Understanding the Optimizer
Part1 of SQL Tuning Workshop - Understanding the OptimizerPart1 of SQL Tuning Workshop - Understanding the Optimizer
Part1 of SQL Tuning Workshop - Understanding the OptimizerMaria Colgan
 
Ground Breakers Romania: Oracle Autonomous Database
Ground Breakers Romania: Oracle Autonomous DatabaseGround Breakers Romania: Oracle Autonomous Database
Ground Breakers Romania: Oracle Autonomous DatabaseMaria Colgan
 
Ground Breakers Romania: Explain the explain_plan
Ground Breakers Romania: Explain the explain_planGround Breakers Romania: Explain the explain_plan
Ground Breakers Romania: Explain the explain_planMaria Colgan
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19cMaria Colgan
 
Explain the explain_plan
Explain the explain_planExplain the explain_plan
Explain the explain_planMaria Colgan
 
Beginners guide to_optimizer
Beginners guide to_optimizerBeginners guide to_optimizer
Beginners guide to_optimizerMaria Colgan
 
The Changing Role of a DBA in an Autonomous World
The Changing Role of a DBA in an Autonomous WorldThe Changing Role of a DBA in an Autonomous World
The Changing Role of a DBA in an Autonomous WorldMaria Colgan
 
Useful PL/SQL Supplied Packages
Useful PL/SQL Supplied PackagesUseful PL/SQL Supplied Packages
Useful PL/SQL Supplied PackagesMaria Colgan
 
Five Tips to Get the Most Out of Your Indexing
Five Tips to Get the Most Out of Your IndexingFive Tips to Get the Most Out of Your Indexing
Five Tips to Get the Most Out of Your IndexingMaria Colgan
 
Oracle optimizer bootcamp
Oracle optimizer bootcampOracle optimizer bootcamp
Oracle optimizer bootcampMaria Colgan
 

Plus de Maria Colgan (15)

Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptx
Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptxFive_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptx
Five_Things_You_Might_Not_Know_About_Oracle_Database_v2.pptx
 
Part5 sql tune
Part5 sql tunePart5 sql tune
Part5 sql tune
 
Part4 Influencing Execution Plans with Optimizer Hints
Part4 Influencing Execution Plans with Optimizer HintsPart4 Influencing Execution Plans with Optimizer Hints
Part4 Influencing Execution Plans with Optimizer Hints
 
Part3 Explain the Explain Plan
Part3 Explain the Explain PlanPart3 Explain the Explain Plan
Part3 Explain the Explain Plan
 
Part2 Best Practices for Managing Optimizer Statistics
Part2 Best Practices for Managing Optimizer StatisticsPart2 Best Practices for Managing Optimizer Statistics
Part2 Best Practices for Managing Optimizer Statistics
 
Part1 of SQL Tuning Workshop - Understanding the Optimizer
Part1 of SQL Tuning Workshop - Understanding the OptimizerPart1 of SQL Tuning Workshop - Understanding the Optimizer
Part1 of SQL Tuning Workshop - Understanding the Optimizer
 
Ground Breakers Romania: Oracle Autonomous Database
Ground Breakers Romania: Oracle Autonomous DatabaseGround Breakers Romania: Oracle Autonomous Database
Ground Breakers Romania: Oracle Autonomous Database
 
Ground Breakers Romania: Explain the explain_plan
Ground Breakers Romania: Explain the explain_planGround Breakers Romania: Explain the explain_plan
Ground Breakers Romania: Explain the explain_plan
 
What to Expect From Oracle database 19c
What to Expect From Oracle database 19cWhat to Expect From Oracle database 19c
What to Expect From Oracle database 19c
 
Explain the explain_plan
Explain the explain_planExplain the explain_plan
Explain the explain_plan
 
Beginners guide to_optimizer
Beginners guide to_optimizerBeginners guide to_optimizer
Beginners guide to_optimizer
 
The Changing Role of a DBA in an Autonomous World
The Changing Role of a DBA in an Autonomous WorldThe Changing Role of a DBA in an Autonomous World
The Changing Role of a DBA in an Autonomous World
 
Useful PL/SQL Supplied Packages
Useful PL/SQL Supplied PackagesUseful PL/SQL Supplied Packages
Useful PL/SQL Supplied Packages
 
Five Tips to Get the Most Out of Your Indexing
Five Tips to Get the Most Out of Your IndexingFive Tips to Get the Most Out of Your Indexing
Five Tips to Get the Most Out of Your Indexing
 
Oracle optimizer bootcamp
Oracle optimizer bootcampOracle optimizer bootcamp
Oracle optimizer bootcamp
 

Dernier

Fun all Day Call Girls in Jaipur 9332606886 High Profile Call Girls You Ca...
Fun all Day Call Girls in Jaipur   9332606886  High Profile Call Girls You Ca...Fun all Day Call Girls in Jaipur   9332606886  High Profile Call Girls You Ca...
Fun all Day Call Girls in Jaipur 9332606886 High Profile Call Girls You Ca...kumargunjan9515
 
Gartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptxGartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptxchadhar227
 
7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.ppt7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.pptibrahimabdi22
 
Statistics notes ,it includes mean to index numbers
Statistics notes ,it includes mean to index numbersStatistics notes ,it includes mean to index numbers
Statistics notes ,it includes mean to index numberssuginr1
 
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制vexqp
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Klinik kandungan
 
Kings of Saudi Arabia, information about them
Kings of Saudi Arabia, information about themKings of Saudi Arabia, information about them
Kings of Saudi Arabia, information about themeitharjee
 
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...gajnagarg
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteedamy56318795
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...Elaine Werffeli
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...gajnagarg
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...Health
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNKTimothy Spann
 
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...nirzagarg
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraGovindSinghDasila
 
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptx
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptxRESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptx
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptxronsairoathenadugay
 
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...gajnagarg
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...ZurliaSoop
 
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样wsppdmt
 
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...TrafficWave Generator Will Instantly drive targeted and engaging traffic back...
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...SOFTTECHHUB
 

Dernier (20)

Fun all Day Call Girls in Jaipur 9332606886 High Profile Call Girls You Ca...
Fun all Day Call Girls in Jaipur   9332606886  High Profile Call Girls You Ca...Fun all Day Call Girls in Jaipur   9332606886  High Profile Call Girls You Ca...
Fun all Day Call Girls in Jaipur 9332606886 High Profile Call Girls You Ca...
 
Gartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptxGartner's Data Analytics Maturity Model.pptx
Gartner's Data Analytics Maturity Model.pptx
 
7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.ppt7. Epi of Chronic respiratory diseases.ppt
7. Epi of Chronic respiratory diseases.ppt
 
Statistics notes ,it includes mean to index numbers
Statistics notes ,it includes mean to index numbersStatistics notes ,it includes mean to index numbers
Statistics notes ,it includes mean to index numbers
 
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
怎样办理圣地亚哥州立大学毕业证(SDSU毕业证书)成绩单学校原版复制
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
 
Kings of Saudi Arabia, information about them
Kings of Saudi Arabia, information about themKings of Saudi Arabia, information about them
Kings of Saudi Arabia, information about them
 
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...
Top profile Call Girls In Latur [ 7014168258 ] Call Me For Genuine Models We ...
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
SAC 25 Final National, Regional & Local Angel Group Investing Insights 2024 0...
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
 
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
+97470301568>>weed for sale in qatar ,weed for sale in dubai,weed for sale in...
 
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24  Building Real-Time Pipelines With FLaNKDATA SUMMIT 24  Building Real-Time Pipelines With FLaNK
DATA SUMMIT 24 Building Real-Time Pipelines With FLaNK
 
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - Almora
 
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptx
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptxRESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptx
RESEARCH-FINAL-DEFENSE-PPT-TEMPLATE.pptx
 
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...
Top profile Call Girls In Vadodara [ 7014168258 ] Call Me For Genuine Models ...
 
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
Jual Obat Aborsi Surabaya ( Asli No.1 ) 085657271886 Obat Penggugur Kandungan...
 
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
如何办理英国诺森比亚大学毕业证(NU毕业证书)成绩单原件一模一样
 
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...TrafficWave Generator Will Instantly drive targeted and engaging traffic back...
TrafficWave Generator Will Instantly drive targeted and engaging traffic back...
 

Oracle database 12c_and_DevOps

  • 1. Copyright © 2014, Oracle and/or its affiliates. All rights reserved. | Oracle Database 12c and DevOps Maria Colgan & Gerald Venzl Oracle Database Systems June, 2017 @SQLMaria @GeraldVenzl
  • 2. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. Safe Harbor Statement
  • 3. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Reputation: Fast & Agile • Primary focus: Delivery • Favorite line: “Let’s get it done” Public 3 Meet the Developer Developer
  • 4. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Reputation: Cautious & Risk Averse • Primary focus: Longevity & Security • Favorite line: “Let’s not get hacked” Public 4 Meet the DBA DBA
  • 5. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Together they must build a new web application for the recently acquired coffee shops chain Oracle Confidential – Internal/Restricted/Highly Restricted 5
  • 6. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Developer 6Public We need to build a new web application for the coffee shops we recently acquired in a hurry, so we want to use a flexible schema using JSON documents. Can you setup a MongoDB database for us? She cannot differentiate a blaster from a stick… Oh no! What does he want now? DBA Why don’t you just use Oracle?
  • 7. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 7 Oracle Database 12c as a Document Store 12.2 JSON SQL> CREATE TABLE orders (order_details BLOB CONSTRAINT is_json CHECK (order_details IS JSON) ); Table containing JSON documents Public • Oracle stores JSON in table columns • No special data type • Can be VARCHAR2, BLOB or CLOB • JSON supported by all Oracle features • Analytics, Encryption, In-Memory, RAC, Replication, Parallel SQL, … • Plus can index any JSON element
  • 8. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 8 Oracle Database 12c as a Document Store 12.2 JSON SQL> CREATE TABLE orders (order_details BLOB CONSTRAINT is_json CHECK (order_details IS JSON) ); Table containing JSON documents Public • Oracle stores JSON in table columns • No special data type • Can be VARCHAR2, BLOB or CLOB • JSON supported by all Oracle features • Analytics, Encryption, In-Memory, RAC, Replication, Parallel SQL, … • Plus can index any JSON element IS_JSON constraint ensures only legal JSON documents can be inserted
  • 9. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 9Public But the JSON document is BLOB. That’s not what we need. We need to be able to query the elements in the JSON documents? Don’t panic! Oracle offers native SQL support for JSON. Let me show you
  • 10. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 10 Native SQL Support for JSON 12.2 JSON Public • JSON can be queried using simple SQL dot notation SELECT o.order_details.location.city FROM orders o; Location -------------------- Boston Los Angeles New York San Francisco Washington SQL> desc ORDERS NAME TYPE ------------------ ----------- ORDER_DETAILS BLOB Table containing JSON documents {"date": "2017-05-03 10:40:36", "loyaltyCardNo": 1230, "location": { "city": "Dallas", "state": "TX”}, "salesAmount": 7.55, "order": [ { "item": "Espresso”, …. } }
  • 11. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | A few hours later …......... Public 11
  • 12. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 12Public Hey, we have decided to do everything via REST and we know that MongoDB can speak REST So it looks like we need a document store after all Dude, REST is out of the box with Oracle! Let me show you
  • 13. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Confidential – Internal/Restricted/Highly Restricted 13 Conn establishment Ackn Request Response Conn close Ackn 13 Request Response Conventional communication RESTful communication REST in a nutshell
  • 14. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle REST Data Services HTTP(s) API App-Dev with Relational Tables in Oracle Database { “loyaltyCardNo”: 1001, “name”: “Scott King”, “Location”: “500 Main street, Innovation CA” “date”: “Feb 27, 2017” "salesAmount": 4.15 “orders”: [{"item": "Mocha","size": "medium", "salesAmount": 4.15, "coffee_used_gram": 15}] } Oracle REST Data Services ORDS maps standard URI requests to corresponding relational SQL (not schemaless): e.g. SQL SELECT from customers and orders table. ORDS also transforms the SQL results into the highly popular JavaScript Object Notation (JSON), other formats include HTML, binary and CSV. Fully committed to supporting any and all standards required by Fusion / SaaS / FMW; we are actively engaged in the ongoing dialog. SQL URI Request or HTTP(s) post mapped to SQL request JDBC Connection Pool JSON SQL result to JSON transformation https://myhost/myapp/hr/customerorders/1001 URI
  • 15. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Configuring REST with Oracle Exadata Express Cloud Service 15
  • 16. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Configuring REST with Oracle Exadata Express Cloud Service 16 Give the service a name and specify the prefix
  • 17. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Configuring REST with Oracle Exadata Express Cloud Service 17 Specify the rest of the URL orders
  • 18. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Configuring REST with Oracle Exadata Express Cloud Service 18 Specify the type of service Specify the actual command to be used by the service
  • 19. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | REST Endpoint For Developer https://xxxx-5342177.db.us.oraclecloudapps.com/apex/coffeeshop/orders Oracle Confidential – Internal/Restricted/Highly Restricted 19
  • 20. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 20Public Developer DBA Go ahead, send your REST calls
  • 21. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Checking result of REST SELECT Count(*) FROM orders; COUNT(*) -------- 1 21
  • 22. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Developer 22Public This is awesome! You just reduced our time to market by two weeks! Thanks a million! DBA You’re welcome
  • 23. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | A few hours later …......... Public 23
  • 24. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Developer 24Public I’m heading home for the day and I want to keep working on my commute but I won’t have good internet connectivity. Can we build the same environment in Docker? DBA Absolutely! You will need to download the Docker image for Oracle Database 12c & Oracle SQL Developer Let me show you
  • 25. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 1. Click on the tools menu 2. Click on the REST Data Services 3. Click on Install Oracle Confidential – Internal/Restricted/Highly Restricted 25 Enabling SQL Developer as ORDS
  • 26. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 1. Use Oracle REST Data Service that’s included with SQL Dev 2. Specify the location for your REST config file 3. Click next Oracle Confidential – Internal/Restricted/Highly Restricted 26 Enabling SQL Developer as ORDS
  • 27. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 1. Fill in you the Service Name for your database in docker 2. Specify the password for your ORDS_PUBLIC_USER 3. Click next Oracle Confidential – Internal/Restricted/Highly Restricted 27 Enabling SQL Developer as ORDS
  • 28. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 1. Click Run Standalone mode 2. Specify HTTP PORT (8080) 3. Click next 4. Click finish Oracle Confidential – Internal/Restricted/Highly Restricted 28 Enabling SQL Developer as ORDS
  • 29. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | REST Endpoint For Docker http://localhost:8080/ords/coffeeshop/orders/order Oracle Confidential – Internal/Restricted/Highly Restricted 29
  • 30. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | A few days later …......... Public 30
  • 31. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 31Public How’s it going? Isn’t the CRM data already in the database with the JSON data? Yeah, exactly. Now we just need to build some classes to get that corresponding relational data for the JSON orders Hey, we are working on integrating the CRM data with that JSON data we stored
  • 32. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBA 32Public There is no need to integrate at the app level. You can use SQL to run a query against the JSON & the CRM data. Let me show you but first I’ll need to check what the structure of your JSON looks like. Developer
  • 33. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Data Guide : Understanding Your JSON Documents • Metadata discovery: discovers the structure of collection of JSON documents – Optional: deep analysis of JSON for List of Values, ranges, sizing etc. • Automatically Generates – Virtual columns – Relational views • De-normalized relational views for arrays – Reports/Synopsis of JSON structure 33
  • 34. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 34 SQL> SELECT JSON_DATAGUIDE(o.order_details) FROM orders o; JSON_DATAGUIDE(O.ORDER_DETAILS) ---------------------------------------------------------------------- [ {"o:path": "$.date", "type": "string", "o:length": 32 }, {"o:path": "$.order", "type": "array", "o:length": 256 }, {"o:path": "$.location", "type": "object", "o:length": 32}, {"o:path": "$.location.city", "type": "string", "o:length": 8}, .... { "o:path": "$.salesAmount", "type": "number", "o:length": 4 }, { "o:path": "$.loyaltyCardNo","type": "number", "o:length": 8}] Data Guide : Understanding Your JSON Documents
  • 35. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 35 SQL> SELECT JSON_DATAGUIDE(o.order_details) FROM orders o; JSON_DATAGUIDE(O.ORDER_DETAILS) ---------------------------------------------------------------------- [ {"o:path": "$.date", "type": "string", "o:length": 32 }, {"o:path": "$.order", "type": "array", "o:length": 256 }, {"o:path": "$.location", "type": "object", "o:length": 32}, {"o:path": "$.location.city", "type": "string", "o:length": 8}, .... { "o:path": "$.salesAmount", "type": "number", "o:length": 4 }, { "o:path": "$.loyaltyCardNo","type": "number", "o:length": 8}] Data Guide : Understanding Your JSON Documents
  • 36. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Query JSON with Relational Data SQL> SELECT c.c_name, o.order_details.location.city, SUM(To_number(o.order_details.salesAmount)) total FROM customers c, orders o WHERE c.c_custid = o.order_details.loyaltyCardNo GROUP BY c.c_name, o.order_details.location.city ORDER BY total Desc FETCH FIRST 10 ROWS ONLY; 36 FETCH FIRST 10 ROWS ONLY • New syntax to limit number of rows returned • Replaces SELECT * FROM WHERE ROWNUM<11
  • 37. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBA 37Public To make it easier for you, I can create a view so the developers don’t need to know all of the join conditions Developer My developers can write Java code in their sleep but this SQL stuff seems really complicated Can you do anything to help them with that?
  • 38. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Creating a View on Top of JSON & Relational Data SQL> CREATE OR REPLACE VIEW crm_data AS SELECT c.c_name, o.order_details.location.city, SUM(To_number(o.order_details.salesAmount)) total FROM customers c, orders o WHERE c.c_custid = o.order_details.loyaltyCardNo GROUP BY c.c_name, o.order_details.location.city ORDER BY total Desc FETCH FIRST 10 ROWS ONLY 38
  • 39. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Creating a View on Top of JSON & Relational Data SQL> SELECT * FROM crm_data; 39
  • 40. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 40Public No way, that just leads to a lot of round trips between app and database, which will make things even slower. And besides, this problem has already been solved. Ever heard of Materialized Views? That's great but how will that work when we have GBs of data in there. Surely just selecting the JSON first and then retrieving the corresponding customer data is faster and safer performance wise
  • 41. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 41Public Oh boy, this one really doesn’t feel the force! Developer A materialized what? DBA
  • 42. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | What is a Materialized View? • A materialized view is a database object that contains the results of a query • The query can be base on tables, view or other materialized views • Typically used to avoid repeating costly aggregations • Optimizer transforms queries against original tables into a semantically equivalent query against the materialized view • A trade off between disk space and CPU Oracle Confidential – Internal/Restricted/Highly Restricted 42
  • 43. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Creating Real-Time MV on Top of JSON & Relational Data SQL> CREATE MATERIALIZED VIEW top_customers_mv ENABLE query rewrite AS SELECT c.c_name, o.order_details.location.city, SUM(To_number(o.order_details.salesAmount)) total FROM customers c, orders o WHERE c.c_custid = o.order_details.loyaltyCardNo GROUP BY c.c_name, o.order_details.location.city; 43
  • 44. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Queries Automatically Redirected to Use Materialized View 44 SQL> SELECT * FROM crm_data;; --------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | --------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 10 | 20550 | |* 1 | VIEW | | 10 | 20550 | |* 2 | WINDOW SORT PUSHED RANK | | 1 | 2029 | | 3 | MAT_VIEW REWRITE ACCESS FULL| TOP_CUSTOMERS_MV | 1 | 2029 | ---------------------------------------------------------------------------
  • 45. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Developer 45Public I’m still not sure this approach will scale as we need the queries to be returned in sub-seconds. Can we try it with a bigger data set? DBA Sure. Where is the bigger data set?
  • 46. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Test MV Query Against Larger Dataset 2.56 million JSON documents Oracle Confidential – Internal/Restricted/Highly Restricted 46 SQL> CREATE MATERIALIZED VIEW top_customers_history_mv ENABLE query rewrite ENABLE on query computation AS SELECT c.c_name, o.order_details.location.city, SUM(To_number(o.order_details.salesAmount)) total FROM customers c, orders_history o WHERE c.c_custid = o.order_details.loyaltyCardNo GROUP BY c.c_name, o.order_details.location.city;
  • 47. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | 47Public The what? Developer Oh that’s great for the known reports but the marketing folks want to run ad-hoc reports too. What can we do to make sure they stay within 30 seconds? DBA Don’t panic, we can put the tables into the In-Memory column store
  • 48. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Oracle Database In-Memory: Dual Format Architecture • BOTH row and column formats for same table • Simultaneously active and transactionally consistent • OLTP uses proven row format • Analytics & reporting use new in-memory Column format • Seamlessly built into Database • All enterprise features work - RAC, Dataguard, Flashback, etc 48 Buffer Cache New In-Memory Column Store SALES SALES Row Format Column Format SALES
  • 49. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | • Full JSON documents populated using an optimized binary format • Additional expressions can be created on JSON columns (e.g. JSON_VALUE) & stored in column store • Queries on JSON content or expressions automatically directed to In-Memory format Superfast / Multi-Model Analytics: In-Memory JSON Relational In-Memory Colum Store In-Memory Virtual Columns In-Memory JSON Format Relational Virtual JSON 49 {"date": "2016-05-03 10:40:36", "loyaltyCardNo": 1230, "location": { "city": "Dallas", "state": "TX”}, "salesAmount": 7.55, "order": [ { "item": "Espresso”, …. } }
  • 50. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | SQL> ALTER TABLE orders_history ADD city AS (JSON_VALUE(order_details, '$.location.city')); SQL> ALTER TABLE orders_history ADD state AS (JSON_VALUE(order_details, '$.location.state')); SQL> ALTER TABLE orders_history ADD salesamount AS (JSON_VALUE(order_details, '$.salesAmount')); Create Virtual Columns on the Orders_History table 50
  • 51. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | SQL> ALTER TABLE customers INMEMORY; SQL> ALTER TABLE orders_history INMEMORY; SQL> SELECT count(*) FROM customers; SQL> SELECT count(*) FROM orders_history; SQL> SELECT segment_name, populate_status, bytes_not_populated FROM v$im_segments; Place Tables into IM Column Store 51
  • 52. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 52Public Wow, that’s fantastic. Will it automatically stay In-Memory? Yup, all done for you by the database! This is awesome! That's exactly what you want from a database. Schema flexibility, analytics and performance.
  • 53. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Public 53 Just When you think everything is done …........ Security guy Have you secured the customer sensitive data?
  • 54. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 54Public Hey one more thing, Mark has given us some ridiculous security requirements. Nobody is allowed to see the loyalty card number and stuff like that. Can we do something there too?" Sure we can Let's implement data redaction.
  • 55. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Define a Redaction Policy to Redact Employee Last Name SQL> BEGIN dbms_redact.add_policy( object_schema => ’coffeeshop', object_name => ’customers', column_name => ’c_custid', policy_name => 'redact_Loyal_crd', function_type => DBMS_REDACT.FULL, expression => '1=1'); END; / Oracle Confidential – Internal/Restricted/Highly Restricted 55
  • 56. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Developer 56Public This is just awesome, can you also give me a REST endpoint to that? DBA Of course!
  • 57. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | DBADeveloper 57Public Man, I wish we would have talked to you sooner. You pretty much got our go-live down from 6 to 1 week! Hey, can we just include you going forward in our discussions and project planning? I'd be delighted to! I always thought we should work much closer together. It's also great for me to have better understand what apps you are building in order to support them.
  • 58. Copyright © 2015, Oracle and/or its affiliates. All rights reserved. | Summary: Oracle Database 12c & Developers = Best DevOps Oracle Confidential – Internal/Restricted/Highly Restricted 58 Flexibility Native JSON support REST Services Scalability Scale-out and Scale-up Real-Time Analytics JSON in the In-Memory Column Store Security Data encrypted at rest Data Redaction

Notes de l'éditeur

  1. Pagination Size number of rows that will be returned per HTTP GET. It’s not necessary for put but it’s there by default in the GUI.