Upload
jbug-london
View
697
Download
1
Tags:
Embed Size (px)
DESCRIPTION
Presentation delivered by Mircea Markus (JBoss) at the London JBoss User Group Event on Wednesday, the 4th of December 2013. In this talk, Mircea Markus (Infinispan Lead) covers the major features added in the 6.0 release to the Infinispan ecosystem: - querying in client/server mode - better integration with the persistent storage - multi-master cross-site replication - support for heterogeneous clusters Participants will take home a better understanding of Infinispan capabilities and the use cases in which it can be put at work. Ideally the attendees should have a basic knowledge of the in-memory data grids.
Citation preview
What’s new in Infinispan 6.0
•Mircea Markus, •Principal Software Engineer, Red Hat
Who’s Mircea?
•Lead Infinispan/JBoss Data Grid •JSR-350 •@infinispan/@mirceamarkus •infinispan.blogspot.com
Agenda•Infinispan •New in 6.0
•Cpp Hot Rod client •Querying client/server mode •Persistence integration •Cross site replication enhancements •Heterogenous clusters •Licensing
•Roadmap
What is Infinispan?•Distributed storage engine
•memory •disk
•Highly available •Elastic •Open source
TCP/UDP
Transport (JGroups)
Node (JVM process)
Memcached HotRod REST
Storage Engine (RAM
+Overflow)
Monitoring
Map/ReduceQuery
Transaction/xaNotification
Embeded Application (Java)
Remote Application (Cpp)
Transport (JGroups)
Node (JVM process)
Memcached HotRod REST
Storage Engine (RAM
+Overflow)
Monitoring
Map/ReduceQuery
Transaction/xaNotification
Embeded Application (Java)
Remote Application (Java)
Remote Application (.Net)
Network (TCP)
Cpp Hot Rod client
•Hot Rod •Binary protocol •3 levels of intelligence •Clients in Java(L3), Python(L1), Ruby (L1)
•Cpp client •L3 •RHEL5, RHEL6, Windows 7 •OSS/Apache licence
Querying - existing•Embedded mode only •Based on Hibernate Search/Lucene •Objects in the grid are indexed
•index management
Remote Querying•Language neutral
•client/server access : Hot Rot •type representation : protobuf & protostream •DSL for querying
•Schema management •protofiles •JMX
Define schema - protobuf
Serialize to protobuf•Protobuf tooling
•schema to cpp/java. Not the other way around •constraining on the format of your domain
•Protostream •protobuf serializer developed by Red Hat •OSS/Apache licensed •flexible •strongly typed
Implement marshallers - based on schema
Implement marshallers
Execute the query
Langauge neutral access
•“Side effect” •HotRod
•interoperabilut
Further query improvements•Query on non-indexed fields •HotRod Cpp client
•query DSL •protostream
•protobuf default serialization (?) •better schema management
New Persistence SPI•Simpler
•no locking •no transaction
•Faster •parallel iteration/expiry •reduced serialization overhead
•Aligned with JSR-107 •easier migration
New Local (File) Store•Very popular
•easy setup/no dependencies •New file store
•fast! •keeps all keys in memory •courtesy @Karsten Blees
X-Site replication
•Since Infinispan 5.2.0 •Hot-standby for geographic failover •Follow the sun
Cross Site Replication
Multiple site masters
•Single site master (5.2.x) •does not scale •mitigated by capacity-factor (6.0.0)
•Multiple site masters •site masters form a jgroups cluster •configurable number
Heterogenous clusters
•Heterogenous clusters •not all machine are equally powerful • some are more busy
•Load-factor •e.g. 0.5 -> half of the average load •0 is acceptable
•alternative to client/server
New Licensing
•LGPL -> Apache License •Apache License
•open source •considered more business friendly •better integration with other Apache licensed projects
Roadmap
•Eventing over Hot Rod •Clustered listeners •Security •Query over Cpp Hot Rod •Better partition handling •C# Hot Rod client
Thank you!•infinispan.blogspot.com •@infinispan •mirceamarkus.blogspot.com •@mirceamarkus