Hi,

We want to understand how segments are created during bulk indexing.
Say we've set the following param:

"index.translog.flush_threshold_ops" : "50000",
"index.translog.flush_threshold_size": "300mb",

So it means that ES will not flush until it gets 50000 operations (index in 
this case). As a result, there's always 50000 documents get 
flushed/committed to Lucene
at a single time. So it's intuitive for us that Lucene will not create 
segments that has under 50000 documents.
But in our benchmark with this settings, we found out that there's lots of 
segments with, say, ~3000 documents, and the segment's size is far less 
than 300mb (the flush threshold).

My questions are:
- How do these small segments get generated given that we flush 50000 
documents at a time?
- Does avoid generating small segments helps indexing speed and merge speed?

We are using ElasticSearch v1.0.1 and we also set these when benchmarking:

{
"index":{
"merge.policy.max_merge_at_once":"999",
"merge.policy.segments_per_tier":"999",
"refresh_interval":"-1",
        }
}

Thanks.

-- 
You received this message because you are subscribed to the Google Groups 
"elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/elasticsearch/21ec20de-0a6d-4196-abf3-d12287544b7f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to