mirror of
https://github.com/honeymoose/OpenSearch.git
synced 2025-02-06 13:08:29 +00:00
The main benefit of the upgrade for users is the search optimization for top scored documents when the total hit count is not needed. However this optimization is not activated in this change, there is another issue opened to discuss how it should be integrated smoothly. Some comments about the change: * Tests that can produce negative scores have been adapted but we need to forbid them completely: #33309 Closes #32899
563 lines
17 KiB
Plaintext
563 lines
17 KiB
Plaintext
["appendix",role="exclude",id="redirects"]
|
|
= Deleted pages
|
|
|
|
The following pages have moved or been deleted.
|
|
|
|
[role="exclude",id="cluster-nodes-shutdown"]
|
|
=== Nodes shutdown
|
|
|
|
The `_shutdown` API has been removed. Instead, setup Elasticsearch to run as
|
|
a service (see <<rpm>>, <<deb>>, or <<windows>>) or use the `-p`
|
|
command line option to <<setup-installation-daemon,write the PID to a file>>.
|
|
|
|
[role="exclude",id="indices-upgrade"]
|
|
=== Upgrade API
|
|
|
|
The `_upgrade` API is no longer useful and will be removed. Instead, see
|
|
<<reindex-upgrade>>.
|
|
|
|
[role="exclude",id="docs-bulk-udp"]
|
|
=== Bulk UDP API
|
|
|
|
The Bulk UDP services has been removed. Use the standard <<docs-bulk>> instead.
|
|
|
|
[role="exclude",id="indices-delete-mapping"]
|
|
=== Delete Mapping
|
|
|
|
It is no longer possible to delete the mapping for a type. Instead you should
|
|
<<indices-delete-index,delete the index>> and recreate it with the new mappings.
|
|
|
|
[role="exclude",id="indices-status"]
|
|
=== Index Status
|
|
|
|
The index `_status` API has been replaced with the <<indices-stats>> and
|
|
<<indices-recovery>> APIs.
|
|
|
|
[role="exclude",id="mapping-analyzer-field"]
|
|
=== `_analyzer`
|
|
|
|
The `_analyzer` field in type mappings is no longer supported and will be
|
|
automatically removed from mappings when upgrading to 2.x.
|
|
|
|
[role="exclude",id="mapping-boost-field"]
|
|
=== `_boost`
|
|
|
|
The `_boost` field in type mappings is no longer supported and will be
|
|
automatically removed from mappings when upgrading to 2.x.
|
|
|
|
[role="exclude",id="mapping-conf-mappings"]
|
|
=== Config mappings
|
|
|
|
It is no longer possible to specify mappings in files in the `config`
|
|
directory. Instead, mappings should be created using the API with:
|
|
|
|
* <<indices-create-index>>
|
|
* <<indices-put-mapping>>
|
|
* <<indices-templates>>
|
|
|
|
[role="exclude",id="mapping-parent-field"]
|
|
=== `_parent` field
|
|
|
|
The `_parent` field has been removed in favour of the <<parent-join,`join` field>>.
|
|
|
|
[role="exclude",id="mapping-uid-field"]
|
|
=== `_uid` field
|
|
|
|
The `_uid` field has been removed in favour of the <<mapping-id-field,`_id` field>>.
|
|
|
|
[role="exclude",id="modules-memcached"]
|
|
=== memcached
|
|
|
|
The `memcached` transport is no longer supported. Instead use the REST
|
|
interface over <<modules-http,HTTP>> or the
|
|
{javaclient}/index.html[Java API].
|
|
|
|
[role="exclude",id="modules-thrift"]
|
|
=== Thrift
|
|
|
|
The `thrift` transport is no longer supported. Instead use the REST
|
|
interface over <<modules-http,HTTP>> or the
|
|
{javaclient}/index.html[Java API].
|
|
|
|
// QUERY DSL
|
|
|
|
[role="exclude",id="query-dsl-queries"]
|
|
=== Queries
|
|
|
|
Queries and filters have been merged. Any query clause can now be used as a query
|
|
in ``query context'' and as a filter in ``filter context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-filters"]
|
|
=== Filters
|
|
|
|
Queries and filters have been merged. Any query clause can now be used as a query
|
|
in ``query context'' and as a filter in ``filter context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-not-filter"]
|
|
=== Not Filter
|
|
|
|
The `not` query has been replaced by using a `must_not` clause in a `bool` query (see <<query-dsl-bool-query>>).
|
|
|
|
[role="exclude",id="query-dsl-bool-filter"]
|
|
=== Bool Filter
|
|
|
|
The `bool` filter has been replaced by the <<query-dsl-bool-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-exists-filter"]
|
|
=== Exists Filter
|
|
|
|
The `exists` filter has been replaced by the <<query-dsl-exists-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-geo-bounding-box-filter"]
|
|
=== Geo Bounding Box Filter
|
|
|
|
The `geo_bounding_box` filter has been replaced by the <<query-dsl-geo-bounding-box-query>>.
|
|
It behaves as a query in ``query context'' and as a filter in ``filter
|
|
context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-geo-distance-filter"]
|
|
=== Geo Distance Filter
|
|
|
|
The `geo_distance` filter has been replaced by the <<query-dsl-geo-distance-query>>.
|
|
It behaves as a query in ``query context'' and as a filter in ``filter
|
|
context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-geo-distance-range-filter"]
|
|
=== Geo Distance Range Filter
|
|
|
|
The `geo_distance_range` filter has been replaced by the <<query-dsl-geo-distance-range-query>>.
|
|
It behaves as a query in ``query context'' and as a filter in ``filter
|
|
context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-geo-polygon-filter"]
|
|
=== Geo Polygon Filter
|
|
|
|
The `geo_polygon` filter has been replaced by the <<query-dsl-geo-polygon-query>>.
|
|
It behaves as a query in ``query context'' and as a filter in ``filter
|
|
context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-geo-shape-filter"]
|
|
=== Geo Shape Filter
|
|
|
|
The `geo_shape` filter has been replaced by the <<query-dsl-geo-shape-query>>.
|
|
It behaves as a query in ``query context'' and as a filter in ``filter
|
|
context'' (see <<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-has-child-filter"]
|
|
=== Has Child Filter
|
|
|
|
The `has_child` filter has been replaced by the <<query-dsl-has-child-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-has-parent-filter"]
|
|
=== Has Parent Filter
|
|
|
|
The `has_parent` filter has been replaced by the <<query-dsl-has-parent-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-top-children-query"]
|
|
=== Top Children Query
|
|
|
|
The `top_children` query has been removed. Use the <<query-dsl-has-child-query>> instead.
|
|
|
|
[role="exclude",id="query-dsl-ids-filter"]
|
|
=== IDs Filter
|
|
|
|
The `ids` filter has been replaced by the <<query-dsl-ids-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-match-all-filter"]
|
|
=== Match All Filter
|
|
|
|
The `match_all` filter has been replaced by the <<query-dsl-match-all-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-nested-filter"]
|
|
=== Nested Filter
|
|
|
|
The `nested` filter has been replaced by the <<query-dsl-nested-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-prefix-filter"]
|
|
=== Prefix Filter
|
|
|
|
The `prefix` filter has been replaced by the <<query-dsl-prefix-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-query-filter"]
|
|
=== Query Filter
|
|
|
|
The `query` filter has been removed as queries and filters have been merged (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-range-filter"]
|
|
=== Range Filter
|
|
|
|
The `range` filter has been replaced by the <<query-dsl-range-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-regexp-filter"]
|
|
=== Regexp Filter
|
|
|
|
The `regexp` filter has been replaced by the <<query-dsl-regexp-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-script-filter"]
|
|
=== Script Filter
|
|
|
|
The `script` filter has been replaced by the <<query-dsl-script-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-term-filter"]
|
|
=== Term Filter
|
|
|
|
The `term` filter has been replaced by the <<query-dsl-term-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-terms-filter"]
|
|
=== Terms Filter
|
|
|
|
The `terms` filter has been replaced by the <<query-dsl-terms-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-type-filter"]
|
|
=== Type Filter
|
|
|
|
The `type` filter has been replaced by the <<query-dsl-type-query>>. It behaves
|
|
as a query in ``query context'' and as a filter in ``filter context'' (see
|
|
<<query-dsl>>).
|
|
|
|
[role="exclude",id="query-dsl-flt-query"]
|
|
=== Fuzzy Like This Query
|
|
|
|
The `fuzzy_like_this`, alternatively known as `flt`, query has been removed. Instead use either
|
|
the <<query-dsl-match-query-fuzziness,`fuzziness`>> parameter with the
|
|
<<query-dsl-match-query,`match` query>> or the <<query-dsl-mlt-query>>.
|
|
|
|
|
|
[role="exclude",id="query-dsl-flt-field-query"]
|
|
=== Fuzzy Like This Field Query
|
|
|
|
The `fuzzy_like_this_field` or `flt_field` query has been removed. Instead use
|
|
the <<query-dsl-match-query-fuzziness,`fuzziness`>> parameter with the
|
|
<<query-dsl-match-query,`match` query>> or the <<query-dsl-mlt-query>>.
|
|
|
|
[role="exclude",id="query-dsl-geo-distance-range-query"]
|
|
=== Geo distance range Query
|
|
|
|
The `geo_distance_range` query has been removed. Instead use the
|
|
<<query-dsl-geo-distance-query, Geo Distance Query>> with pagination
|
|
or the
|
|
<<search-aggregations-bucket-geodistance-aggregation, Geo Distance Aggregation>>
|
|
depending on your needs.
|
|
|
|
[role="exclude",id="query-dsl-geohash-cell-query"]
|
|
=== Geohash Cell Query
|
|
|
|
The `geohash_cell` query has been removed. Instead use the
|
|
<<query-dsl-geo-bounding-box-query, Geo Bounding Box Query>>.
|
|
|
|
[role="exclude",id="search-more-like-this"]
|
|
=== More Like This API
|
|
|
|
The More Like This API has been removed. Instead, use the <<query-dsl-mlt-query>>.
|
|
|
|
// FACETS
|
|
|
|
[role="exclude",id="search-facets"]
|
|
=== Facets
|
|
|
|
Faceted search refers to a way to explore large amounts of data by displaying
|
|
summaries about various partitions of the data and later allowing to narrow
|
|
the navigation to a specific partition.
|
|
|
|
In Elasticsearch, `facets` are also the name of a feature that allowed to
|
|
compute these summaries. `facets` have been replaced by
|
|
<<search-aggregations, aggregations>> in Elasticsearch 1.0, which are a superset
|
|
of facets.
|
|
|
|
[role="exclude",id="search-facets-filter-facet"]
|
|
=== Filter Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-filter-aggregation,`filter` aggregation>> or
|
|
<<search-aggregations-bucket-filters-aggregation,`filters` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-query-facet"]
|
|
=== Query Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-filter-aggregation,`filter` aggregation>> or
|
|
<<search-aggregations-bucket-filters-aggregation,`filters` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-geo-distance-facet"]
|
|
=== Geo Distance Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-geodistance-aggregation,`geo_distance` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-histogram-facet"]
|
|
=== Histogram Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-histogram-aggregation,`histogram` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-date-histogram-facet"]
|
|
=== Date Histogram Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-datehistogram-aggregation,`date_histogram` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-range-facet"]
|
|
=== Range Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-range-aggregation,`range` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-terms-facet"]
|
|
=== Terms Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-terms-aggregation,`terms` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-terms-statistical-facet"]
|
|
=== Terms Stats Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-bucket-terms-aggregation,`terms` aggregation>>
|
|
with the <<search-aggregations-metrics-stats-aggregation,`stats` aggregation>>
|
|
or the <<search-aggregations-metrics-extendedstats-aggregation,`extended_stats` aggregation>>
|
|
instead.
|
|
|
|
[role="exclude",id="search-facets-statistical-facet"]
|
|
=== Statistical Facet
|
|
|
|
Facets have been removed. Use the
|
|
<<search-aggregations-metrics-stats-aggregation,`stats` aggregation>>
|
|
or the <<search-aggregations-metrics-extendedstats-aggregation,`extended_stats` aggregation>> instead.
|
|
|
|
[role="exclude",id="search-facets-migrating-to-aggs"]
|
|
=== Migrating from facets to aggregations
|
|
|
|
Facets have been removed. Use <<search-aggregations>> instead.
|
|
|
|
// CACHES
|
|
|
|
[role="exclude",id="shard-query-cache"]
|
|
=== Shard request cache
|
|
|
|
The shard query cache has been renamed <<shard-request-cache>>.
|
|
|
|
[role="exclude",id="filter-cache"]
|
|
=== Query cache
|
|
|
|
The filter cache has been renamed <<query-cache>>.
|
|
|
|
[role="exclude",id="query-dsl-filtered-query"]
|
|
=== Filtered query
|
|
|
|
The `filtered` query is replaced by the <<query-dsl-bool-query,bool>> query. Instead of
|
|
the following:
|
|
|
|
[source,js]
|
|
-------------------------
|
|
## INCORRECT - DEPRECATED SYNTAX, DO NOT USE
|
|
GET _search
|
|
{
|
|
"query": {
|
|
"filtered": {
|
|
"query": {
|
|
"match": {
|
|
"text": "quick brown fox"
|
|
}
|
|
},
|
|
"filter": {
|
|
"term": {
|
|
"status": "published"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-------------------------
|
|
// NOTCONSOLE
|
|
|
|
move the query and filter to the `must` and `filter` parameters in the `bool`
|
|
query:
|
|
|
|
[source,js]
|
|
-------------------------
|
|
GET _search
|
|
{
|
|
"query": {
|
|
"bool": {
|
|
"must": {
|
|
"match": {
|
|
"text": "quick brown fox"
|
|
}
|
|
},
|
|
"filter": {
|
|
"term": {
|
|
"status": "published"
|
|
}
|
|
}
|
|
}
|
|
}
|
|
}
|
|
-------------------------
|
|
// CONSOLE
|
|
|
|
[role="exclude",id="query-dsl-or-query"]
|
|
=== Or query
|
|
|
|
The `or` query is replaced in favour of the <<query-dsl-bool-query,bool>> query.
|
|
|
|
[role="exclude",id="query-dsl-or-filter"]
|
|
=== Or filter
|
|
|
|
The `or` filter is replaced in favour of the <<query-dsl-bool-query,bool>> query.
|
|
|
|
[role="exclude",id="query-dsl-and-query"]
|
|
=== And query
|
|
|
|
The `and` query is replaced in favour of the <<query-dsl-bool-query,bool>> query.
|
|
|
|
[role="exclude",id="query-dsl-and-filter"]
|
|
=== And filter
|
|
|
|
The `and` filter is replaced in favour of the <<query-dsl-bool-query,bool>> query.
|
|
|
|
[role="exclude",id="query-dsl-limit-query"]
|
|
=== Limit query
|
|
|
|
The `limit` query is replaced in favour of the <<search-request-body,terminate_after>>
|
|
parameter of search requests.
|
|
|
|
[role="exclude",id="query-dsl-limit-filter"]
|
|
=== Limit filter
|
|
|
|
The `limit` filter is replaced in favour of the <<search-request-body,terminate_after>>
|
|
parameter of search requests.
|
|
|
|
[role="exclude",id="query-dsl-not-query"]
|
|
=== Not query
|
|
|
|
The `not` query has been replaced by using a `mustNot` clause in a Boolean query.
|
|
|
|
[role="exclude",id="mapping-nested-type"]
|
|
=== Nested type
|
|
|
|
The docs for the `nested` field datatype have moved to <<nested>>.
|
|
|
|
[role="exclude",id="indices-warmers"]
|
|
=== Warmers
|
|
|
|
Warmers have been removed. There have been significant improvements to the
|
|
index that make warmers not necessary anymore.
|
|
|
|
[role="exclude",id="index-boost"]
|
|
=== Index time boosting
|
|
|
|
The index time boost mapping has been replaced with query time boost (see <<mapping-boost>>).
|
|
|
|
[role="exclude",id="modules-scripting-native"]
|
|
=== Native scripting
|
|
|
|
Native scripts have been replaced with writing custom `ScriptEngine` backends (see <<modules-scripting-engine>>).
|
|
|
|
[role="exclude",id="modules-advanced-scripting"]
|
|
=== Advanced scripting
|
|
|
|
Using `_index` in scripts has been replaced with writing `ScriptEngine` backends (see <<modules-scripting-engine>>).
|
|
|
|
[role="exclude",id="modules-scripting-painless-syntax"]
|
|
=== Painless Syntax
|
|
|
|
See the
|
|
{painless}/painless-lang-spec.html[Painless Language Specification]
|
|
in the guide to the {painless}/index.html[Painless Scripting Language].
|
|
|
|
[role="exclude",id="modules-scripting-painless-debugging"]
|
|
=== Painless Debugging
|
|
|
|
See {painless}/painless-debugging.html[Painless Debugging] in the
|
|
guide to the {painless}/index.html[Painless Scripting Language].
|
|
|
|
[role="exclude",id="painless-api-reference"]
|
|
=== Painless API Reference
|
|
|
|
See the {painless}/painless-api-reference.html[Painless API Reference] in
|
|
the guide to the {painless}/index.html[Painless Scripting Language].
|
|
|
|
[role="exclude", id="security-api-roles"]
|
|
=== Role management APIs
|
|
|
|
You can use the following APIs to add, remove, and retrieve roles in the native realm:
|
|
|
|
* <<security-api-put-role,Create role>>, <<security-api-delete-role,Delete role>>
|
|
* <<security-api-clear-role-cache,Clear roles cache>>
|
|
* <<security-api-get-role,Get roles>>
|
|
|
|
[role="exclude",id="security-api-tokens"]
|
|
=== Token management APIs
|
|
|
|
You can use the following APIs to create and invalidate bearer tokens for access
|
|
without requiring basic authentication:
|
|
|
|
* <<security-api-get-token,Get token>>, <<security-api-invalidate-token,Invalidate token>>
|
|
|
|
[role="exclude",id="security-api-users"]
|
|
=== User Management APIs
|
|
|
|
You can use the following APIs to create, read, update, and delete users from the
|
|
native realm:
|
|
|
|
* <<security-api-put-user,Create users>>, <<security-api-delete-user,Delete users>>
|
|
* <<security-api-enable-user,Enable users>>, <<security-api-disable-user,Disable users>>
|
|
* <<security-api-change-password,Change passwords>>
|
|
* <<security-api-get-user,Get users>>
|
|
|
|
[role="exclude",id="security-api-role-mapping"]
|
|
=== Role mapping APIs
|
|
|
|
You can use the following APIs to add, remove, and retrieve role mappings:
|
|
|
|
* <<security-api-put-role-mapping,Add role mappings>>, <<security-api-delete-role-mapping,Delete role mappings>>
|
|
* <<security-api-get-role-mapping,Get role mappings>>
|
|
|
|
[role="exclude",id="security-api-privileges"]
|
|
=== Privilege APIs
|
|
|
|
See <<security-api-has-privileges>>.
|
|
|
|
[role="exclude",id="xpack-commands"]
|
|
=== X-Pack commands
|
|
|
|
See <<commands>>.
|
|
|
|
[role="exclude",id="ml-api-definitions"]
|
|
=== Machine learning API definitions
|
|
|
|
See <<api-definitions>>.
|
|
|
|
[role="exclude",id="analysis-standard-tokenfilter"]
|
|
=== Standard filter removed
|
|
|
|
The standard token filter has been removed.
|
|
|