You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/reference/search/profile.asciidoc
+24-24Lines changed: 24 additions & 24 deletions
Original file line number
Diff line number
Diff line change
@@ -204,16 +204,16 @@ by a unique ID
204
204
205
205
Because a search request may be executed against one or more shards in an index, and a search may cover
206
206
one or more indices, the top level element in the profile response is an array of `shard` objects.
207
-
Each shard object lists it's `id` which uniquely identifies the shard. The ID's format is
207
+
Each shard object lists its `id` which uniquely identifies the shard. The ID's format is
208
208
`[nodeID][indexName][shardID]`.
209
209
210
210
The profile itself may consist of one or more "searches", where a search is a query executed against the underlying
211
-
Lucene index. Most Search Requests submitted by the user will only execute a single `search` against the Lucene index.
211
+
Lucene index. Most search requests submitted by the user will only execute a single `search` against the Lucene index.
212
212
But occasionally multiple searches will be executed, such as including a global aggregation (which needs to execute
213
213
a secondary "match_all" query for the global context).
214
214
215
215
Inside each `search` object there will be two arrays of profiled information:
216
-
a `query` array and a `collector` array. Alongside the `search` object is an `aggregations` object that contains the profile information for the aggregations. In the future, more sections may be added, such as `suggest`, `highlight`, etc
216
+
a `query` array and a `collector` array. Alongside the `search` object is an `aggregations` object that contains the profile information for the aggregations. In the future, more sections may be added, such as `suggest`, `highlight`, etc.
217
217
218
218
There will also be a `rewrite` metric showing the total time spent rewriting the query (in nanoseconds).
219
219
@@ -344,12 +344,12 @@ The meaning of the stats are as follows:
344
344
`build_scorer`::
345
345
346
346
This parameter shows how long it takes to build a Scorer for the query. A Scorer is the mechanism that
347
-
iterates over matching documents generates a score per-document (e.g. how well does "foo" match the document?).
347
+
iterates over matching documents and generates a score per-document (e.g. how well does "foo" match the document?).
348
348
Note, this records the time required to generate the Scorer object, not actually score the documents. Some
349
349
queries have faster or slower initialization of the Scorer, depending on optimizations, complexity, etc.
350
350
{empty} +
351
351
{empty} +
352
-
This may also showing timing associated with caching, if enabled and/or applicable for the query
352
+
This may also show timing associated with caching, if enabled and/or applicable for the query
353
353
354
354
`next_doc`::
355
355
@@ -369,7 +369,7 @@ The meaning of the stats are as follows:
369
369
370
370
`matches`::
371
371
372
-
Some queries, such as phrase queries, match documents using a "Two Phase" process. First, the document is
372
+
Some queries, such as phrase queries, match documents using a "two-phase" process. First, the document is
373
373
"approximately" matched, and if it matches approximately, it is checked a second time with a more rigorous
374
374
(and expensive) process. The second phase verification is what the `matches` statistic measures.
375
375
{empty} +
@@ -384,7 +384,7 @@ The meaning of the stats are as follows:
384
384
385
385
`score`::
386
386
387
-
This records the time taken to score a particular document via it's Scorer
387
+
This records the time taken to score a particular document via its Scorer
388
388
389
389
`*_count`::
390
390
Records the number of invocations of the particular method. For example, `"next_doc_count": 2,`
@@ -394,7 +394,7 @@ The meaning of the stats are as follows:
394
394
==== `collectors` Section
395
395
396
396
The Collectors portion of the response shows high-level execution details. Lucene works by defining a "Collector"
397
-
which is responsible for coordinating the traversal, scoring and collection of matching documents. Collectors
397
+
which is responsible for coordinating the traversal, scoring, and collection of matching documents. Collectors
398
398
are also how a single query can record aggregation results, execute unscoped "global" queries, execute post-query
399
399
filters, etc.
400
400
@@ -422,16 +422,16 @@ Looking at the previous example:
We see a single collector named `SimpleTopScoreDocCollector` wrapped into `CancellableCollector`. `SimpleTopScoreDocCollector` is the default "scoring and sorting"
425
-
`Collector` used by Elasticsearch. The `reason` field attempts to give a plain english description of the class name. The
425
+
`Collector` used by Elasticsearch. The `reason` field attempts to give a plain English description of the class name. The
426
426
`time_in_nanos` is similar to the time in the Query tree: a wall-clock time inclusive of all children. Similarly, `children` lists
427
427
all sub-collectors. The `CancellableCollector` that wraps `SimpleTopScoreDocCollector` is used by Elasticsearch to detect if the current
428
428
search was cancelled and stop collecting documents as soon as it occurs.
429
429
430
-
It should be noted that Collector times are **independent** from the Query times. They are calculated, combined
430
+
It should be noted that Collector times are **independent** from the Query times. They are calculated, combined,
431
431
and normalized independently! Due to the nature of Lucene's execution, it is impossible to "merge" the times
432
432
from the Collectors into the Query section, so they are displayed in separate portions.
433
433
434
-
For reference, the various collector reason's are:
434
+
For reference, the various collector reasons are:
435
435
436
436
[horizontal]
437
437
`search_sorted`::
@@ -457,7 +457,7 @@ For reference, the various collector reason's are:
457
457
`search_multi`::
458
458
459
459
A collector that wraps several other collectors. This is seen when combinations of search, aggregations,
460
-
global aggs and post_filters are combined in a single search.
460
+
global aggs, and post_filters are combined in a single search.
461
461
462
462
`search_timeout`::
463
463
@@ -473,7 +473,7 @@ For reference, the various collector reason's are:
473
473
`global_aggregation`::
474
474
475
475
A collector that executes an aggregation against the global query scope, rather than the specified query.
476
-
Because the global scope is necessarily different from the executed query, it must execute it's own
476
+
Because the global scope is necessarily different from the executed query, it must execute its own
477
477
match_all query (which you will see added to the Query section) to collect your entire dataset
0 commit comments