TimesTen In-Memory Database

1,308 views

Published on

Published in: Technology
0 Comments
3 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,308
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
43
Comments
0
Likes
3
Embeds 0
No embeds

No notes for slide

TimesTen In-Memory Database

  1. 1. André Danelon Rodrigo Figueiredo
  2. 2. Tempo de Resposta
  3. 3. Tempo de Resposta Mundo em Tempo Real
  4. 4. Tempo de Resposta Por quê o Tempo de Resposta é importante? - Não cumprimento de SLA ○ Devido ao longo tempo de resposta - Rotatividade de clientes ○ Produtos competitivos oferecem um melhor tempo de resposta - Baixa produtividade do usuário e insatisfação do cliente ○ Clientes insatisfeitos - Perda de receita e baixa rentabilidade ○ Efeito da perda de negócios e oportunidades
  5. 5. Tempo de Resposta Melhorando o Tempo de Resposta - Defina os requisitos de negócio - Avalie soluções
  6. 6. TimesTen Overview
  7. 7. TimesTen Overview O que é? - O TimesTen é um banco de dados em memória, com características de um banco de dados relacional convencional. - Fornece tempo de resposta muito baixo e throughput muito alto a sistemas com desempenho crítico. - Pode ser usado como um banco de dados de registro e/ou como um armazenamento em cache de um banco de dados Oracle.
  8. 8. TimesTen Overview Por quê o TimesTen é rápido? ● Otimização In-Memory: - Banco de dados na memória compartilhada - Métodos otimizados de acesso a memória ● Direct-link para melhor performance: - Memória compartilhada mapeada no processo da aplicação
  9. 9. TimesTen Overview Ferramentas de Desenvolvimento
  10. 10. Performance
  11. 11. Performance - Transação de leitura em menos de 5 microssegundos - Transação de atualização ou inserção em menos de 15 microssegundos
  12. 12. Performance
  13. 13. Performance
  14. 14. Armazenamento
  15. 15. Armazenamento - Cache Group é uma coleção de tabelas do banco de dados Oracle usadas com frequência, que estão relacionadas através de restrições de chaves externas - Todo ou subconjunto de linhas e colunas - Definido por cláusulas SQL: CREATE CACHE GROUPE name FROM owner.tab1 (col1, col2) owner.tab2 (col1, col4) WHERE <predicate> - Tabelas cache são tabelas regulares de um banco de dados: Joins, insert/update/delete
  16. 16. Armazenamento - Usuários podem definir os Grupos de cache através de programação ou através de um utilitário interativo ttIsql. - Mesmos tipos de dados básicos que o banco de dados Oracle de forma que não é necessário mapear os tipos de dados do banco de dados Oracle para os tipos de dados do TimesTen. - Índices nas tabelas do cache in-memory, que podem corresponder aos índices no banco de dados Oracle ou podem ser diferentes. - Flexibilidade para criar múltiplos índices na mesma tabela e definição dos índices em várias colunas.
  17. 17. Armazenamento Cache Group somente Leitura Dados são atualizados no banco de dados Oracle e o TimesTen gerencia a propagação das atualizações do banco de dados Oracle para o armazenamento em cache.
  18. 18. Armazenamento Cache Group AWT (Asynchronous Writethrough) Podem ser atualizados no cache, mas não no banco de dados Oracle. O TimesTen propaga as atualizações do cache do banco de dados Oracle de forma assíncrona após a confirmação de uma transação.
  19. 19. Armazenamento Cache Group SWT (Synchronous Writethrough) Podem ser atualizados no cache, mas não no banco de dados Oracle. As atualizações nas tabelas do cache in- memory são propagadas para o banco de dados Oracle de forma síncrona com a confirmação de uma atualização.
  20. 20. Disponibilidade
  21. 21. Disponibilidade Quando o Oracle TimesTen é usado exclusivamente como o banco de dados de registro em vez de um cache de banco de dados in-memory do banco de dados Oracle, ele garante a alta disponibilidade de seus dados através da replicação, diversas operações on-line e inúmeros utilitários que suportam falhas, recuperação e atualizações on-line.
  22. 22. Disponibilidade ● Alta Performance: - Síncrono / Assíncrono - Replicação memory-to-memory - Propagação paralela de mudanças para o Standby e Subscribers ● DRP suporte.
  23. 23. Disponibilidade Replicação
  24. 24. Dell TimesTen Use Case Juan Garza Dell Business Analyst
  25. 25. Real Life Stories on Extreme Performance with In-Memory Database Technology Presented at Oracle Open World
  26. 26. Environment from a Data Perspective 2 Confidential 1/3/2012 Global Operations & Technology - I/T
  27. 27. Data Environment • Capture and consolidate • Near real-time replication • Large data volume • High rate of change Order Pending Production Build Shipped Delivered Supply Chain Management System Supply Chain Data Hub 3 Confidential 1/3/2012 Global Operations & Technology - I/T
  28. 28. Environment from an Application Perspective 4 Confidential 1/3/2012 Global Operations & Technology - I/T
  29. 29. Application Environment • One-Stop-Shop for Order Status, Health and Issue Resolution • Current order information • Response times within Customer Distress Orderseconds Sales Care Management Basic Queries Advance Queries Global Order Visibility - User Interface Order Pending Production Supply Chain Management System Supply Chain Data HubBuild Shipped Delivered 5 Confidential 1/3/2012 Global Operations & Technology - I/T
  30. 30. TimesTen Solution Architecture 6 Confidential 1/3/2012 Global Operations & Technology - I/T
  31. 31. TimesTen Architecture Sales Customer Care Distress Order Mgmt Basic Queries Advance Queries Order Visibility User Interface PL/SQL Replicator Order Pending PL/SQL Production Build Supply Chain Data Hub Shipped Delivered Oracle TimesTen In-Memory Database Supply Chain Management System 7 Confidential 1/3/2012 Global Operations & Technology - I/T
  32. 32. TimesTen Architecture Detail MS Sharepoint User Interface Basic Queries PL/SQL Replication Source Extract Load Database .net ttBulkCp Oracle 11g Advance Queries Failover PL/SQL Merge TimesTen ttIsql In-Memory Database Dell Power Edge M610 Oracle Enterprise Linux 96GB Ram 2 Intel(R) Xeon(R) CPU L5520 @ 2.27GHz 4 core Global Operations & Technology - I/T
  33. 33. Performance Statistics 9 Confidential 1/3/2012 Global Operations & Technology - I/T
  34. 34. Improved Query Performance 10 min 8 min Minutes 0 min 7.5 min 7 min 4.6 min Query #1 Query #2 Query #3 Query #4 Physical DB 10 sec 5.05 sec TimesTen Seconds 1.4 sec 1 sec 1.15 sec .8 sec .01 sec 10 Confidential 1/3/2012 Global Operations & Technology - I/T
  35. 35. Lessons Learned • Adding more data doesn’t affect performance • Use sql query to monitor memory usage • select temp_allocated_size, temp_in_use_size, temp_in_use_high_water from monitor; • Check high water marks: temp_in_use_high_water Scaling 8 7 6 5 4 3 2 1 0 1.8 2.37 2.97 3.24 Millions of rows Qry 1 Qry 2 Qry 3 Trend 3.46 4.46 11 Confidential 1/3/2012 Global Operations & Technology - I/T
  36. 36. Summary Why TimesTen? ✓ Transparency ▪ Users get increased performance without change in user interface ✓ PL/SQL ▪ Maintain an identical API between our physical and in-memory database ▪ Developers do not have to learn a new language ✓ Response Time ▪ Significant increase in performance 12 Confidential 1/3/2012 Global Operations & Technology - I/T
  37. 37. Obrigado.
  38. 38. Referências - Oracle TimesTen In-Memory Database Overview http://www.oracle.com/technetwork/products/timesten/overview/timesten-imdb- 086887.html?ssSourceSiteId=otnpt - Cómo construimos Oracle TimesTen: http://www.slideshare.net/RevistaSG/cmo-construimos-oracle-timesten - Oracle TimesTen In-Memory Database Features Overview: http://www.docstoc.com/docs/7641049/Oracle-TimesTen-In-Memory-Database- Features-Overview-%EB%8C%80%ED%95%99-%EC%88%98%EA%B0%95 - Usando o Oracle In-Memory Database Cache para acelerar o banco de dados Oracle: http://www.oracle. com/technetwork/pt/database/timesten/documentation/tutorial-in-memory- database-cache-1721639-ptb.pdf - Oracle® In-Memory Database Cache User's Guide 11g Release 2 (11.2.2): http://docs.oracle.com/cd/E11882_01/timesten.112/e21634/toc.htm

×