SlideShare una empresa de Scribd logo
1 de 46
Descargar para leer sin conexión
Multitenancy:
Da teoria à realidade,
Do DB ao Middleware
Bruno Borges
Principal Product Manager
Bruno Borges
Principal Product Manager - Middleware
Desenvolvedor, Gamer
Entusiasta em Java Embedded e JavaFX
Twitter: @brunoborges

3

Copyright © 2013, 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.

4

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multi-tenancy

5

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multiple Apps e Single App
Uma aplicação e um banco de dados

Cliente 1
Cliente 2

APP

DB

Cliente 3
Cliente 4

6

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

… where client_id = ?
Multiple Apps e Single App
Uma aplicação e um banco de dados
 Um único banco de dados (schema) e uma única instância da

aplicação
– Todos os dados de todos os clientes na mesma base
– Recursos de banco compartilhados com todos
 Clientes que possuem mais dados podem prejudicar clientes menores
– Dificuldade em realizar backups por clientes
 Backup de todo o banco pode ser custoso, demorado

– Lógica específica para separação dos dados dos clientes

7

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multiple Apps e Single App
Uma aplicação, múltiplos bancos de dados

Cliente 1

Cliente 2

múltiplos DS:
...lookup(“jdbc/db1”);

DB 1

APP

DB 2

Cliente 3
DB 3

8

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multiple Apps e Single App
Como trabalhamos hoje?
 Múltiplos bancos de dados/schemas e uma única aplicação
– Maior complexidade em administrar N bases/schemas
– Separação dos dados de forma lógica/física
– Dificuldade em customizar

9

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multiple Apps e Single App
Múltiplas aplicações e múltiplos bancos de dados
SSO com redirect
Cliente 1

DB 1

Cliente 2

APP 2

DB 2

Cliente 3

10

APP 1

APP 3

DB 3

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multiple Apps e Single App
Como trabalhamos hoje?
 Múltiplas bases/schemas e múltiplas instâncias de app
– Maior custo em infraestrutura
– Dificuldade em manutenção/customização
– Escalabilidade complexa

11

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Multi-tenancy:
do jeito certo

12

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Uma instância, múltiplos tenants de dados
Como devemos fazer?
getConnection(“pdb1”);
Cliente 1

PDB
1

Cliente 2

PDB
2

APP

CDB
PDB
3

Cliente 3

1 único DS
Cliente 4

13

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

PDB
4
Oracle Database 12c

14

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Private Database Cloud Architectures
Using Oracle Database 11g
Virtual Machines

Dedicated Databases

share servers

share servers and OS
Increasing Consolidation

15

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Schema Consolidation

share servers, OS and database
Private Database Cloud Architectures
Using Oracle Database 12c
Virtual Machines

Dedicated Databases

Pluggable Databases

share servers

share servers and OS

share servers, OS and database

Increasing Consolidation

16

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Oracle Database Architecture
Requires memory, processes and database files
System Resources

17

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
New Multitenant Architecture
Memory and processes required at container level only
System Resources

18

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
New Multitenant Architecture
Memory and processes required at container level only
System Resources

19

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Pluggable vs Separate Databases
Highly Efficient: 6x Less H/W Resource, 5x more Scalable
OLTP benchmark comparison
Only 3GB of memory vs. 20GB
memory used for 50 databases
Pluggable databases scaled to
over 250 while separate
database instances maxed at 50

20

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Managing Shared Resources
Resource management for consolidated databases

Low Priority
Medium Priority
High Priority

21

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Improved Agility With Changing Workloads
Expand Cluster to Support Flexible Consolidation Model
Services
CDB Instance 1

CDB Instance 2

Single SGA per
CDB Instance
Node1

Multitenant Container Database (CDB)

22

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Node2
Improved Agility With Changing Workloads
Expand Cluster to Support Flexible Consolidation Model
Services
CDB Instance 1

CDB Instance 3

CDB Instance 2

Single SGA per
CDB Instance
Node1

Node3

Multitenant Container Database (CDB)

23

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Node2
Managing Database Service Level Tiers
Change tiers as databases become more mission critical

GOLD

SILVER

BRONZE
24

RAC, Data Guard, Daily Incrementals

Data Guard, Daily Incrementals

Weekly Full Backups

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Fast Provisioning
Pluggable databases can be quickly provisioned from seed
Time Taken to Provision New Database
25
20
15
10

5
0
Non CDB

25

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

PDB

Clone PDB using
Copy-on-Write File
System
Creating Databases for Test and Development
Fast, flexible copy and snapshot of pluggable databases

26

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Nova Arquitetura Multitenant
Ideal para consolidar Cloud Databases
No application changes
Isolation and multitenancy
Fast provisioning and cloning

Secure and highly available
Lower IT costs
Manage many as one
Greater resource utilization
Performant and scalable

27

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Integração DB 12c com
Oracle WebLogic Server

28

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Integração WebLogic com Pluggable Databases
Maior densidade e escalabilidad, Multi-Tenancy
•

Integrando WebLogic Server
com Pluggable Databases
•

Integração suave e coerente

•

Suporte a MultiTenancy com
conexão automática ao PDB
(tenant) usando Set Container

WebLogic Cluster
App 1
Get Connection
Tenant1

App 1

App 2

App 2

Mgd Svr 1

Mgd Svr 2

Data Source
Set Container
PDB1

PDB1
Tenant
1

Set Container
PDB2

PDB2
Tenant
2

Container Database

29

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

…

Get Connection
Tenant2
Integração WebLogic com PDB: 1 Datasource por PDB/Tenant

Maior Densidade e Escalabilidade na Camada de Dados
 Pluggable databases aparecem

como bancos normais no
WebLogic

WebLogic Domain 1

DS1

DS2

WebLogic Domain 2

DS3

DS4

DS5

DS6

 No WebLogic, configure um

datasource por PDB/Tenant
PDB
1

PDB
2

PDB
3

PDB
4

PDB
5

Container Database

30

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

