4 Replies Latest reply on Jan 14, 2010 10:10 AM by galder.zamarreno

    Infinispan Setup Acting as a Write-Behind IMDG

    amin59

      Dear Members,

       

      I think the philosophy of Infinispan's creation was to be an open-source alternative to commercial In Memory Data Grids with write-behind capability (such as Coherence, GemFire and Gigaspaces) which can be used in XTP environments.

       

      If we wanted simple 2nd level cache without write-behind or just a group communication middle-ware we could have stayed with JBoss-Cache, EhCache, JGroups, etc.

       

      So following my questions here ( http://community.jboss.org/thread/18810?tstart=0 )  and here ( https://jira.jboss.org/jira/browse/ISPN-116 ) I am still unable to setup a correct write-behind IMDG with Infinispan; then thing that took me just a few minutes in my first experience with Coherence. I don't think that my inability to do this originates from lack of experience or unfamiliarity with the concept, since I have already worked with commercial data-grids for years, but lack of documents and maybe unnecessary complexity of implementation in Infinispan.

       

      Now that Infinispan is close to its first GA release, can I ask its team to put just a few minutes and please let the community know what should be the correct settings of all components (for cache loader, eviction, clustering, singletonness, etc) be to mimic a true IMDG; I want to manipulate data in memory and this data be persisted to data-source with a reasonable delay. By async persistence I don't necessarily intend to be is a separate thread but to aggregate and flush hundred of changes in the past 1 minute in just one persistence operation. Similar to EDS mechanism in Gigaspaces and so on.

       

      If such a feature does not already exist in Infinispan, then let me know and I can go ahead with my own implementation using jgroups and so.

       

      Regards

        • 1. Re: Infinispan Setup Acting as a Write-Behind IMDG
          manik

          amin59 wrote:

           

          I think the philosophy of Infinispan's creation was to be an open-source alternative to commercial In Memory Data Grids with write-behind capability (such as Coherence, GemFire and Gigaspaces) which can be used in XTP environments.

          To some degree, yes.  I would state that what you mentioned above covers a subset of Infinispan's goals.

           

          amin59 wrote:

           

          If we wanted simple 2nd level cache without write-behind or just a group communication middle-ware we could have stayed with JBoss-Cache, EhCache, JGroups, etc.

          Not quite.  JBoss Cache (latest and greatest versions) scales well up to small/medium sized clusters.  Infinispan aims to solve the same problems and access patterns with much larger clusters as well.  EHCache (AFAIK) doesn't even scale as well as JBoss Cache, and JGroups is a very low-level networking library that can't realistically be compared with EHCache, JBoss Cache and Infinispan.

           

          amin59 wrote:

           

          So following my questions here ( http://community.jboss.org/thread/18810?tstart=0 )  and here ( https://jira.jboss.org/jira/browse/ISPN-116 ) I am still unable to setup a correct write-behind IMDG with Infinispan; then thing that took me just a few minutes in my first experience with Coherence. I don't think that my inability to do this originates from lack of experience or unfamiliarity with the concept, since I have already worked with commercial data-grids for years, but lack of documents and maybe unnecessary complexity of implementation in Infinispan.

           

          Now that Infinispan is close to its first GA release, can I ask its team to put just a few minutes and please let the community know what should be the correct settings of all components (for cache loader, eviction, clustering, singletonness, etc) be to mimic a true IMDG; I want to manipulate data in memory and this data be persisted to data-source with a reasonable delay. By async persistence I don't necessarily intend to be is a separate thread but to aggregate and flush hundred of changes in the past 1 minute in just one persistence operation. Similar to EDS mechanism in Gigaspaces and so on.

           

          If such a feature does not already exist in Infinispan, then let me know and I can go ahead with my own implementation using jgroups and so.

           

          I will take another look at the posts you mentioned, but write-behind is something we do already support.  And you are right, we are sorely lacking in documentation.  Expect a "Common Recipes" section on the Infinispan wiki soon with sample configs for common access patterns and use cases.  Write-behind will certainly be one of them.

           

          Cheers

          Manik

          • 2. Re: Infinispan Setup Acting as a Write-Behind IMDG
            manik

            As far as I can see, ISPN-116 has been fixed and closed, however a race condition has been reported here - ISPN-325 - which is being investigated.

             

            You may want to follow ISPN-326 for the "Common Recipes" wiki page on this.

             

            Cheers

            Manik

            • 3. Re: Infinispan Setup Acting as a Write-Behind IMDG
              amin59
              Any news regarding ISPN-326 ? Sorry to hesitate but I terribly need it !
              • 4. Re: Infinispan Setup Acting as a Write-Behind IMDG
                galder.zamarreno
                Amin, I've created a wiki called Write-Through And Write-Behind Caching that should clarify our offering. To sum up, I think there's been a disconnect between what you request and what we currently are offering. The wiki should clarify it. Please let us know if there's anything still unclear.