Thread pool configuration

Hi ,
I am new in elastic search . here i want to know that how one should configure thread pool.

My current configuration is following

thread_pool:

search:

size: 64

queue_size: 500

min_queue_size: 10
max_queue_size: 1000
auto_queue_frame_size: 2000
target_response_time: 1s
http.enabled: true
I am getting rejection on it .
so what would be the best way configure it .

Regrads ,
Abhishek

The defaults are recommended for almost all cases. If you are getting rejections then your system is likely not powerful enough for your workload.

Thanks David,
Then what should i do .
Should i add more nodes ? or scaling up would work? .
int((# of available_processors * 3) / 2) + 1 calculation for size would work for all kind of machines (Vm/ physical) ?.

@DavidTurner should i scaleout the cluster or scaling up will work ?

Hi All ,

Please help me here

Hi Abhishek, can u describe more detail here about when do u getting rejection on what operations to elasticsearch?

Thanks for replying .

cluster configuration
Master -3 node (4 cpu, 20 gb ram)
coordinating -3 node (16 cpu, 98 GB,)
data- 5 node (28 cpu, 48 RAM)

And thread pool configuration is following
thread_pool:

search:

size: 64

queue_size: 500

min_queue_size: 10
max_queue_size: 1000
auto_queue_frame_size: 2000
target_response_time: 1s
http.enabled: true

Here we are getting rejection on search type of queries .

How should i scale the cluster or can i optimize thread pool configuration .

Regards,
Abhishek

Are these queries heavy?
(u can know that from the response information)

{
  "took" : 252,
  "timed_out" : false,
  "_shards" : {
    "total" : 1383,           <------ here
    "successful" : 1383,
    "skipped" : 1368,
    "failed" : 0
  },
  "hits" : {
    "total" : {
      "value" : 2423,     <------ here
      "relation" : "eq"
    },
    "max_score" : null,
    "hits" : [ ]
  },
  ....
}

And can u give some example here?

And what kind of data are storing in ur cluster? what is the size of ur data, tb or pb?

We are indexing job data in ES to perform search . queries are mix both light weight and heavy. Index size on cluster is 1.5 TB (Total) .
we are indexing the data in multiple index. search is being performed on 100 gb index. rest indexes are less in use. Traffic on site is 20k/min .

emmm, from information u give, i guess, thread pool settings is not the main reason...

May be the heavy queries and not well scaled data make this happen.

To the heavy queries more thing i want to know about are:
1、Is this 100GB index static? Or still size increasing with new data writing on it?
2、Is there a date type field in ur index, and all queries from user using this date type field to filter out the data?
3、Will the queries search with "routing", "timeout" setting in request header?
4、Will the queries search with "size", "from" setting in searching body?

To the not well scaled data more thing i want to know about are:
1、how many shards are there in this 100GB index?
2、Are data scaled well in every shard(doc counts and data size differ from each shard should not higher than 10%), and Are shards scaled well in every es data nodes(no more than 1 primary and 1 replica every node)?

ES's search perform is highly rely on
1、disk performance
2、off heap size
3、suitable query body
4、probably data scaling design

And please check these for ur use case and wish it will help u.

1、Is this 100GB index static? Or still size increasing with new data writing on it?
[Abhishek]: it is dynamic . it is increasing but rate is slow .
2、Is there a date type field in ur index, and all queries from user using this date type field to filter out the data?
[Abhishek]: date field is present but we are not filtering on it.
3、Will the queries search with "routing", "timeout" setting in request header?
[Abhishek]: default. we are not using mine own routing .
4、Will the queries search with "size", "from" setting in searching body?
[Abhishek]: yes

To the not well scaled data more thing i want to know about are:
1、how many shards are there in this 100GB index?
[Abhishek] : 4
2、Are data scaled well in every shard(doc counts and data size differ from each shard should not higher than 10%), and Are shards scaled well in every es data nodes(no more than 1 primary and 1 replica every node)?
[Abhishek] . yes it is within limit .

@DeeeFOX please suggest

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.