2. Patterns & Best Practices
para uma Arquitetura de SW
Baseada em In-Memory Data
Grid
Ricardo Ferreira
Java, FMW & Engineered Systems Expert
ricardo.s.ferreira@oracle.com
3. Oracle Corporation The Developers Conference 2013 (SP)3
Informações sobre o Palestrante
http://blogs.oracle.com/middlewareplace
@jricardoferreir
Procure por “Ricardo Ferreira, Oracle”
http://blogs.oracle.com/middlewareplace
Procure por “Ricardo Ferreira, Oracle”
http://youtube.com/rferreira12345tube
4. Oracle Corporation The Developers Conference 2013 (SP)4
Agenda
Dados Distribuídos Efetivamente Shared Nothing via P2P
Terabytes de Dados em Memória usando Off-Heap & SSD
Interoperabilidade de Dados entre Java, C++ & MS.NET
Processamento em Grid de Tarefas no Estilo Map/Reduce
Data Grids Geograficamente Distribuídos por Redes WAN
Offload de Sessões HTTP dos Application Servers
5. Oracle Corporation The Developers Conference 2013 (SP)5
• Escalabilidade das Aplicações
– Offload da Carga dos Backends com Cache de Dados - SGBDR, Aplicações, Mainframes
• Performance das Aplicações
– Acesso em Memória aos Dados - Acesso sem Latência, sem Sistemas de Backend Lentos
• Confiabilidade das Aplicações
– In-Memory Data Grids provêm Alta Disponibilidade para as Aplicações de Missão Crítica
In-Memory Data Grid
Aplicações &
Middleware
Aplicações &
Middleware
Escale, Aumente a Performance
& Melhore a Confiabilidade com
In-Memory Data Grids P2P
Dados Distribuídos Efetivamente Shared Nothing
Data Grids Escaláveis e Tolerantes a Falhas via P2P
6. Oracle Corporation The Developers Conference 2013 (SP)6
• Cluster distribui os dados primários entre todos os nós ativos
• Backup dos dados primários são distribuídos entre outros nós
• Visão lógica de todos os dados a partir de qualquer um dos nós
• Todos os nós verificam a saúde dos outros nós
• Quando um nó não está OK, os outros nós entram
num consenso sobre sua remoção do cluster
• O nó com problemas é removido do cluster
• Os nós restantes que estão sadios redistribuem
os dados primários e de backup do nó removido
X
?
Dados Distribuídos Efetivamente Shared Nothing
Data Grids Escaláveis e Tolerantes a Falhas via P2P
7. Oracle Corporation The Developers Conference 2013 (SP)7
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
HP Integrity
SuperDome 2
2 TB
Oracle SPARC
T-8 Server
4 TB
IBM Power
795 Server
4 TB 7.5 TB
Oracle Exalogic
Elastic Cloud
8. Oracle Corporation The Developers Conference 2013 (SP)8
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
Memória
Abundante
=
JVMs
Muito
Grandes
- Full GC
- Heap Defrag
- CPU “No Pau”
11. Oracle Corporation The Developers Conference 2013 (SP)11
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
4 GB
Heap
Por
JVM
13. Oracle Corporation The Developers Conference 2013 (SP)13
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
4 GB
Heap
Por
JVM
14. Oracle Corporation The Developers Conference 2013 (SP)14
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
4 GB
On-Heap
1 TB
Off-Heap
Benefícios
• Economia de Espaço
• Economia de Energia
• Economia de Pessoas
• Economia de HW, CPU
• Melhor uso da Rede
• Simples de Gerenciar
15. Oracle Corporation The Developers Conference 2013 (SP)15
Language
Evaluation
<< uses >>
~1.7 KB
Terabytes de Dados Completamente em Memória
Maximizando seus Servidores via Off-Heap & SSD
17. Oracle Corporation The Developers Conference 2013 (SP)17
Exemplo de Utilização no Brasil
Maior Operadora de Celular do Brasil & Espanha
• Produtos Utilizados:
– Oracle Coherence Grid Edition
– Oracle Coherence Management Pack
• Tamanho do Data Grid: 1.4 TB de Dados
• Volume de Throughput: 960K TPM (~16K TPS)
• Cluster com 6 Servidores com 256 GB de RAM
• Data Grid Geograficamente Distribuído em 5 UFs
Competidores:
- SAG TerraCotta
- Red Hat InfiniSpan
- Pivotal GemFire
18. Oracle Corporation The Developers Conference 2013 (SP)18
Exemplo de Utilização no Brasil
Maior Internet Banking do Brasil (Um dos Maiores Bancos)
• Produtos Utilizados:
– Oracle Coherence Grid Edition
– Oracle Coherence Management Pack
• Tamanho do Data Grid: 480 GB de Dados
• Volume de Throughput: 200M de Clicks / Dia
• Cluster com 60 VMs com 8 GB de RAM Cada
• Aplicação C++ (VS 2005) acessando Data Grid
Competidores:
- IBM eXtreme Scale
- Microsoft AppFabric
- GridGain Software