Skip to content

Commit b3b762e

Browse files
committed
dangling-indices-move
1 parent 66e734b commit b3b762e

File tree

9 files changed

+54
-73
lines changed

9 files changed

+54
-73
lines changed

docs/reference/commands/node-tool.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ Unsafe cluster bootstrapping is only possible if there is at least one
309309
surviving master-eligible node. If there are no remaining master-eligible nodes
310310
then the cluster metadata is completely lost. However, the individual data
311311
nodes also contain a copy of the index metadata corresponding with their shards. This sometimes allows a new cluster to import these shards as
312-
<<dangling-indices,dangling indices>>. You can sometimes
312+
<<dangling-indices-api,dangling indicesi>>. You can sometimes
313313
recover some indices after the loss of all main-eligible nodes in a cluster
314314
by creating a new cluster and then using the `elasticsearch-node
315315
detach-cluster` command to move any surviving nodes into this new cluster. Once the new cluster is fully formed,

docs/reference/data-streams/downsampling.asciidoc

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,45 @@ the granularity of `cold` archival data to monthly or less.
7272
.Downsampled metrics series
7373
image::images/data-streams/time-series-downsampled.png[align="center"]
7474

75+
[discrete]
76+
[[downsample-api-process]]
77+
==== The downsampling process
78+
79+
The downsampling operation traverses the source TSDS index and performs the
80+
following steps:
81+
82+
. Creates a new document for each value of the `_tsid` field and each
83+
`@timestamp` value, rounded to the `fixed_interval` defined in the downsample
84+
configuration.
85+
. For each new document, copies all <<time-series-dimension,time
86+
series dimensions>> from the source index to the target index. Dimensions in a
87+
TSDS are constant, so this is done only once per bucket.
88+
. For each <<time-series-metric,time series metric>> field, computes aggregations
89+
for all documents in the bucket. Depending on the metric type of each metric
90+
field a different set of pre-aggregated results is stored:
91+
92+
** `gauge`: The `min`, `max`, `sum`, and `value_count` are stored; `value_count`
93+
is stored as type `aggregate_metric_double`.
94+
** `counter`: The `last_value` is stored.
95+
. For all other fields, the most recent value is copied to the target index.
96+
97+
[discrete]
98+
[[downsample-api-mappings]]
99+
==== Source and target index field mappings
100+
101+
Fields in the target, downsampled index are created based on fields in the
102+
original source index, as follows:
103+
104+
. All fields mapped with the `time-series-dimension` parameter are created in
105+
the target downsample index with the same mapping as in the source index.
106+
. All fields mapped with the `time_series_metric` parameter are created
107+
in the target downsample index with the same mapping as in the source
108+
index. An exception is that for fields mapped as `time_series_metric: gauge`
109+
the field type is changed to `aggregate_metric_double`.
110+
. All other fields that are neither dimensions nor metrics (that is, label
111+
fields), are created in the target downsample index with the same mapping
112+
that they had in the source index.
113+
75114
[discrete]
76115
[[running-downsampling]]
77116
=== Running downsampling on time series data

docs/reference/indices/downsample-data-stream.asciidoc

