Infinispan @ Red Hat Forum 2013


Published on

Published in: Technology
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Infinispan @ Red Hat Forum 2013

  1. 1. Distributed Cache & Data Grid Platform PRESENTED BY: Jaehong Cheon| | DATE: 12/11/2013 Red Hat Confidential
  2. 2. About Speaker 전재홍 - 한화 S&C, 모바일 플랫폼 개발 - JBoss User Group Korea 커뮤니티 - JBUG Korea 인피니스팬 스터디 그룹 - “JBoss 인피니스팬 따라잡기” 번역
  3. 3. Agenda Data Grid Infinispan Infinispan Key Features Use Cases References
  4. 4. Data Grid Red Hat Confidential
  5. 5. Distributed Cache Fast access to data Performance boost Elasticity High Availability JSR 107 (Temporary Caching for the Java Platform) – read, write, expiration, write-through, distribution – JBoss Cache
  6. 6. Distributed Cache Cache App Cache App Distributed Cache Cluster App Cache Persistence (Database)
  7. 7. Data Grid Evolution of distributed caches Well-known pattern to boost data access performance and scalability Clustered by nature JSR 347 (Data Grids for the Java Platform) – Querying, map-reducing standard way, consistency – Infinispan
  8. 8. Infinispan Red Hat Confidential
  9. 9. Infinispan Distributed in-memory key/value data grid and cache Distributed as library and server Highly available Elastic Manageable Open Source
  10. 10. Architecture: Standalone Lib Library Mode - standalone Infinispan App JVM JCP 107 Style Cache – Just cache with advantages: expiry, j2ee transaction
  11. 11. Architecture: Clustered Lib Use as library Library Mode Infinispan – More feature App – Richer APIs JVM – Programmatic/decla rative configuration Infinispan App Cluster – Extendable/embedd able JVM Infinispan JVM App – Faster (API call) – App doesn’t know it’s on cluster
  12. 12. Architecture: Server Use as server Server Mode Infinispan JVM • Memcached, RE ST, Hot Rod, WebSocket App App Infinispan – Data tier shared by multiple apps Cluster JVM Infinispan App – Remote JVM – App doesn’t affect cluster – Non-java clients • Java, C++,.NET, Ruby, Python
  13. 13. Architecture: Durability Durability Durability Infinispan JVM Cluster Infinispan JVM Infinispan JVM Infinispan JVM Cluster persistence – By replication – By persistence – By replication to other cluster (topology aware)
  14. 14. Clustering Peer to Peer – No central master, no single point of failure, no single bottle neck JGroups – Reliable multicast communication library, nodes discovery, sharing data, performing cluster scaling Consistent Hash – Hash based data distribution – How it finds where data locates Linear in nature: throughput, capacity
  15. 15. Cluster Mode: Replication Replication Mode cache.put(K,V) Cache on K,V Server 2 Cache on K,V Server 1 Cache on K,V Server 3 Cache on K,V Server 4
  16. 16. Cluster Mode: Distribution Distribution Mode(numOwners=2) cache.put(K,V) Cache on K,V Server 1 cache.get(K,V) Cache on K,V Server 2 Cache on Server 3 Cache on Server 4
  17. 17. Cluster Mode: Invalidation Invalidation Mode cache.put(K,V2) Cache on Server 1 K,V2 Cache on K,V Server 2 Cache on Server 3 Cache on Server 4 DB
  18. 18. Monitoring/Management MBeans on CacheManager, Cache RHQ (JON, JBoss Operations Network)
  19. 19. Infinispan Key Features Red Hat Confidential
  20. 20. Key Features: Persistence Used for durability Cache Store – persistence storage – File System, Cloud, Remote, JDBC, JPA, LevelDB, Cassa ndra, HBase, MongoDB, BerkeleyDB, JDBM, REST Write-through, write-behind Store chain Shared store
  21. 21. Key Features: Transactions JTA Transaction Support Support MVCC (Multi-Versioned Concurrency Control) Isolation Level – READ_COMMITTED (default) – REPEATABLE_READ Locking Mode – Optimistic Lock (default) – Pessimistic Lock
  22. 22. Key Features: Query JBoss Hibernate Search + Apache Lucene Query on values Index Directory – Lucene Directory: in-memory, file system, JDBC – Infinispan Directory Distributed Queries
  23. 23. Key Features: Map/Reduce Based on Distributed Execution Framework Mapper, Reducer, Collator, MapReduceTask
  24. 24. JDG, JBoss Data Grid Red Hat JBoss Data Grid Infinispan-based JON All the benefits of subscription, including Red Hat world class support and services
  25. 25. Use Cases Red Hat Confidential
  26. 26. Infinispan on JBoss AS7 Used for WAS clustering, Hibernate L2 cache Application gets cache with JNDI name using @Resource
  27. 27. Session Clustering
  28. 28. Big Data Real-time Processing Infinispan Data Grid
  29. 29. References Red Hat Confidential
  30. 30. References       /dev/Infinispan+Data+Grid 