who is that guy
play

Who is that guy? Sanne Grinovero From this planet T eam - PowerPoint PPT Presentation

4 June 2012 Sanne Grinovero, Red Hat What you get by replicating Lucene indexes on the Infinispan Data Grid Who is that guy? Sanne Grinovero From this planet T eam Hibernate Hibernate Search Hibernate OGM T eam


  1. 4 June 2012 Sanne Grinovero, Red Hat What you get by replicating Lucene indexes on the Infinispan Data Grid

  2. Who is that guy? • Sanne Grinovero • From this planet • T eam Hibernate • Hibernate Search • Hibernate OGM • T eam Infinispan • Infinispan Core • Infinispan Query • Apache Lucene, Netty, HotSpot, ANTLR, JGroups, Byteman, The Jokre

  3. What are we talking about? • Apache Lucene • Infinispan • Integrations with Lucene ● Infinispan Lucene Directory

  4. Apache Lucene ?

  5. • An in-memory datagrid • Memory of multiple nodes • Cluster modes • CacheLoaders • Integrations with Lucene • Lucene Directory

  6. Infinispan API? • Map-like key/value store • JSR 107 javax.cache.Cache interface • JSR 347 ?? • Asynchronous API

  7. In practice: cache.put( “user-34”, userInstance ); cache.get( “user-34” ); cache.remove( “user-34” ); cache.putIfAbsent( “user-38”, other );

  8. Distributed Data

  9. Connected via JGroups A Toolkit for Reliable Multicast Communication http://jgroups.org

  10. Or remote clients via: • Memcached • REST • Hot Rod (Ruby, Python, C, C#, ... ) • Netty

  11. Consistent Hashing: DIST

  12. Transactions!

  13. JBoss AS7 core component • Cluster nodes autodiscovery • Session replication / failover • Hibernate second level cache • mod_cluster integration

  14. In-memory volatile? Cache Stores: durability, warm caches, more capacity... • Cassandra • HBase • JDBC • Clouds (S3, ...) • Plain Old Files • Many more + custom

  15. Back on Lucene: Single Writer lock

  16. Queue-based clustering (filesystem index)

  17. Lucene index storage

  18. Index stored in Infinispan

  19. Example architecture : JIRA / Scarlet

  20. Hints • Some tuning options might have different effects than what you're used • Network is orders of magnitude faster than disk (YMMV) • But data locality helps • Balance resources • Get mergers to avoid segment chunking, or readlocks will engage

  21. “benchmarks”, stats and more lies Queries/sec Write ops/sec RAMDirectory RAMDirectory Infinispan 0 Infinispan 0 Infinispan D4 Infinispan D4 queries per second Infinispan D40 Infinispan D40 FSDirectory FSDirectory Infinispan Local Infinispan Local 0 50 100 150 200 250 300 350 400 0 5000 10000 15000 20000 25000

  22. It's not about the figures Queries/sec Write ops/sec RAMDirectory RAMDirectory Infinispan 0 Infinispan 0 Infinispan D4 Infinispan D4 queries per second Infinispan D40 Infinispan D40 FSDirectory FSDirectory Infinispan Local Infinispan Local 0 50 100 150 200 250 300 350 400 0 5000 10000 15000 20000 25000

  23. What's next? • Infinispan (core) 5.2 and 6 • Lucene 4.x • Dynamic chunk sizes • Ad-hoc “Lucene native” CacheStore • NIO byte buffers?

  24. Conclusions • Quick index replication • Transactions • Not a replacements for shards • Cloud-friendly • Delegates to any storage

  25. Q&A http://infinispan.org @Infinispan http://in.relation.to @Hibernate http://jboss.org @SanneGrinovero

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend