1   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Processamento de Dados em
Memória usando Elastic Data
Grid (In-Memory Computing)
Ricardo S. Ferreira
Java, FMW & Engineered Systems Expert
ricardo.s.ferreira@oracle.com
Agenda


        Overview sobre Tecnologias de Elastic Data Grid
        Demo 1: Overview sobre a API do Oracle Coherence
        Demo 2: Usando recursos de Queries e Analytics
        Demo 3: Real-time Events & Queries Contínuas
        Demo 4: MapReduce e Agregações Paralelas



3   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Agenda (Continuação)


        Demo 5: API Cliente do Coherence para .NET & C++
        Demo 6: API Cliente do Coherence para REST/JSON
        Demo 7: Integração do Coherence com Java EE 6
        Demo 8: Terabytes em Memória usando Elastic Data
        Demo 9: Off-loading da Sessão HTTP do AppServer



4   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
O que é um Elastic Data Grid?
       Princípios Arquiteturais para este Tipo de Tecnologia
         Grandes volumes de dados
          em múltiplos processos                                 Application Server       Application Server


         Processos (JVMs) podem ser                                          Elastic Data Grid
                                                                                           Elastic Data Grid

          adicionados ou retirados sob                                 JVM                       JVM                 JVM

          demanda (Escala Elástica)                              Operating System         Operating System     Operating System


         A ausência de overhead de
          I/O possibilita o acesso em
          tempo real aos dados
         Possibilidade de execução
          distribuída de tarefas no grid

5   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Elastic Data Grid: Fazer Mais com Menos!
       Investir mais nos recursos que são abundantes
                          Aplicativos &                                                           Aplicativos &
                           Middleware                                                              Middleware


                                                                 Escale, Aumente Performance &     Coherence
                                                                  Melhore a Confiabilidade com
                                                                  Elastic Data Grid Peer 2 Peer


          Aplicações mais Escaláveis
                   – Reduzir a carga dos backends (Mainframes, B.D) usando cache em memória
          Aplicações mais Performáticas
                   – Acesso instantâneo aos dados: sem overhead de I/O, dados sempre na RAM
          Aplicações mais Confiáveis
                   – Elastic Data Grid provê maior disponibilidade dos dados para as aplicações


6   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Elastic Data Grids na Plataforma Java
       JSR 107 & JSR 347: Padronizando o que é provado que funciona!

          JSR 107: Java Temporary Caching API
                   – Cache simples bem como operações padrões e o controle (do cache)
                   – Padrão antigo mas que ficou muito tempo “deixado de lado”
                   – Várias implementações no mercado: Coherence, GemFire, Terracotta, InfiniSpan

          JSR 347: Data Grid for the Java Platform
                   – Foco principal em caches distribuídos. Diversos uso e aplicações
                   – Padrões de replicação, distribuição e compartilhamento de objetos
                   – Padronização dos mecanismos de serialização. Várias linguagens
                   – Unificação de sessões HTTP dos Application Servers. Cache L2 para JPA




7   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Oracle Coherence (Elastic Data Grid)
       #1 Solução de In-Memory Computing do Mundo
                                                                              Oracle
                                                                              adquire         Incorporação no fusion middleware, fundação para os
                                                                             Tangosol         aplicativos e soluções da Oracle, incluindo o Exalogic




              2000                     2001                      …..        2007            2008            2009          2010          2011




        Tangosol é               Coherence                             Cool Vendor         Coherence       Coherence       Coherence       Coherence
         fundada e                  1.0                                  Award                3.5             3.6             3.7            3.7.1.1
         se torna a
        pioneira em
        In-Memory                                                                    Aumento do market share e das features de In-Memory Data Grid. Adoção
        Computing                                                                     em larga escala por várias indústrias, tais como: bancos, e-commerce,
                                                                                          viagens & turismo, seguradoras, games, telecomunicações…



8   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Oracle Coherence (Elastic Data Grid)
       Criado para Garantir Nenhum SPOB ou SPOF
• Cluster de nós armazenam parte dos dados primários localmente
• Backup dos dados primários é distribuído entre os demais nós
• Visão lógica de todos os dados a partir de qualquer nó do cluster



                                                                 • Todos os nós verificam a saúde dos outros nós
                              ?                                  • No caso de falha em um dos nós, os demais nós
                                                                   diagnosticam a falha e tomam ações


                                                                                                                   X
                                  • O nó defeituoso é então isolado do cluster
                                  • Os dados primários e os de backup do nó
                                    defeituoso é transferido para os demais nós


9   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
Vamos à Prática!


10   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
Caso de Uso do Coherence: Modelo de Domínio
     “Qual é a Linguagem de Programação mais popular do Mundo?”

                                                                                         Evaluation
                                                                            << uses >>
      Language




                                                                                                      ~1.5 KB

