Uploaded image for project: 'Infinispan'
  1. Infinispan
  2. ISPN-3661

Allow getting entry for key and suggesting it is placed into L1 cache

    XMLWordPrintable

Details

    • Enhancement
    • Resolution: Unresolved
    • Major
    • None
    • None
    • L1
    • None

    Description

      When running a distributed cache, some entries are far more popular and keeping them in L1 cache on all/most nodes would enable far better locality. This can be done with a custom hashing algorithm, except when the keys do not have enough information for the algorithm to know which entries should be placed into L1. Therefore, Infinispan should offer a way for clients to get an entry by key and simultaneously request that the resulting entry be placed into the local L1 cache. For example, perhaps get(K key, boolean cache) or even Cache.getL1cache().get(K key).

      Here's a concrete example. ModeShape stores a tree structure in Infinispan, with keys that are basically UUIDs + other information. A common access pattern is to navigate from the root node, so it would be very useful to have the top nodes locally cached in L1 on each of the processes in the cluster (as they are accessed). ModeShape knows during access where in the tree the node is, and thus can decide the node is high enough in the tree that the node's entry be cached into L1.

      Attachments

        Activity

          People

            wburns@redhat.com Will Burns
            rhauch Randall Hauch (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated: