search_type
edit
search_type=count
removededit
The count
search type was deprecated since version 2.0.0 and is now removed. In order to get the same benefits, you just need to set the value of the size
parameter to 0
.
count
search type은 2.0.0 이후 deprecate되었고, 이제 제거되었다. 동일한 효과를 얻으려면, size
parameter를 0
으로 설정하면 된다.
For instance, the following request:
예를 들어, 다음 request는
GET /my_index/_search?search_type=count { "aggs": { "my_terms": { "terms": { "field": "foo" } } } }
can be replaced with:
다음처럼 대체된다.
GET /my_index/_search { "size": 0, "aggs": { "my_terms": { "terms": { "field": "foo" } } } }
search_type=scan
removededit
The scan
search type was deprecated since version 2.1.0 and is now removed. All benefits from this search type can now be achieved by doing a scroll request that sorts documents in _doc
order, for instance:
scan
search type은 2.1.0 이후 deprecate되었고, 이제 제거되었다. 이 search type과 동일한 효과를 얻으려면, _doc
으로 document를 정렬하는 scroll request로 가능하다.
GET /my_index/_search?scroll=2m { "sort": [ "_doc" ] }
Scroll requests sorted by _doc
have been optimized to more efficiently resume from where the previous request stopped, so this will have the same performance characteristics as the former scan
search type.
_doc
에 의해 정렬된 scroll request는 이전 request가 중지되었던 곳에서 더 효율적으로 다시 시작하도록 최적화되어 있어, 이전의 scan
search type과 동일한 성능을 갖는다.
Search shard limitedit
In 5.0, Elasticsearch rejects requests that would query more than 1000 shard copies (primaries or replicas). The reason is that such large numbers of shards make the job of the coordinating node very CPU and memory intensive. It is usually a better idea to organize data in such a way that there are fewer larger shards. In case you would like to bypass this limit, which is discouraged, you can update the action.search.shard_count.limit
cluster setting to a greater value.
5.0에서, Elasticsearch는 1000 개 이상의 shard 복사본(primary 또는 replica)을 query하는 request를 거부한다. 그 이유는 많은 수의 shard가 coordinating node의 작업을 매우 많은 CPU 및 memory를 사용하도록 만들기 때문이다. 일반적으로 더 작은 수의 더 큰 shard가 존재하도록 데이터를 구성하는 것이 더 좋다. 권장하지 않는 이 제한을 우회하고자 하는 경우, action.search.shard_count.limit
cluster 설정을 더 큰 값으로 update할 수 있다.
fields
parameteredit
The fields
parameter has been replaced by stored_fields
. The stored_fields
parameter will only return stored fields — it will no longer extract values from the _source
.
fields
parameter는 stored_fields
로 대체되었다. stored_fields
parameter는 stored field만을 return한다. 더 이상 _source
로부터 값을 추출하지 않는다.
fielddata_fields
parameteredit
The fielddata_fields
has been deprecated, use parameter docvalue_fields
instead.
fielddata_fields
는 deprecate되었다. 대신 docvalue_fields
parameter를 사용하자.
search-exists API removededit
The search exists api has been removed in favour of using the search api with size
set to 0
and terminate_after
set to 1
.
size
를 0
으로 설정하고 terminate_after
를 1
로 설정한 search api를 사용하기 위하여 search exists api는 제거되었다.
Deprecated queries removededit
The following deprecated queries have been removed:
다음의 deprecate된 query는 제거되었다.
filtered
Use
bool
query instead, which supportsfilter
clauses too.대신
bool
query를 사용하자. 이것은filter
절도 지원한다.and
Use
must
clauses in abool
query instead.대신
bool
query에서must
절을 사용하자.or
Use
should
clauses in abool
query instead.대신
bool
query에서should
절을 사용하자.missing
Use a negated
exists
query instead. (Also removed_missing_
from thequery_string
query)대신 반대의 의미인
exists
query를 사용하자. (또한query_string
query에서_missing_
을 제거했다)limit
Use the
terminate_after
parameter instead.대신
terminate_after
parameter를 사용하자.fquery
Is obsolete after filters and queries have been merged.
filter와 query가 병합된 후 더 이상 쓸모가 없다.
query
Is obsolete after filters and queries have been merged.
filter와 query가 병합된 후 더 이상 쓸모가 없다.
query_binary
Was undocumented and has been removed.
문서화되지 않았었고 제거되었다.
filter_binary
Was undocumented and has been removed.
문서화되지 않았었고 제거되었다.
Changes to queriesedit
Unsupported queries such as term queries on
geo_point
fields will now fail rather than returning no hits.geo_point
field에 대한 term query처럼 지원되지 않는 query는 hit없이 return되지 않고 실패한다.Removed support for fuzzy queries on numeric, date and ip fields, use range queries instead.
numeric, date, ip field에 대한 fuzzy query는 제거되었다. 대신 range query를 사용하자.
Removed support for range and prefix queries on
_uid
and_id
fields._uid
,_id
field에 대한 range, prefix query는 제거되었다.Querying an unindexed field will now fail rather than returning no hits.
index되지 않은 field에 대한 query는 hit없이 return되지 않고 실패한다.
Removed support for the deprecated
min_similarity
parameter infuzzy query
, in favour offuzziness
.fuzziness
를 위하여,fuzzy
query에서 deprecate된min_similarity
parameter에 대한 지원은 제거되었다.Removed support for the deprecated
fuzzy_min_sim
parameter inquery_string
query, in favour offuzziness
.fuzziness
를 위하여,query_string
query에서 deprecate된fuzzy_min_sim
parameter에 대한 지원은 제거되었다.Removed support for the deprecated
edit_distance
parameter in completion suggester, in favour offuzziness
.fuzziness
를 위하여, completion suggester에서 deprecate된edit_distance
parameter에 대한 지원은 제거되었다.Removed support for the deprecated
filter
andno_match_filter
fields inindices
query, in favour ofquery
andno_match_query
.query
와no_match_query
를 위하여,indices
query에서 deprecate된filter
와no_match_filter
field에 대한 지원은 제거되었다.Removed support for the deprecated
filter
fields innested
query, in favour ofquery
.query
를 위하여,nested
query에서 deprecate된filter
field에 대한 지원은 제거되었다.Removed support for the deprecated
minimum_should_match
anddisable_coord
interms
query, usebool
query instead. Also removed support for the deprecatedexecution
parameter.terms
query에서 deprecate된minimum_should_match
와disable_coord
에 대한 지원은 제거되었다. 대신bool
query를 사용하자. 또한 deprecate된execution
parameter에 대한 지원은 제거되었다.Removed support for the top level
filter
element infunction_score
query, replaced byquery
.function_score
query에서 top level의filter
요소에 대한 지원은 제거되고query
로 대체되었다.The
collect_payloads
parameter of thespan_near
query has been deprecated. Payloads will be loaded when needed.span_near
query의collect_payloads
parameter가 deprecate되었다. payload는 필요한 경우에 로드될 것이다.The
score_type
parameter to thenested
andhas_child
queries has been removed in favour ofscore_mode
. Thescore_mode
parameter tohas_parent
has been deprecated in favour of thescore
boolean parameter. Also, thetotal
score mode has been removed in favour of thesum
mode.score_mode
를 위하여,nested
,has_child
query의score_type
parameter가 제거되었다.score
boolean parameter를 위하여,has_parent
의score_mode
parameter는 deprecate되었다. 또한,sum
mode를 위하여total
score mode가 제거되었다.When the
max_children
parameter was set to0
on thehas_child
query then there was no upper limit on how many child documents were allowed to match. Now,0
really means that zero child documents are allowed. If no upper limit is needed then themax_children
parameter shouldn’t be specified at all.max_children
parameter가has_child
query에서0
으로 설정되었을 경우, 일치하는 child document의 수에 대한 상한값이 없었다. 이제0
은 실제로 0 개의 하위 문서가 허용됨을 의미합니다. 상한값이 필요 없다면,max_children
parameter를 지정하지 말아야 한다.The
exists
query will now fail if the_field_names
field is disabled._field_names
field가 disable되어 있다면,exists
query는 실패한다.The
multi_match
query will fail iffuzziness
is used forcross_fields
,phrase
orphrase_prefix
type. This parameter was undocumented and silently ignored before for these types ofmulti_match
.cross_fields
,phrase
,phrase_prefix
type에 대해fuzziness
가 사용되면multi_match
query는 실패한다. 이 parameter는multi_match
의 이러한 type에 대해 문서화되지 않았고 조용히 무시되었다.Deprecated support for the coerce, normalize, ignore_malformed parameters in GeoPolygonQuery. Use parameter validation_method instead.
GeoPolygonQuery에서 coerce, normalize, ignore_malformed parameter에 대한 지원이 deprecate되었다. 대신 validation_method parameter를 사용하자.
Deprecated support for the coerce, normalize, ignore_malformed parameters in GeoDistanceQuery. Use parameter validation_method instead.
GeoDistanceQuery에서 coerce, normalize, ignore_malformed parameter에 대한 지원이 deprecate되었다. 대신 validation_method parameter를 사용하자.
Deprecated support for the coerce, normalize, ignore_malformed parameters in GeoBoundingBoxQuery. Use parameter validation_method instead.
GeoBoundingBoxQuery에서 coerce, normalize, ignore_malformed parameter에 대한 지원이 deprecate되었다. 대신 validation_method parameter를 사용하자.
The
geo_distance_range
query is deprecated and should be replaced by either thegeo_distance
bucket aggregation, or geo_distance sort.geo_distance_range
query는 deprecate되었다.geo_distance
bucket aggregation이나 geo_distance sort로 대체되어야 한다.For
geo_distance
query, aggregation, and sort thesloppy_arc
option for thedistance_type
parameter has been deprecated.geo_distance
query, aggregation,distance_type
parameter에 대한sloppy_arc
option의 정렬은 deprecate되었다.
Top level filter
parameteredit
Removed support for the deprecated top level filter
in the search api, replaced by post_filter
.
search api에서 deprecate된 top level의 filter
에 대한 지원이 제거되었다. post_filter
로 대체하자.
Highlightersedit
Removed support for multiple highlighter names, the only supported ones are: plain
, fvh
and postings
.
다중 highlighter 이름에 대한 지원이 제거되었다 단 하나만 지원된다. plain
, fvh
, postings
Term vectors APIedit
The term vectors APIs no longer persist unmapped fields in the mappings.
term vectors API는 mapping되지 않은 field를 더 이상 mapping에 유지하지 않는다.
The dfs
parameter to the term vectors API has been removed completely. Term vectors don’t support distributed document frequencies anymore.
term vectors API의 dfs
parameter는 완전히 제거되었다. term vectors는 더 이상 distributed document frequencies를 지원하지 않는다.
Sortedit
The reverse
parameter has been removed, in favour of explicitly specifying the sort order with the order
option.
reverse
parameter는 order
option으로 명시적으로 정렬 순서를 지정하기 위하여 제거되었다.
The coerce
and ignore_malformed
parameters were deprecated in favour of validation_method
.
validation_method
를 위하여 coerce
와 ignore_malformed
parameter는 deprecate되었다.
Inner hitsedit
Top level inner hits syntax has been removed. Inner hits can now only be specified as part of the
nested
,has_child
andhas_parent
queries. Use cases previously only possible with top level inner hits can now be done with inner hits defined inside the query dsl.top level의 inner hits 구문이 제거되었다. 이제 inner hit는
nested
,has_child
,has_parent
query의 일부로만 지정해야 한다. 이전에는 top level inner hit에서만 가능한 사용 사례가 query dsl 내부에 정의된 inner hit를 사용하여 수행될 수 있다.Source filtering for inner hits inside nested queries requires full field names instead of relative field names. This is now consistent for source filtering on other places in the search API.
nested query 내부의 inner hit에 대한 source filtering에는 relative field 이름 대신 full field 이름이 필요합니다. 이것은 search API의 다른 위치에서 source filtering에 대한 일관성이다.
Nested inner hits will now no longer include
_index
,_type
and_id
keys. For nested inner hits these values are always the same as the_index
,_type
and_id
keys of the root search hit.이제 nested inner hit는 더 이상
_index
,_type
,_id
key를 포함하지 않는다. nested inner hit에서 이 값들은 항상 root search hit의_index
,_type
,_id
key와 동일하다.Parent/child inner hits will now no longer include the
_index
key. For parent/child inner hits the_index
key is always the same as the the parent search hit.이제 parent/child inner hit는 더 이상
_index
key를 포함하지 않는다. parent/child inner hit에서_index
key는 항상 parent search hit와 동일하다.
Query Profileredit
In the response for profiling queries, the query_type
has been renamed to type
and lucene
has been renamed to description
. These changes have been made so the response format is more friendly to supporting other types of profiling in the future.
profiling query에 대한 response에서 query_type
은 type
으로 이름이 변경되었고 lucene
은 description
으로 이름이 변경되었다. 이러한 변경은 향후 다른 유형의 profiling을 지원함에 있어 response format이 보다 친숙해 지도록 만들었다.
Search preferencesedit
The search preference _only_node
has been removed. The same behavior can be achieved by using _only_nodes
and specifying a single node ID.
search preference _only_node
는 제거되었다. _only_nodes
를 사용하거 단일 node ID를 지정함으로써 동일한 동작이 가능하다.
The search preference _prefer_node
has been superseded by _prefer_nodes
. By specifying a single node, _prefer_nodes
provides the same functionality as _prefer_node
but also supports specifying multiple nodes.
search preference _prefer_node
는 _prefer_nodes
로 대체되었다. 단일 node를 지정함으로써, _prefer_nodes
는 _prefer_node
와 동일한 기능을 제공할 뿐만 아니라 다중 node 지정을 지원한다.
The search preference _shards
accepts a secondary preference, for example _primary
to specify the primary copy of the specified shards. The separator previously used to separate the _shards
portion of the parameter from the secondary preference was ;
. However, this is also an acceptable separator between query string parameters which means that unless the ;
was escaped, the secondary preference was never observed. The separator has been changed to |
and does not need to be escaped.
search preference _shards
는 이차적인 환경 설정을 허용한다. 예를 들어 _primary
는 지정된 shard의 primary 복사본을 지정한다. 이전에 parameter의 _shards
부분을 이차적인 설정과 구분하는 데 사용 된 구분 기호는 ;
이다. 그러나 이는 query string parameter 사이에 허용되는 구분 기호이기도 하다. 즉, ;
가 escape하지 않은 경우 이차적인 설정이 절대로 발견되지 않았다. 구분 기호가 |
로 변경되어 escape할 필요가 없다.
Scoring changesedit
Default similarityedit
The default similarity has been changed to BM25
.
기본 유사성(similarity)가 BM25
로 변경되었다.
DF formulaedit
Document frequency (which is for instance used to compute inverse document frequency - IDF) is now based on the number of documents that have a value for the considered field rather than the total number of documents in the index. This change affects most similarities. See LUCENE-6711
for more information.
document frequency(예를 들어, inverse document frequency - IDF를 계산하는데 사용되는)은 이제 index의 총 document 수가 아닌 고려 대상 field의 값을 가진 document 수를 기반으로 한다. 이 변경은 대부분의 유사성(similarity)에 영향을 미친다. 더 자세한 정보는 LUCENE-6711
를 참고하자.
explain APIedit
The fields
field has been renamed to stored_fields
fields
field가 stored_fields
로 이름이 변경되었다.
'5.X > 8. Breaking Changes' 카테고리의 다른 글
v5.1 Breaking changes (0) | 2017.10.23 |
---|---|
v5.0 Breaking changes (0) | 2017.10.23 |
v5.0-02. Mapping changes (0) | 2017.10.23 |
v5.0-03. Percolator changes (0) | 2017.10.23 |
v5.0-04. Suggester changes (0) | 2017.10.23 |