PDB
6
Integração WebLogic com PDB: Troca de Conexão entre PDBs
Maior Densidade e Escalabilidade, Suporte a Multi-tenancy
 No WebLogic, configure um único

datasource com conexões a todos os
tenants no banco de dados
 Crie um callback handler com o label

da conexão para chamar setContainer
nas conexões

WebLogic Domain 1

Application 1: getConnection(Tenant5)
Connection
Label
Callback
Handler
setContainer()

 Habilita multi-tenancy nas camadas de

Datasource

1

1

1

2

2

2

5

4

4

dados e aplicação
 Permite maior densidade e

escalabilidade nas camadas de dados
e aplicação
–

31

Melhor uso de recursos

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

PDB
1

PDB
2

PDB
3

PDB
4

PDB
5

Container Database

PDB
6
Application Continuity – JDBC Replay
Improved Resiliency for Better User Experience
 Leverage feature supported in DB 12c
– Generic and GridLink datasources

WebLogic Cluster
Managed
Server 1

Managed
Server 2

Machine 1

Machine 2

 DB exceptions captured at datasource layer

GridLink Data Source

– Examples: RAC node failure, transient DB problem

 Automatically replay requests

2. Create Connection to
Surviving Node;
Replay if safe

1. FAN Down Event:
“Node 3 Down”

– Transparent to application
– Read and write requests supported
– No XA Transaction support

 Benefit: Better end user experience

Listener

Listener

Listener

ONS

ONS

ONS

Machine 1 Machine 2
RAC
RAC
Node 1
Node 2

RAC
Node 3
Machine
3 Down

RAC Cluster

32

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Application Continuity Notes
How it Works in WebLogic

 Active Gridlink and Generic datasources, 12c driver only
 Leverages JDBC replay, re-implemented in 12c DB
 Enabled with use of
oracle.jdbc.replay.OracleDataSourceImpl

driver class

–

When connection is taken from pool, “begin” is called

–

JDBC calls are “remembered” through commit

–

When connection is put back in the pool, “end” is called

 On failure, new connection is automatically created
–

Transparent to application!

–

Replay is already complete when connection is given to app

Limitations :cannot use
with XA, PLSQL, proxy
authentication, DRCP

33

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
WLS 10.3.6/12.1.1/12.1.2

WLS 10.3.6/12.1.1

WLS 12.1.2

WLS 10.3.6/12.1.1

WLS 12.1.2

with 12c drivers
with 11gR2 DB

with 12c
drivers
with 11gR2
DB

with 12c drivers
with 12c DB

with 12c drivers
with 12c DB

Feature
with 11g drivers
with 11gR2 DB

with 11g drivers
with 12c DB

Yes
Yes
(Read&Write w
(Read&Write w
Active GridLink and
Active GridLink only, Generic DataSource,
no XA transactions) no XA transactions )

JDBC replay (read/write)

No

No

No

No

Pluggable Database (PDB)
Dynamic switching between
PDBs

No

Yes (Except Set
Container)

No

No

Yes

Yes

No

No

No

No

No

Yes

Database Resident
Connection pooling (DRCP)

No

No

No

Yes

No

Oracle Notification Service
(ONS) auto configuration

No

No

No

No

No

Yes
Yes
(Active GridLink
only)

No

Yes
(Active GridLink only)

No

No

No

No

Yes

Yes

Global Database Services
(GDS)
JDBC 4.1 (using ojdbc7.jar
files & JDK 7)
34

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Yes
Yes
(Active GridLink only) (Active GridLink only)
Yes

Yes
Elasticidade com
Dynamic Clusters

35

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Dynamic Clusters
Configuração simplificada
Configuração inicial do Cluster

Operações para aumentar o cluster

Dynamic Cluster 1

Dynamic Cluster 1

Server Template

Server Template

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Server 4
Server 6

Server 7

36

Server 2

Server 5

Server 2

Server 1
Server 3

Server 1

Server 8
Dynamic Clusters Wizard
 Processo interativo passo-a-passo
 Criação simples de Cluster

Dinâmico
 Resultados:
–
–

Template de Servidor

–

Mapeamento de máquinas

–

37

Cluster com Servidores Dinâmicos

Mapeamento de portas e endereços

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Server Template

 Uso primário para Dynamic Clusters
– Também pode ser usado com Managed Servers configurados

 Servidores herdam mudanças dinamicamente
 Variáveis:
– ${id} instance id
– ${serverName}
– ${clusterName}

– ${domainName}
– ${system-property-name}

38

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
What’s Next for Dynamic Clusters
 Novo MBean ClusterLifecycleRuntime
– getNextServerName()
– getNumberRunningServers()

– getNumberShutdownServers()
– startNextServer()
– startServers(int numberToStart)
– shutdownLastServer()
– shutdownServers(int numberToShutdown)
– shutdownServers(int numberToShutdown,

int timeout, boolean ignoreSessions)

39

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

 Comandos de WLST para Dynamic

Clusters
– shrink (clusterName, numServers=1,

block=true, updateConfiguration=false)
– expand (clusterName, numServers=1,

block=true, updateConfiguration=false)
 Comandos de notificações WLDF WLST
– Permite auto-scaling

 Integração para OVM
Mais “What’s Next” para Dynamic Clusters

 Machine Mappings
– Max servers per machine
– Machine weight
– Machine-based cluster size increase

 Listen Addresses
– IP address ranges
– List of available IP addresses

40

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Elasticidade com
Configuração Simplificada
de JMS

41

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
Administração Cloud Nativa
Simplicidade e Escalabilidade de JMS
JMS

 WebLogic JMS para clouds on-premise

JMS

JMS

JMS

JMS

JMS

JMS

JMS

– Cluster-targeted JMS Servers and Stores

Expand

 Benefícios
– Flexible scaling of messaging services

JMS

– Much simpler config/subdeployments

JMS

JMS

JMS

Elastic JMS Cluster

– JMS enabled on Dynamic Clusters

Contract

 Expand to meet capacity demand

 Contract to increase efficiency
JMS

