One phenomenon I can't explain


(t7s) #1

After inserting data into es mmap index, I guess the first batch query without any warming query is completed on jvm memory cache? These query are very fast, and if you restart es cluster, jvm memory fall down and query is slow.

The distinction between mmap index type and memory index type is one on virtual memory and another on jvm memory? so I guess the phenomenon as mentioned above is the index data is not fully used virtual memory?


(Mark Walkom) #2

mmap uses virtual memory, memory type stores stuff entirely in RAM, like a RAM disk.


(t7s) #3

mmap uses virtual memory, memory type stores stuff entirely in RAM, like a RAM disk.

RAM,is it in jvm memory?


(Mark Walkom) #4

No, actual system memory, not heap.


(t7s) #5

native memory from jvm?


(Mark Walkom) #6

No. System memory.


(t7s) #7

I don't quite understand.

When using memory storage type index, I use top command to check es process memory condition, the res item is system memory es process used? or How I check the es process memory condition?


(Mark Walkom) #8

When you use the memory store it is like creating a RAM disk on the system that is just for ES to store data in. This means if you restart your node you lose the data in any indices stored.

When you use mmapfs it leverages virtual memory to speed up access, but still stores the data on disk.


(t7s) #9

So how or where I check how much memory the ram disk used?


(system) #10