Mixed Index Nodes

We recently upgraded to CB 5.0, and we’re excited to start using some of the new indexing (updated secondary indexing engine and in-memory indexes)

We’re tracking the following documentation pretty closely:
https://blog.couchbase.com/create-right-index-get-right-performance
https://blog.couchbase.com/plasma-index-performance

But it didn’t include answers to a few critical questions:

  1. The 2nd article says that all indexes are “rebuilt” on Plasma, how do we confirm if that is true?
  2. If #1 is true, then why in our “Cluster Config” does it list the “Index Storage Mode” as “Legacy Global Secondary”?
  3. Is it fair to say that “Legacy GSIs” in 4.0 did not cache indexed data in memory, but Plasma -does- store indexed data in memory? If so, that should have a huge performance increase.
  4. When we try to change the Index Storage Mode, we get the error:
    “Changing the optimization mode of global indexes is not supported when index service nodes are present in the cluster. Please remove all index service nodes to change this option.”
    We’re struggling to rectify how #1 can be true, but we’re still getting the error referenced above.
  5. We didn’t see any performance comparisons between full memory-optimized indexes, and Plasma. Are the full memory-optimized indexes still relevant with the release of Plasma?

Thanks,

  • Jeff

@jeffhoward001 are you using on Couchbase CE or EE? (will wait for the reply before I comment on the rest)

Enterprise Edition 5.1

@venkat and ideas on this?

For #1 and #2: In EE, while upgrading to 5.0 from 4.x, ForestDB indexes(Standard Global Secondary Indexes) will be automatically upgraded to Plasma(again called Standard Global Secondary Indexes). “Legacy Global Secondary” means that it is still in ForestDB. Can you create a Support Ticket for us to have a look at?

#3: Plasma is completely a different beast compared to ForestDB. It performs largely better, automatically swaps between disk and memory, etc.

#4: You cannot change the index storage mode without ejecting all index nodes, changing the storage mode and recreating the index. I would recommend that a Support Ticket be created for #1 problem.

#5: Memory Optimized Indexes go into a pause mode(i.e, indexes are not updated) when memory quota is exceeded. Plasma automatically spills over to disk when memory quota is exceeded.

Other useful links :
Indexing Best Practices : https://blog.couchbase.com/indexing-best-practices/
Talk on Overview of GSI along with 5.0 features : https://www.youtube.com/watch?v=OrC2gkm2OFA

Thanks Venkat! Specifically referencing #5

#5: Memory Optimized Indexes go into a pause mode(i.e, indexes are not updated) when memory quota is exceeded. Plasma automatically spills over to disk when memory quota is exceeded.

So it is safe to say that a Plasma index with all index data 100% memory-resident is just as fast as a Memory Optimized index?