42

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Presented under Non-Disclosure Agreement – Do not Redistribute

JMS

JMS

JMS
Configuração JMS…12.1.1 e Antes

JMS Server 1

JMS Server 2

JMS Store 1

JMS Server 1
JMS Store 1

Server 1

Cluster

43

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

JMS Store 2

JMS Server 2
JMS Store 2

Server 2

JMS Server 3
JMS Store 3

JMS Server 3
JMS Store 3

Server 3

Config.xml
<JMS Server 1>
<target=managed
server 1>
</JMS Server 1>
<JMS Server 2>
<target=managed
server 2>
</JMS Server 2>
<JMS Server 3>
<target=managed
server 3>
</JMS Server 3>
…
JMS Module
Target=cluster
Subdeployment = JMS Server
1, JMS Server 2, JMS Server 3,
…
Configuração JMS…WebLogic 12.1.2
Simplicidade e Escalabilidade

Config.xml
<JMS Server 1>
<target=cluster>
</JMS Server 1>

JMS Server 1
JMS Store 1

JMS Module
JMS Server 1

JMS Server 1

JMS Store 1

JMS Store 1

Server 2

Server 1

JMS Server 1
JMS Store 1

Server 3

Target=cluster
Subdeployment = JMS Server 1

Cluster
Limitations
44

No UOO, UOW, no SAF agents/Bridges on Dynamic/mixed
Clusters
Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
PERGUNTAS?

45

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
OBRIGADO!
@brunoborges
blogs.oracle.com/brunoborges

46

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
47

Copyright © 2013, Oracle and/or its affiliates. All rights reserved.

Más contenido relacionado

La actualidad más candente

Oracle RAC 19c with Standard Edition (SE) 2 - Support Update
Oracle RAC 19c with Standard Edition (SE) 2 - Support UpdateOracle RAC 19c with Standard Edition (SE) 2 - Support Update
Oracle RAC 19c with Standard Edition (SE) 2 - Support UpdateMarkus Michalewicz
 
Oracle Database Availability & Scalability Across Versions & Editions
Oracle Database Availability & Scalability Across Versions & EditionsOracle Database Availability & Scalability Across Versions & Editions
Oracle Database Availability & Scalability Across Versions & EditionsMarkus Michalewicz
 
Standard Edition High Availability (SEHA) - The Why, What & How
Standard Edition High Availability (SEHA) - The Why, What & HowStandard Edition High Availability (SEHA) - The Why, What & How
Standard Edition High Availability (SEHA) - The Why, What & HowMarkus Michalewicz
 
Senior database administrator
Senior database administratorSenior database administrator
Senior database administratorMustafa EL-Masry
 
Un guide complet pour la migration de bases de données héritées vers PostgreSQL
Un guide complet pour la migration de bases de données héritées vers PostgreSQLUn guide complet pour la migration de bases de données héritées vers PostgreSQL
Un guide complet pour la migration de bases de données héritées vers PostgreSQLEDB
 
MAA for Oracle Database, Exadata and the Cloud
MAA for Oracle Database, Exadata and the CloudMAA for Oracle Database, Exadata and the Cloud
MAA for Oracle Database, Exadata and the CloudMarkus Michalewicz
 
Enterprise Manager DBaaS
Enterprise Manager DBaaSEnterprise Manager DBaaS
Enterprise Manager DBaaSomnidba
 
Oracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaOracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaMarketingArrowECS_CZ
 
Novinky ve světě Oracle DB a koncept konvergované databáze
Novinky ve světě Oracle DB a koncept konvergované databázeNovinky ve světě Oracle DB a koncept konvergované databáze
Novinky ve světě Oracle DB a koncept konvergované databázeMarketingArrowECS_CZ
 
Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Connor McDonald
 
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...Using PEM to understand and improve performance in Postgres: Postgres Tuning ...
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...EDB
 
Solution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataSolution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataInfiniteGraph
 
Presentation upgrade, migrate &amp; consolidate to oracle database 12c &amp...
Presentation   upgrade, migrate &amp; consolidate to oracle database 12c &amp...Presentation   upgrade, migrate &amp; consolidate to oracle database 12c &amp...
Presentation upgrade, migrate &amp; consolidate to oracle database 12c &amp...solarisyougood
 
Paper: Oracle RAC Internals - The Cache Fusion Edition
Paper: Oracle RAC Internals - The Cache Fusion EditionPaper: Oracle RAC Internals - The Cache Fusion Edition
Paper: Oracle RAC Internals - The Cache Fusion EditionMarkus Michalewicz
 
plug-into-cloud-wp-12c-1896100
plug-into-cloud-wp-12c-1896100plug-into-cloud-wp-12c-1896100
plug-into-cloud-wp-12c-1896100Prithvi Rajkumar
 
Database@Home : The Future is Data Driven
Database@Home : The Future is Data DrivenDatabase@Home : The Future is Data Driven
Database@Home : The Future is Data DrivenTammy Bednar
 
Why Care Risk Choose PostgreSQL
Why Care Risk Choose PostgreSQLWhy Care Risk Choose PostgreSQL
Why Care Risk Choose PostgreSQLEDB
 
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]Markus Michalewicz
 
EDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 WebinarEDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 WebinarEDB
 

La actualidad más candente (20)

Oracle RAC 19c with Standard Edition (SE) 2 - Support Update
Oracle RAC 19c with Standard Edition (SE) 2 - Support UpdateOracle RAC 19c with Standard Edition (SE) 2 - Support Update
Oracle RAC 19c with Standard Edition (SE) 2 - Support Update
 
Oracle Database Availability & Scalability Across Versions & Editions
Oracle Database Availability & Scalability Across Versions & EditionsOracle Database Availability & Scalability Across Versions & Editions
Oracle Database Availability & Scalability Across Versions & Editions
 
Standard Edition High Availability (SEHA) - The Why, What & How
Standard Edition High Availability (SEHA) - The Why, What & HowStandard Edition High Availability (SEHA) - The Why, What & How
Standard Edition High Availability (SEHA) - The Why, What & How
 