11   Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
12   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP
13   Oracle Corporation   Encontro SouJava de 2013 na Oracle SP

Processamento de Dados em Memória usando Elastic Data Grid (In-Memory Computing)

  • 1.
    1 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 2.
    Processamento de Dadosem Memória usando Elastic Data Grid (In-Memory Computing) Ricardo S. Ferreira Java, FMW & Engineered Systems Expert ricardo.s.ferreira@oracle.com
  • 3.
    Agenda  Overview sobre Tecnologias de Elastic Data Grid  Demo 1: Overview sobre a API do Oracle Coherence  Demo 2: Usando recursos de Queries e Analytics  Demo 3: Real-time Events & Queries Contínuas  Demo 4: MapReduce e Agregações Paralelas 3 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 4.
    Agenda (Continuação)  Demo 5: API Cliente do Coherence para .NET & C++  Demo 6: API Cliente do Coherence para REST/JSON  Demo 7: Integração do Coherence com Java EE 6  Demo 8: Terabytes em Memória usando Elastic Data  Demo 9: Off-loading da Sessão HTTP do AppServer 4 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 5.
    O que éum Elastic Data Grid? Princípios Arquiteturais para este Tipo de Tecnologia  Grandes volumes de dados em múltiplos processos Application Server Application Server  Processos (JVMs) podem ser Elastic Data Grid Elastic Data Grid adicionados ou retirados sob JVM JVM JVM demanda (Escala Elástica) Operating System Operating System Operating System  A ausência de overhead de I/O possibilita o acesso em tempo real aos dados  Possibilidade de execução distribuída de tarefas no grid 5 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 6.
    Elastic Data Grid:Fazer Mais com Menos! Investir mais nos recursos que são abundantes Aplicativos & Aplicativos & Middleware Middleware Escale, Aumente Performance & Coherence Melhore a Confiabilidade com Elastic Data Grid Peer 2 Peer  Aplicações mais Escaláveis – Reduzir a carga dos backends (Mainframes, B.D) usando cache em memória  Aplicações mais Performáticas – Acesso instantâneo aos dados: sem overhead de I/O, dados sempre na RAM  Aplicações mais Confiáveis – Elastic Data Grid provê maior disponibilidade dos dados para as aplicações 6 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 7.
    Elastic Data Gridsna Plataforma Java JSR 107 & JSR 347: Padronizando o que é provado que funciona!  JSR 107: Java Temporary Caching API – Cache simples bem como operações padrões e o controle (do cache) – Padrão antigo mas que ficou muito tempo “deixado de lado” – Várias implementações no mercado: Coherence, GemFire, Terracotta, InfiniSpan  JSR 347: Data Grid for the Java Platform – Foco principal em caches distribuídos. Diversos uso e aplicações – Padrões de replicação, distribuição e compartilhamento de objetos – Padronização dos mecanismos de serialização. Várias linguagens – Unificação de sessões HTTP dos Application Servers. Cache L2 para JPA 7 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 8.
    Oracle Coherence (ElasticData Grid) #1 Solução de In-Memory Computing do Mundo Oracle adquire Incorporação no fusion middleware, fundação para os Tangosol aplicativos e soluções da Oracle, incluindo o Exalogic 2000 2001 ….. 2007 2008 2009 2010 2011 Tangosol é Coherence Cool Vendor Coherence Coherence Coherence Coherence fundada e 1.0 Award 3.5 3.6 3.7 3.7.1.1 se torna a pioneira em In-Memory Aumento do market share e das features de In-Memory Data Grid. Adoção Computing em larga escala por várias indústrias, tais como: bancos, e-commerce, viagens & turismo, seguradoras, games, telecomunicações… 8 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 9.
    Oracle Coherence (ElasticData Grid) Criado para Garantir Nenhum SPOB ou SPOF • Cluster de nós armazenam parte dos dados primários localmente • Backup dos dados primários é distribuído entre os demais nós • Visão lógica de todos os dados a partir de qualquer nó do cluster • Todos os nós verificam a saúde dos outros nós ? • No caso de falha em um dos nós, os demais nós diagnosticam a falha e tomam ações X • O nó defeituoso é então isolado do cluster • Os dados primários e os de backup do nó defeituoso é transferido para os demais nós 9 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 10.
    Vamos à Prática! 10 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 11.
    Caso de Usodo Coherence: Modelo de Domínio “Qual é a Linguagem de Programação mais popular do Mundo?” Evaluation << uses >> Language ~1.5 KB 11 Copyright © 2011, Oracle and/or its affiliates. All rights reserved.
  • 12.
    12 Oracle Corporation Encontro SouJava de 2013 na Oracle SP
  • 13.
    13 Oracle Corporation Encontro SouJava de 2013 na Oracle SP