multithreading - How to config elasticsearch cluster on one server to get the best performace on search -


I'm new to the elasticsearch of about 300,000 items is an elastic search index of any other table with 60 million records For each, I need to do a complex query to this ES index.

Right now, it is very slow (1000 questions will take 200 seconds).

My server:

  8 core 8 GB RAM SSD hardware   

I handle 100 concurrent search requests from Ruby I want to configure elasticsearch. (I want to search 1000 items in parallel)

I'm trying with default config

I think by default, Elastastens only requires 10 -20 concurrent search requests this small CPU and Therefore, I think I can improve it.

I can run 100 threads from Ruby to find only 1000 items and it takes 200 seconds. If I increase 1000 threads from Ruby, ES returns the timeout error message.

I

  ES_HEAP_SIZE = 2G index.filedata.cache.size: 1g Threadpool: Search: Type: A master node with fixed size Run: 200 QA_Size: 400 Share: 5 Replicas: 1   

To carry 100 threads from Ruby still takes 1000 items to 200s.

I have 3 new nodes on this server as data nodes.

To run 100 threads from Ruby, 1000 items are still 200 or more.

People say that making more syndrome will slow the search.

How do I improve my search query?

Many thanks!

You want to watch this video:

The default for ES is great for development but not one thing that you really need to do is give JVM 50% of available memory on the server. There are very good suggestions in that video.

Comments

Popular posts from this blog

Java - Error: no suitable method found for add(int, java.lang.String) -

java - JPA TypedQuery: Parameter value element did not match expected type -

c++ - static template member variable has internal linkage but is not defined -