Senior database administrator
Senior database administratorSenior database administrator
Senior database administrator
 
Un guide complet pour la migration de bases de données héritées vers PostgreSQL
Un guide complet pour la migration de bases de données héritées vers PostgreSQLUn guide complet pour la migration de bases de données héritées vers PostgreSQL
Un guide complet pour la migration de bases de données héritées vers PostgreSQL
 
MAA for Oracle Database, Exadata and the Cloud
MAA for Oracle Database, Exadata and the CloudMAA for Oracle Database, Exadata and the Cloud
MAA for Oracle Database, Exadata and the Cloud
 
Enterprise Manager DBaaS
Enterprise Manager DBaaSEnterprise Manager DBaaS
Enterprise Manager DBaaS
 
Oracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaOracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management Platforma
 
Novinky ve světě Oracle DB a koncept konvergované databáze
Novinky ve světě Oracle DB a koncept konvergované databázeNovinky ve světě Oracle DB a koncept konvergované databáze
Novinky ve světě Oracle DB a koncept konvergované databáze
 
Oracle RAC 12c Overview
Oracle RAC 12c OverviewOracle RAC 12c Overview
Oracle RAC 12c Overview
 
Things learned from OpenWorld 2013
Things learned from OpenWorld 2013Things learned from OpenWorld 2013
Things learned from OpenWorld 2013
 
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...Using PEM to understand and improve performance in Postgres: Postgres Tuning ...
Using PEM to understand and improve performance in Postgres: Postgres Tuning ...
 
Solution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big DataSolution Use Case Demo: The Power of Relationships in Your Big Data
Solution Use Case Demo: The Power of Relationships in Your Big Data
 
Presentation upgrade, migrate &amp; consolidate to oracle database 12c &amp...
Presentation   upgrade, migrate &amp; consolidate to oracle database 12c &amp...Presentation   upgrade, migrate &amp; consolidate to oracle database 12c &amp...
Presentation upgrade, migrate &amp; consolidate to oracle database 12c &amp...
 
Paper: Oracle RAC Internals - The Cache Fusion Edition
Paper: Oracle RAC Internals - The Cache Fusion EditionPaper: Oracle RAC Internals - The Cache Fusion Edition
Paper: Oracle RAC Internals - The Cache Fusion Edition
 
plug-into-cloud-wp-12c-1896100
plug-into-cloud-wp-12c-1896100plug-into-cloud-wp-12c-1896100
plug-into-cloud-wp-12c-1896100
 
Database@Home : The Future is Data Driven
Database@Home : The Future is Data DrivenDatabase@Home : The Future is Data Driven
Database@Home : The Future is Data Driven
 
Why Care Risk Choose PostgreSQL
Why Care Risk Choose PostgreSQLWhy Care Risk Choose PostgreSQL
Why Care Risk Choose PostgreSQL
 
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]
Oracle Multitenant meets Oracle RAC 12c OOW13 [CON8706]
 
EDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 WebinarEDB Postgres Platform 11 Webinar
EDB Postgres Platform 11 Webinar
 

Similar a Multi-Tenancy: Da Teoria à Prática, do DB ao Middleware

Bilbao oracle12c keynote
Bilbao  oracle12c keynoteBilbao  oracle12c keynote
Bilbao oracle12c keynoteAitor Ibañez
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationYudi Herdiana
 
Simplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable DatabasesSimplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable Databasesomnidba
 
Oracle NoSQL Database release 3.0 overview
Oracle NoSQL Database release 3.0 overviewOracle NoSQL Database release 3.0 overview
Oracle NoSQL Database release 3.0 overviewPaulo Fagundes
 
Multitenant Full Deck Jan 2015 Cloud Team AJ Linkedin
Multitenant Full Deck Jan 2015 Cloud Team AJ LinkedinMultitenant Full Deck Jan 2015 Cloud Team AJ Linkedin
Multitenant Full Deck Jan 2015 Cloud Team AJ LinkedinArush Jain
 
Oracle_DB_sobre_Oracle
Oracle_DB_sobre_OracleOracle_DB_sobre_Oracle
Oracle_DB_sobre_OracleFran Navarro
 
Consolidate and prepare for cloud efficiencies
Consolidate and prepare for cloud efficienciesConsolidate and prepare for cloud efficiencies
Consolidate and prepare for cloud efficienciesDLT Solutions
 
How WebLogic 12c Can Boost Your Productivity
How WebLogic 12c Can Boost Your ProductivityHow WebLogic 12c Can Boost Your Productivity
How WebLogic 12c Can Boost Your ProductivityBruno Borges
 
HA, Scalability, DR & MAA in Oracle Database 21c - Overview
HA, Scalability, DR & MAA in Oracle Database 21c - OverviewHA, Scalability, DR & MAA in Oracle Database 21c - Overview
HA, Scalability, DR & MAA in Oracle Database 21c - OverviewMarkus Michalewicz
 
B7 accelerating your business with oracle data integration solutions
B7   accelerating your business with oracle data integration solutionsB7   accelerating your business with oracle data integration solutions
B7 accelerating your business with oracle data integration solutionsDr. Wilfred Lin (Ph.D.)
 
Oracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 VersionOracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 VersionMarkus Michalewicz
 
Oracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra PasalapudiOracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra Pasalapudipasalapudi123
 
Maximum Availability Architecture - Best Practices for Oracle Database 19c
Maximum Availability Architecture - Best Practices for Oracle Database 19cMaximum Availability Architecture - Best Practices for Oracle Database 19c
Maximum Availability Architecture - Best Practices for Oracle Database 19cGlen Hawkins
 
ODA solution in-a-box
ODA solution in-a-boxODA solution in-a-box
ODA solution in-a-boxOracle
 
Whats new in Oracle Database 12c release 12.1.0.2
Whats new in Oracle Database 12c release 12.1.0.2Whats new in Oracle Database 12c release 12.1.0.2
Whats new in Oracle Database 12c release 12.1.0.2Connor McDonald
 
