|
@@ -0,0 +1,93 @@
|
|
|
+[role="xpack"]
|
|
|
+[[indices-migrate-to-data-stream]]
|
|
|
+=== Migrate to data stream API
|
|
|
+++++
|
|
|
+<titleabbrev>Migrate to data stream</titleabbrev>
|
|
|
+++++
|
|
|
+
|
|
|
+Converts an <<indices-aliases,index alias>> to a <<data-streams,data stream>>.
|
|
|
+
|
|
|
+Data streams require a matching <<indices-templates,index template>>.
|
|
|
+See <<set-up-a-data-stream>>.
|
|
|
+
|
|
|
+////
|
|
|
+[source,console]
|
|
|
+----
|
|
|
+POST idx1/_doc/
|
|
|
+{
|
|
|
+ "message" : "testing",
|
|
|
+ "@timestamp" : "2020-01-01"
|
|
|
+}
|
|
|
+
|
|
|
+POST idx2/_doc/
|
|
|
+{
|
|
|
+ "message" : "testing2",
|
|
|
+ "@timestamp" : "2020-01-01"
|
|
|
+}
|
|
|
+
|
|
|
+POST /_aliases
|
|
|
+{
|
|
|
+ "actions": [
|
|
|
+ {
|
|
|
+ "add": {
|
|
|
+ "index": "idx1",
|
|
|
+ "alias": "my-logs",
|
|
|
+ "is_write_index": true
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ "add": {
|
|
|
+ "index": "idx2",
|
|
|
+ "alias": "my-logs"
|
|
|
+ }
|
|
|
+ }
|
|
|
+ ]
|
|
|
+}
|
|
|
+
|
|
|
+PUT /_index_template/template
|
|
|
+{
|
|
|
+ "index_patterns": ["my-logs*"],
|
|
|
+ "data_stream": { }
|
|
|
+}
|
|
|
+----
|
|
|
+////
|
|
|
+
|
|
|
+[source,console]
|
|
|
+----
|
|
|
+POST /_data_stream/_migrate/my-logs
|
|
|
+----
|
|
|
+// TEST[continued]
|
|
|
+
|
|
|
+////
|
|
|
+[source,console]
|
|
|
+-----------------------------------
|
|
|
+DELETE /_data_stream/my-logs
|
|
|
+DELETE /_index_template/template
|
|
|
+-----------------------------------
|
|
|
+// TEST[continued]
|
|
|
+////
|
|
|
+
|
|
|
+[[indices-migrate-to-data-stream-request]]
|
|
|
+==== {api-request-title}
|
|
|
+
|
|
|
+`POST /_data_stream/_migrate/<alias>`
|
|
|
+
|
|
|
+[[indices-migrate-to-data-stream-api-path-params]]
|
|
|
+==== {api-path-parms-title}
|
|
|
+
|
|
|
+`<alias>`::
|
|
|
++
|
|
|
+--
|
|
|
+(Required, string)
|
|
|
+Name of the index alias to convert to a data stream. The alias must meet the
|
|
|
+following criteria:
|
|
|
+
|
|
|
+- The alias must have a <<aliases-write-index,write index>>.
|
|
|
+- All indices for the alias have a `@timestamp` field mapping of a `date` or `date_nanos` field type.
|
|
|
+- The alias must not have any <<filtered,filters>>.
|
|
|
+- The alias must not use <<aliases-routing,custom routing>>.
|
|
|
+
|
|
|
+If successful, the request removes the alias and creates a data stream with the
|
|
|
+same name. The alias's indices become hidden backing indices for the stream. The
|
|
|
+alias's write index becomes the stream's write index.
|
|
|
+--
|