Very large release
>2,500 Pull Requests
469 commiters
index_analyzer
is removed_analyzer
field is removedPUT my_index
{
"mappings": {
"type_one": {
"properties": {
"name": { "type": "string" } ❶
}
},
"type_two": {
"properties": {
"name": { "type": "string", "analyzer": "english" } ❷
}
}
}
}
PUT my_index
{
"mappings": {
"name": { ❶
"properties": {
"title": { "type": "string" }, ❷
"name": { ❸
"properties": {
"title": { "type": "string" } ❹
}
}
}
}
}
}
What does title
refer to?
What about name.title
?
What about name.name.title
?
PUT my_index
{
"mappings": {
"name": { ❶
"properties": {
"title": { "type": "string" }, ❷
"name": { ❸
"properties": {
"title": { "type": "string" } ❹
}
}
}
}
}
}
"title
" always refers to ❷
"name.title
" always refers to ❹
"name.name.title
" is invalid
PUT my_index
{
"mappings": {
"my_type": {
"properties": {
"title": { "type": "string", "analyzer": "my_analyzer }
}
}
}
}
Before 2.0:
analyzer
- sets index and search analyzerssearch_analyzer
- sets search analyzerindex_analyzer
- sets index analyzerStarting with 2.0:
analyzer
- sets index and search analyzerssearch_analyzer
- overrides search analyzerCheck The Great Mapping Refactoring blog post
{
"filtered" : {
"query": { query definition },
"filter": { filter definition }
}
}
{
"bool" : {
"must": { query definition },
"filter": { filter definition }
}
}
{
"bool" : {
"must": [{
"match_phrase": {
"body": "quick fox" ❶
}, {
"match_phrase": {
"body": "brown dog" ❷
}
}]
}
}
Instead of loading posting list for all documents that contain quick and fox or brown and dog, we only load postings for the documents that contain all 4 terms.
Elasticsearch now binds to local interfaces
Unicast discovery is now default
Makes elasticsearch more secure by default
curl -XPUT "localhost:9200/test/_settings" -d '{
"index" : {
"refresh_interval" : "5"
}
}'
What have I just done here?
sync_id
(1.6)$ mvn clean install
[INFO] Plugin: Analysis: ICU .............................. SUCCESS
[INFO] Plugin: Analysis: Japanese (kuromoji) .............. SUCCESS
[INFO] Plugin: Analysis: Phonetic ......................... SUCCESS
[INFO] Plugin: Analysis: Smart Chinese (smartcn) .......... SUCCESS
[INFO] Plugin: Analysis: Polish (stempel) ................. SUCCESS
[INFO] Plugin: Delete By Query ............................ SUCCESS
[INFO] Plugin: Discovery: Azure ........................... SUCCESS
[INFO] Plugin: Discovery: EC2 ............................. SUCCESS
[INFO] Plugin: Discovery: Google Compute Engine ........... SUCCESS
[INFO] Plugin: Discovery: Multicast ....................... SUCCESS
[INFO] Plugin: Language: Expression ....................... SUCCESS
[INFO] Plugin: Language: Groovy ........................... SUCCESS
[INFO] Plugin: Language: JavaScript ....................... SUCCESS
[INFO] Plugin: Language: Python ........................... SUCCESS
[INFO] Plugin: Mapper: Murmur3 ............................ SUCCESS
[INFO] Plugin: Mapper: Size ............................... SUCCESS
[INFO] Plugin: Repository: Azure .......................... SUCCESS
[INFO] Plugin: Repository: S3 ............................. SUCCESS
[INFO] Plugin: Store: SMB ................................. SUCCESS
$ bin/plugin install elasticsearch/cloud-aws/2.7.2
$ bin/plugin install cloud-aws --url http://p.to/cloud-aws-2.7.2.zip
$ bin/plugin install cloud-aws --url file:p/to/cloud-aws-2.7.2.zip
$ bin/plugin install cloud-aws
$ bin/plugin install http://p.to/cloud-aws-2.7.2.zip
$ bin/plugin install file:p/to/cloud-aws-2.7.2.zip
Geo-centroid aggregation
New pipeline aggregations: stats_bucket, extended_stats_bucket and percentiles_bucket
Allocation and recovery enhancements
Page size max defaults to 10 000
Update only if _source changed
Deprecate count API: size=0
Deprecate scan API: sort by _doc
Query profiler
curl -XGET 'localhost:9200/_search' -d '{
"profile": true,
"query" : {
"match" : { "message" : "search test" }
}
}
Improved geo-point fields
Stricter security for plugins and scripting
Task Management API
Reindex API
...