Save money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinuxSave money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinuxEDB
 
Node.js and Oracle Database: New Development Techniques
Node.js and Oracle Database: New Development TechniquesNode.js and Oracle Database: New Development Techniques
Node.js and Oracle Database: New Development TechniquesChristopher Jones
 
OUG Scotland 2014 - NoSQL and MySQL - The best of both worlds
OUG Scotland 2014 - NoSQL and MySQL - The best of both worldsOUG Scotland 2014 - NoSQL and MySQL - The best of both worlds
OUG Scotland 2014 - NoSQL and MySQL - The best of both worldsAndrew Morgan
 

Similar a Multi-Tenancy: Da Teoria à Prática, do DB ao Middleware (20)

Oracle Database 12c : Multitenant
Oracle Database 12c : MultitenantOracle Database 12c : Multitenant
Oracle Database 12c : Multitenant
 
Bilbao oracle12c keynote
Bilbao  oracle12c keynoteBilbao  oracle12c keynote
Bilbao oracle12c keynote
 
Oracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for ConsolidationOracle Database 12c Multitenant for Consolidation
Oracle Database 12c Multitenant for Consolidation
 
Simplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable DatabasesSimplify Consolidation with Oracle Pluggable Databases
Simplify Consolidation with Oracle Pluggable Databases
 
Oracle NoSQL Database release 3.0 overview
Oracle NoSQL Database release 3.0 overviewOracle NoSQL Database release 3.0 overview
Oracle NoSQL Database release 3.0 overview
 
Multitenant Full Deck Jan 2015 Cloud Team AJ Linkedin
Multitenant Full Deck Jan 2015 Cloud Team AJ LinkedinMultitenant Full Deck Jan 2015 Cloud Team AJ Linkedin
Multitenant Full Deck Jan 2015 Cloud Team AJ Linkedin
 
Oracle_DB_sobre_Oracle
Oracle_DB_sobre_OracleOracle_DB_sobre_Oracle
Oracle_DB_sobre_Oracle
 
Consolidate and prepare for cloud efficiencies
Consolidate and prepare for cloud efficienciesConsolidate and prepare for cloud efficiencies
Consolidate and prepare for cloud efficiencies
 
How WebLogic 12c Can Boost Your Productivity
How WebLogic 12c Can Boost Your ProductivityHow WebLogic 12c Can Boost Your Productivity
How WebLogic 12c Can Boost Your Productivity
 
HA, Scalability, DR & MAA in Oracle Database 21c - Overview
HA, Scalability, DR & MAA in Oracle Database 21c - OverviewHA, Scalability, DR & MAA in Oracle Database 21c - Overview
HA, Scalability, DR & MAA in Oracle Database 21c - Overview
 
B7 accelerating your business with oracle data integration solutions
B7   accelerating your business with oracle data integration solutionsB7   accelerating your business with oracle data integration solutions
B7 accelerating your business with oracle data integration solutions
 
Oracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 VersionOracle Multitenant meets Oracle RAC - IOUG 2014 Version
Oracle Multitenant meets Oracle RAC - IOUG 2014 Version
 
Oracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra PasalapudiOracle database 12c introduction- Satyendra Pasalapudi
Oracle database 12c introduction- Satyendra Pasalapudi
 
Maximum Availability Architecture - Best Practices for Oracle Database 19c
Maximum Availability Architecture - Best Practices for Oracle Database 19cMaximum Availability Architecture - Best Practices for Oracle Database 19c
Maximum Availability Architecture - Best Practices for Oracle Database 19c
 
ODA solution in-a-box
ODA solution in-a-boxODA solution in-a-box
ODA solution in-a-box
 
Whats new in Oracle Database 12c release 12.1.0.2
Whats new in Oracle Database 12c release 12.1.0.2Whats new in Oracle Database 12c release 12.1.0.2
Whats new in Oracle Database 12c release 12.1.0.2
 
Save money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinuxSave money with Postgres on IBM PowerLinux
Save money with Postgres on IBM PowerLinux
 
Session 203 iouc summit database
Session 203 iouc summit databaseSession 203 iouc summit database
Session 203 iouc summit database
 
Node.js and Oracle Database: New Development Techniques
Node.js and Oracle Database: New Development TechniquesNode.js and Oracle Database: New Development Techniques
Node.js and Oracle Database: New Development Techniques
 
OUG Scotland 2014 - NoSQL and MySQL - The best of both worlds
OUG Scotland 2014 - NoSQL and MySQL - The best of both worldsOUG Scotland 2014 - NoSQL and MySQL - The best of both worlds
OUG Scotland 2014 - NoSQL and MySQL - The best of both worlds
 

Más de Bruno Borges

Secrets of Performance Tuning Java on Kubernetes
Secrets of Performance Tuning Java on KubernetesSecrets of Performance Tuning Java on Kubernetes
Secrets of Performance Tuning Java on KubernetesBruno Borges
 
[Outdated] Secrets of Performance Tuning Java on Kubernetes
[Outdated] Secrets of Performance Tuning Java on Kubernetes[Outdated] Secrets of Performance Tuning Java on Kubernetes
[Outdated] Secrets of Performance Tuning Java on KubernetesBruno Borges
 
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsFrom GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsBruno Borges
 
Making Sense of Serverless Computing
Making Sense of Serverless ComputingMaking Sense of Serverless Computing
Making Sense of Serverless ComputingBruno Borges
 
Visual Studio Code for Java and Spring Developers
Visual Studio Code for Java and Spring DevelopersVisual Studio Code for Java and Spring Developers
Visual Studio Code for Java and Spring DevelopersBruno Borges
 
Taking Spring Apps for a Spin on Microsoft Azure Cloud
Taking Spring Apps for a Spin on Microsoft Azure CloudTaking Spring Apps for a Spin on Microsoft Azure Cloud
Taking Spring Apps for a Spin on Microsoft Azure CloudBruno Borges
 
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...Bruno Borges
 
Melhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemMelhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemBruno Borges
 
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemTecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemBruno Borges
 
