How does ElasticSearch and Lucene share the memory -
i have 1 question following quota es official doc:
but if give available memory elasticsearch’s heap, there won’t left on lucene. can impact performance of full-text search.
if server has 80g memory, issued following command start es node: bin/elasticsearch -xmx 30g
means give process of es 30g memory maximum. how can lucene use left 50g, since lucene running in es process, it's part of process.
the xmx
parameter indicates how heap allocate es java process. allocating ram heap not way use available memory on server.
lucene indeed run inside es process, lucene doesn't make use of allocated heap, uses memory heavily leveraging file system cache managing index segment files.
there these 2 great blog posts (this one , this other one) lucene's main committer explain in greater details how lucene leverages available remaining memory.
the bottom line allocate 30gb heap es process (using -xmx30g
) , lucene happily consume whatever left needs done.
Comments
Post a Comment