浏览代码

[DOCS] Data stream migration API (#65017)

Dan Hermann 4 年之前
父节点
当前提交
0a2891e1e2

+ 4 - 1
docs/reference/data-streams/data-stream-apis.asciidoc

@@ -7,6 +7,7 @@ The following APIs are available for managing <<data-streams,data streams>>:
 * <<indices-create-data-stream>>
 * <<indices-delete-data-stream>>
 * <<indices-get-data-stream>>
+* <<indices-migrate-to-data-stream>>
 * <<data-stream-stats-api>>
 
 For concepts and tutorials, see <<data-streams>>.
@@ -17,4 +18,6 @@ include::{es-repo-dir}/indices/delete-data-stream.asciidoc[]
 
 include::{es-repo-dir}/indices/get-data-stream.asciidoc[]
 
-include::{es-repo-dir}/indices/data-stream-stats.asciidoc[]
+include::{es-repo-dir}/indices/migrate-to-data-stream.asciidoc[]
+
+include::{es-repo-dir}/indices/data-stream-stats.asciidoc[]

+ 93 - 0
docs/reference/indices/migrate-to-data-stream.asciidoc

@@ -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.
+--