Java EE Arquillian Testing with Docker & The Cloud
Java EE Arquillian Testing with Docker & The CloudJava EE Arquillian Testing with Docker & The Cloud
Java EE Arquillian Testing with Docker & The CloudBruno Borges
 
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXMigrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXBruno Borges
 
Servidores de Aplicação: Por quê ainda precisamos deles?
Servidores de Aplicação: Por quê ainda precisamos deles?Servidores de Aplicação: Por quê ainda precisamos deles?
Servidores de Aplicação: Por quê ainda precisamos deles?Bruno Borges
 
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]Bruno Borges
 
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]Bruno Borges
 
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]Bruno Borges
 
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]Bruno Borges
 
Running Oracle WebLogic on Docker Containers [BOF7537]
Running Oracle WebLogic on Docker Containers [BOF7537]Running Oracle WebLogic on Docker Containers [BOF7537]
Running Oracle WebLogic on Docker Containers [BOF7537]Bruno Borges
 
Lightweight Java in the Cloud
Lightweight Java in the CloudLightweight Java in the Cloud
Lightweight Java in the CloudBruno Borges
 
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFXTweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFXBruno Borges
 
Integrando Oracle BPM com Java EE e WebSockets
Integrando Oracle BPM com Java EE e WebSocketsIntegrando Oracle BPM com Java EE e WebSockets
Integrando Oracle BPM com Java EE e WebSocketsBruno Borges
 

Más de Bruno Borges (20)

Secrets of Performance Tuning Java on Kubernetes
Secrets of Performance Tuning Java on KubernetesSecrets of Performance Tuning Java on Kubernetes
Secrets of Performance Tuning Java on Kubernetes
 
[Outdated] Secrets of Performance Tuning Java on Kubernetes
[Outdated] Secrets of Performance Tuning Java on Kubernetes[Outdated] Secrets of Performance Tuning Java on Kubernetes
[Outdated] Secrets of Performance Tuning Java on Kubernetes
 
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX AppsFrom GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
From GitHub Source to GitHub Release: Free CICD Pipelines For JavaFX Apps
 
Making Sense of Serverless Computing
Making Sense of Serverless ComputingMaking Sense of Serverless Computing
Making Sense of Serverless Computing
 
Visual Studio Code for Java and Spring Developers
Visual Studio Code for Java and Spring DevelopersVisual Studio Code for Java and Spring Developers
Visual Studio Code for Java and Spring Developers
 
Taking Spring Apps for a Spin on Microsoft Azure Cloud
Taking Spring Apps for a Spin on Microsoft Azure CloudTaking Spring Apps for a Spin on Microsoft Azure Cloud
Taking Spring Apps for a Spin on Microsoft Azure Cloud
 
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
A Look Back at Enterprise Integration Patterns and Their Use into Today's Ser...
 
Melhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na NuvemMelhore o Desenvolvimento do Time com DevOps na Nuvem
Melhore o Desenvolvimento do Time com DevOps na Nuvem
 
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na NuvemTecnologias Oracle em Docker Containers On-premise e na Nuvem
Tecnologias Oracle em Docker Containers On-premise e na Nuvem
 
Java EE Arquillian Testing with Docker & The Cloud
Java EE Arquillian Testing with Docker & The CloudJava EE Arquillian Testing with Docker & The Cloud
Java EE Arquillian Testing with Docker & The Cloud
 
Migrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFXMigrating From Applets to Java Desktop Apps in JavaFX
Migrating From Applets to Java Desktop Apps in JavaFX
 
Servidores de Aplicação: Por quê ainda precisamos deles?
Servidores de Aplicação: Por quê ainda precisamos deles?Servidores de Aplicação: Por quê ainda precisamos deles?
Servidores de Aplicação: Por quê ainda precisamos deles?
 
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
Build and Monitor Cloud PaaS with JVM’s Nashorn JavaScripts [CON1859]
 
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
Cloud Services for Developers: What’s Inside Oracle Cloud for You? [CON1861]
 
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
Booting Up Spring Apps on Lightweight Cloud Services [CON10258]
 
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
Java EE Application Servers: Containerized or Multitenant? Both! [CON7506]
 
Running Oracle WebLogic on Docker Containers [BOF7537]
Running Oracle WebLogic on Docker Containers [BOF7537]Running Oracle WebLogic on Docker Containers [BOF7537]
Running Oracle WebLogic on Docker Containers [BOF7537]
 
Lightweight Java in the Cloud
Lightweight Java in the CloudLightweight Java in the Cloud
Lightweight Java in the Cloud
 
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFXTweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
Tweet for Beer - Beertap Powered by Java Goes IoT, Cloud, and JavaFX
 
Integrando Oracle BPM com Java EE e WebSockets
Integrando Oracle BPM com Java EE e WebSocketsIntegrando Oracle BPM com Java EE e WebSockets
Integrando Oracle BPM com Java EE e WebSockets
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 