Lines changed: 3 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ DELETE _index_template/*
7575
////
7676
// end::downsample-example[]
7777

78+
Check the <<downsampling,Downsampling>> documentation for an overview, details about the downsampling process, and examples of running downsampling manually and as part of an ILM policy.
79+
7880
[[downsample-api-request]]
7981
==== {api-request-title}
8082

@@ -115,44 +117,4 @@ to aggregate the original time series index. For example, `60m` produces a
115117
document for each 60 minute (hourly) interval. This follows standard time
116118
formatting syntax as used elsewhere in {es}.
117119
+
118-
NOTE: Smaller, more granular intervals take up proportionally more space.
119-
120-
[[downsample-api-process]]
121-
==== The downsampling process
122-
123-
The downsampling operation traverses the source TSDS index and performs the
124-
following steps:
125-
126-
. Creates a new document for each value of the `_tsid` field and each
127-
`@timestamp` value, rounded to the `fixed_interval` defined in the downsample
128-
configuration.
129-
. For each new document, copies all <<time-series-dimension,time
130-
series dimensions>> from the source index to the target index. Dimensions in a
131-
TSDS are constant, so this is done only once per bucket.
132-
. For each <<time-series-metric,time series metric>> field, computes aggregations
133-
for all documents in the bucket. Depending on the metric type of each metric
134-
field a different set of pre-aggregated results is stored:
135-
136-
** `gauge`: The `min`, `max`, `sum`, and `value_count` are stored; `value_count`
137-
is stored as type `aggregate_metric_double`.
138-
** `counter`: The `last_value` is stored.
139-
. For all other fields, the most recent value is copied to the target index.
140-
141-
[[downsample-api-mappings]]
142-
==== Source and target index field mappings
143-
144-
Fields in the target, downsampled index are created based on fields in the
145-
original source index, as follows:
146-
147-
. All fields mapped with the `time-series-dimension` parameter are created in
148-
the target downsample index with the same mapping as in the source index.
149-
. All fields mapped with the `time_series_metric` parameter are created
150-
in the target downsample index with the same mapping as in the source
151-
index. An exception is that for fields mapped as `time_series_metric: gauge`
152-
the field type is changed to `aggregate_metric_double`.
153-
. All other fields that are neither dimensions nor metrics (that is, label
154-
fields), are created in the target downsample index with the same mapping
155-
that they had in the source index.
156-
157-
Check the <<downsampling,Downsampling>> documentation for an overview and
158-
examples of running downsampling manually and as part of an ILM policy.
120+
NOTE: Smaller, more granular intervals take up proportionally more space.

docs/reference/modules/gateway.asciidoc

Lines changed: 1 addition & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -36,17 +36,4 @@ These settings can be configured in `elasticsearch.yml` as follows:
3636
gateway.expected_data_nodes: 3
3737
gateway.recover_after_time: 600s
3838
gateway.recover_after_data_nodes: 3
39-
--------------------------------------------------
40-
41-
[[dangling-indices]]
42-
==== Dangling indices
43-
44-
When a node joins the cluster, if it finds any shards stored in its local
45-
data directory that do not already exist in the cluster, it will consider
46-
those shards to belong to a "dangling" index. You can list, import or
47-
delete dangling indices using the <<dangling-indices-api,Dangling indices
48-
API>>.
49-
50-
NOTE: The API cannot offer any guarantees as to whether the imported data
51-
truly represents the latest state of the data when the index was still part
52-
of the cluster.
39+
--------------------------------------------------

docs/reference/modules/indices/fielddata.asciidoc

Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -5,10 +5,6 @@ The field data cache contains <<fielddata-mapping-param, field data>> and <<eage
55
which are both used to support aggregations on certain field types.
66
Since these are on-heap data structures, it is important to monitor the cache's use.
77

8-
[discrete]
9-
[[fielddata-sizing]]
10-
==== Cache size
11-
128
The entries in the cache are expensive to build, so the default behavior is
139
to keep the cache loaded in memory. The default cache size is unlimited,
1410
causing the cache to grow until it reaches the limit set by the <<fielddata-circuit-breaker, field data circuit breaker>>. This behavior can be configured.
@@ -20,16 +16,12 @@ at the cost of rebuilding the cache as needed.
2016
If the circuit breaker limit is reached, further requests that increase the cache
2117
size will be prevented. In this case you should manually <<indices-clearcache, clear the cache>>.
2218

19+
TIP: You can monitor memory usage for field data as well as the field data circuit
20+
breaker using
21+
the <<cluster-nodes-stats,nodes stats API>> or the <<cat-fielddata,cat fielddata API>>.
22+
2323
`indices.fielddata.cache.size`::
2424
(<<static-cluster-setting,Static>>)
2525
The max size of the field data cache, eg `38%` of node heap space, or an
2626
absolute value, eg `12GB`. Defaults to unbounded. If you choose to set it,
27-
it should be smaller than <<fielddata-circuit-breaker>> limit.
28-
29-
[discrete]
30-
[[fielddata-monitoring]]
31-
==== Monitoring field data
32-
33-
You can monitor memory usage for field data as well as the field data circuit
34-
breaker using
35-
the <<cluster-nodes-stats,nodes stats API>> or the <<cat-fielddata,cat fielddata API>>.
27+
it should be smaller than <<fielddata-circuit-breaker>> limit.

docs/reference/modules/node.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -420,7 +420,7 @@ Similarly, each master-eligible node maintains the following data on disk:
420420

421421
Each node checks the contents of its data path at startup. If it discovers
422422
unexpected data then it will refuse to start. This is to avoid importing
423-
unwanted <<dangling-indices,dangling indices>> which can lead
423+
unwanted <<dangling-indices-api,dangling indices>> which can lead
424424
to a red cluster health. To be more precise, nodes without the `data` role will
425425
refuse to start if they find any shard data on disk at startup, and nodes
426426
without both the `master` and `data` roles will refuse to start if they have any

docs/reference/monitoring/index.asciidoc

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ performance of your {es} cluster.
99

1010
* <<monitoring-overview>>
1111
* <<how-monitoring-works>>
12+
* <<configuring-logging>>
1213
* <<monitoring-production>>
1314
* <<configuring-elastic-agent>>
1415
* <<configuring-metricbeat>>
@@ -23,6 +24,8 @@ include::overview.asciidoc[]
2324

2425
include::how-monitoring-works.asciidoc[]
2526

27+
include::setup/logging-config.asciidoc[]
28+
2629
include::production.asciidoc[]
2730

2831
include::configuring-elastic-agent.asciidoc[]

docs/reference/redirects.asciidoc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1215,7 +1215,7 @@ See <<search-search>>.
12151215
[role="exclude",id="modules-gateway-dangling-indices"]
12161216
=== Dangling indices
12171217

1218-
See <<dangling-indices>>.
1218+
See <<dangling-indices-api>>.
12191219

12201220
[role="exclude",id="shards-allocation"]
12211221
=== Cluster-level shard allocation

docs/reference/setup.asciidoc

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -65,8 +65,6 @@ include::settings/license-settings.asciidoc[]
6565

6666
include::modules/gateway.asciidoc[]
6767

68-
include::setup/logging-config.asciidoc[]
69-
7068
include::settings/ml-settings.asciidoc[]
7169

7270
include::settings/inference-settings.asciidoc[]

0 commit comments

Comments
 (0)