Multi-Tenancy: Da Teoria à Prática, do DB ao Middleware

  • 1. Multitenancy: Da teoria à realidade, Do DB ao Middleware Bruno Borges Principal Product Manager
  • 2. Bruno Borges Principal Product Manager - Middleware Desenvolvedor, Gamer Entusiasta em Java Embedded e JavaFX Twitter: @brunoborges 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 3. 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. 4 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 4. Multi-tenancy 5 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 5. Multiple Apps e Single App Uma aplicação e um banco de dados Cliente 1 Cliente 2 APP DB Cliente 3 Cliente 4 6 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. … where client_id = ?
  • 6. Multiple Apps e Single App Uma aplicação e um banco de dados  Um único banco de dados (schema) e uma única instância da aplicação – Todos os dados de todos os clientes na mesma base – Recursos de banco compartilhados com todos  Clientes que possuem mais dados podem prejudicar clientes menores – Dificuldade em realizar backups por clientes  Backup de todo o banco pode ser custoso, demorado – Lógica específica para separação dos dados dos clientes 7 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 7. Multiple Apps e Single App Uma aplicação, múltiplos bancos de dados Cliente 1 Cliente 2 múltiplos DS: ...lookup(“jdbc/db1”); DB 1 APP DB 2 Cliente 3 DB 3 8 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 8. Multiple Apps e Single App Como trabalhamos hoje?  Múltiplos bancos de dados/schemas e uma única aplicação – Maior complexidade em administrar N bases/schemas – Separação dos dados de forma lógica/física – Dificuldade em customizar 9 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 9. Multiple Apps e Single App Múltiplas aplicações e múltiplos bancos de dados SSO com redirect Cliente 1 DB 1 Cliente 2 APP 2 DB 2 Cliente 3 10 APP 1 APP 3 DB 3 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 10. Multiple Apps e Single App Como trabalhamos hoje?  Múltiplas bases/schemas e múltiplas instâncias de app – Maior custo em infraestrutura – Dificuldade em manutenção/customização – Escalabilidade complexa 11 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 11. Multi-tenancy: do jeito certo 12 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 12. Uma instância, múltiplos tenants de dados Como devemos fazer? getConnection(“pdb1”); Cliente 1 PDB 1 Cliente 2 PDB 2 APP CDB PDB 3 Cliente 3 1 único DS Cliente 4 13 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. PDB 4
  • 13. Oracle Database 12c 14 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 14. Private Database Cloud Architectures Using Oracle Database 11g Virtual Machines Dedicated Databases share servers share servers and OS Increasing Consolidation 15 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Schema Consolidation share servers, OS and database
  • 15. Private Database Cloud Architectures Using Oracle Database 12c Virtual Machines Dedicated Databases Pluggable Databases share servers share servers and OS share servers, OS and database Increasing Consolidation 16 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 16. Oracle Database Architecture Requires memory, processes and database files System Resources 17 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 17. New Multitenant Architecture Memory and processes required at container level only System Resources 18 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 18. New Multitenant Architecture Memory and processes required at container level only System Resources 19 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 19. Pluggable vs Separate Databases Highly Efficient: 6x Less H/W Resource, 5x more Scalable OLTP benchmark comparison Only 3GB of memory vs. 20GB memory used for 50 databases Pluggable databases scaled to over 250 while separate database instances maxed at 50 20 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 20. Managing Shared Resources Resource management for consolidated databases Low Priority Medium Priority High Priority 21 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 21. Improved Agility With Changing Workloads Expand Cluster to Support Flexible Consolidation Model Services CDB Instance 1 CDB Instance 2 Single SGA per CDB Instance Node1 Multitenant Container Database (CDB) 22 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Node2
  • 22. Improved Agility With Changing Workloads Expand Cluster to Support Flexible Consolidation Model Services CDB Instance 1 CDB Instance 3 CDB Instance 2 Single SGA per CDB Instance Node1 Node3 Multitenant Container Database (CDB) 23 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Node2
  • 23. Managing Database Service Level Tiers Change tiers as databases become more mission critical GOLD SILVER BRONZE 24 RAC, Data Guard, Daily Incrementals Data Guard, Daily Incrementals Weekly Full Backups Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 24. Fast Provisioning Pluggable databases can be quickly provisioned from seed Time Taken to Provision New Database 25 20 15 10 5 0 Non CDB 25 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. PDB Clone PDB using Copy-on-Write File System
  • 25. Creating Databases for Test and Development Fast, flexible copy and snapshot of pluggable databases 26 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 26. Nova Arquitetura Multitenant Ideal para consolidar Cloud Databases No application changes Isolation and multitenancy Fast provisioning and cloning Secure and highly available Lower IT costs Manage many as one Greater resource utilization Performant and scalable 27 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 27. Integração DB 12c com Oracle WebLogic Server 28 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 28. Integração WebLogic com Pluggable Databases Maior densidade e escalabilidad, Multi-Tenancy • Integrando WebLogic Server com Pluggable Databases • Integração suave e coerente • Suporte a MultiTenancy com conexão automática ao PDB (tenant) usando Set Container WebLogic Cluster App 1 Get Connection Tenant1 App 1 App 2 App 2 Mgd Svr 1 Mgd Svr 2 Data Source Set Container PDB1 PDB1 Tenant 1 Set Container PDB2 PDB2 Tenant 2 Container Database 29 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. … Get Connection Tenant2
  • 29. Integração WebLogic com PDB: 1 Datasource por PDB/Tenant Maior Densidade e Escalabilidade na Camada de Dados  Pluggable databases aparecem como bancos normais no WebLogic WebLogic Domain 1 DS1 DS2 WebLogic Domain 2 DS3 DS4 DS5 DS6  No WebLogic, configure um datasource por PDB/Tenant PDB 1 PDB 2 PDB 3 PDB 4 PDB 5 Container Database 30 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. PDB 6
  • 30. Integração WebLogic com PDB: Troca de Conexão entre PDBs Maior Densidade e Escalabilidade, Suporte a Multi-tenancy  No WebLogic, configure um único datasource com conexões a todos os tenants no banco de dados  Crie um callback handler com o label da conexão para chamar setContainer nas conexões WebLogic Domain 1 Application 1: getConnection(Tenant5) Connection Label Callback Handler setContainer()  Habilita multi-tenancy nas camadas de Datasource 1 1 1 2 2 2 5 4 4 dados e aplicação  Permite maior densidade e escalabilidade nas camadas de dados e aplicação – 31 Melhor uso de recursos Copyright © 2013, Oracle and/or its affiliates. All rights reserved. PDB 1 PDB 2 PDB 3 PDB 4 PDB 5 Container Database PDB 6
  • 31. Application Continuity – JDBC Replay Improved Resiliency for Better User Experience  Leverage feature supported in DB 12c – Generic and GridLink datasources WebLogic Cluster Managed Server 1 Managed Server 2 Machine 1 Machine 2  DB exceptions captured at datasource layer GridLink Data Source – Examples: RAC node failure, transient DB problem  Automatically replay requests 2. Create Connection to Surviving Node; Replay if safe 1. FAN Down Event: “Node 3 Down” – Transparent to application – Read and write requests supported – No XA Transaction support  Benefit: Better end user experience Listener Listener Listener ONS ONS ONS Machine 1 Machine 2 RAC RAC Node 1 Node 2 RAC Node 3 Machine 3 Down RAC Cluster 32 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 32. Application Continuity Notes How it Works in WebLogic  Active Gridlink and Generic datasources, 12c driver only  Leverages JDBC replay, re-implemented in 12c DB  Enabled with use of oracle.jdbc.replay.OracleDataSourceImpl driver class – When connection is taken from pool, “begin” is called – JDBC calls are “remembered” through commit – When connection is put back in the pool, “end” is called  On failure, new connection is automatically created – Transparent to application! – Replay is already complete when connection is given to app Limitations :cannot use with XA, PLSQL, proxy authentication, DRCP 33 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 33. WLS 10.3.6/12.1.1/12.1.2 WLS 10.3.6/12.1.1 WLS 12.1.2 WLS 10.3.6/12.1.1 WLS 12.1.2 with 12c drivers with 11gR2 DB with 12c drivers with 11gR2 DB with 12c drivers with 12c DB with 12c drivers with 12c DB Feature with 11g drivers with 11gR2 DB with 11g drivers with 12c DB Yes Yes (Read&Write w (Read&Write w Active GridLink and Active GridLink only, Generic DataSource, no XA transactions) no XA transactions ) JDBC replay (read/write) No No No No Pluggable Database (PDB) Dynamic switching between PDBs No Yes (Except Set Container) No No Yes Yes No No No No No Yes Database Resident Connection pooling (DRCP) No No No Yes No Oracle Notification Service (ONS) auto configuration No No No No No Yes Yes (Active GridLink only) No Yes (Active GridLink only) No No No No Yes Yes Global Database Services (GDS) JDBC 4.1 (using ojdbc7.jar files & JDK 7) 34 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Yes Yes (Active GridLink only) (Active GridLink only) Yes Yes
  • 34. Elasticidade com Dynamic Clusters 35 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 35. Dynamic Clusters Configuração simplificada Configuração inicial do Cluster Operações para aumentar o cluster Dynamic Cluster 1 Dynamic Cluster 1 Server Template Server Template Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Server 4 Server 6 Server 7 36 Server 2 Server 5 Server 2 Server 1 Server 3 Server 1 Server 8
  • 36. Dynamic Clusters Wizard  Processo interativo passo-a-passo  Criação simples de Cluster Dinâmico  Resultados: – – Template de Servidor – Mapeamento de máquinas – 37 Cluster com Servidores Dinâmicos Mapeamento de portas e endereços Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 37. Server Template  Uso primário para Dynamic Clusters – Também pode ser usado com Managed Servers configurados  Servidores herdam mudanças dinamicamente  Variáveis: – ${id} instance id – ${serverName} – ${clusterName} – ${domainName} – ${system-property-name} 38 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 38. What’s Next for Dynamic Clusters  Novo MBean ClusterLifecycleRuntime – getNextServerName() – getNumberRunningServers() – getNumberShutdownServers() – startNextServer() – startServers(int numberToStart) – shutdownLastServer() – shutdownServers(int numberToShutdown) – shutdownServers(int numberToShutdown, int timeout, boolean ignoreSessions) 39 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.  Comandos de WLST para Dynamic Clusters – shrink (clusterName, numServers=1, block=true, updateConfiguration=false) – expand (clusterName, numServers=1, block=true, updateConfiguration=false)  Comandos de notificações WLDF WLST – Permite auto-scaling  Integração para OVM
  • 39. Mais “What’s Next” para Dynamic Clusters  Machine Mappings – Max servers per machine – Machine weight – Machine-based cluster size increase  Listen Addresses – IP address ranges – List of available IP addresses 40 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 40. Elasticidade com Configuração Simplificada de JMS 41 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 41. Administração Cloud Nativa Simplicidade e Escalabilidade de JMS JMS  WebLogic JMS para clouds on-premise JMS JMS JMS JMS JMS JMS JMS – Cluster-targeted JMS Servers and Stores Expand  Benefícios – Flexible scaling of messaging services JMS – Much simpler config/subdeployments JMS JMS JMS Elastic JMS Cluster – JMS enabled on Dynamic Clusters Contract  Expand to meet capacity demand  Contract to increase efficiency JMS 42 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. Presented under Non-Disclosure Agreement – Do not Redistribute JMS JMS JMS
  • 42. Configuração JMS…12.1.1 e Antes JMS Server 1 JMS Server 2 JMS Store 1 JMS Server 1 JMS Store 1 Server 1 Cluster 43 Copyright © 2013, Oracle and/or its affiliates. All rights reserved. JMS Store 2 JMS Server 2 JMS Store 2 Server 2 JMS Server 3 JMS Store 3 JMS Server 3 JMS Store 3 Server 3 Config.xml <JMS Server 1> <target=managed server 1> </JMS Server 1> <JMS Server 2> <target=managed server 2> </JMS Server 2> <JMS Server 3> <target=managed server 3> </JMS Server 3> … JMS Module Target=cluster Subdeployment = JMS Server 1, JMS Server 2, JMS Server 3, …
  • 43. Configuração JMS…WebLogic 12.1.2 Simplicidade e Escalabilidade Config.xml <JMS Server 1> <target=cluster> </JMS Server 1> JMS Server 1 JMS Store 1 JMS Module JMS Server 1 JMS Server 1 JMS Store 1 JMS Store 1 Server 2 Server 1 JMS Server 1 JMS Store 1 Server 3 Target=cluster Subdeployment = JMS Server 1 Cluster Limitations 44 No UOO, UOW, no SAF agents/Bridges on Dynamic/mixed Clusters Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 44. PERGUNTAS? 45 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 45. OBRIGADO! @brunoborges blogs.oracle.com/brunoborges 46 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.
  • 46. 47 Copyright © 2013, Oracle and/or its affiliates. All rights reserved.