- Elasticsearch Blueprints
- Vineeth Mohan
- 350字
- 2021-07-16 13:39:33
Implementation of filters in Elasticsearch
This section sheds some light on the implementation of filters in Elasticsearch. All filters are not the same. We will see how each one differs from another and how we can implement these with Elasticsearch. First, let's see all the three implementation types of filters in Elasticsearch.
We have already showed you the most basic type of usage of a filter in the previous examples. You would have noticed the term constant score or filtered every time we used a filter. These are queries and they wrap the filter inside and apply it against the normal query's result. This is the first type of filter implementation of Elasticsearch.
Note that the filtered/constant score implementation of filters will affect both the results of the query and aggregations; some of the examples are shown as follows:
curl -XPOST 'http://localhost:9200/products/_search?pretty' -d '{ "aggregations": { "department": { "terms": { "field": "color" } } }, "query": { "filtered": { "query": { "match": { "description": "dell" } }, "filter": { "term": { "productType": "Laptop" } } } } }'
The output of the preceding query is as follows:
{ "took" : 250, "timed_out" : false, "_shards" : { "total" : 1, "successful" : 1, "failed" : 0 }, "hits" : { "total" : 2, "max_score" : 0.48288077, "hits" : [ { "_index" : "products", "_type" : "product", "_id" : "-B0YVCS6R1iXOqhHNKRcJQ", "_score" : 0.48288077, "_source":{ "name" : "Dell Vostro 3546 Laptop", "description" : "Dell Vostro 3546 Laptop with Laptop Bag", "dateOfManufactoring" : "2013-05-06", "prize" : 25688, "totalBuy" : 20 , "color" : "Yellow", "productType" : "Laptop", "imageURL" : "www.imageDB.com/urlToDellVostroLaptop.jpg"} }, { "_index" : "products", "_type" : "product", "_id" : "J-4lWEDDQPaondNpQtbFLQ", "_score" : 0.40240064, "_source":{ "name" : "Dell Inspiron Laptop", "description" : "Dell Inspiron 3541 Black 15.6 inch Laptop without Laptop Bag", "dateOfManufactoring" : "2012-04-01", "prize" : 19990, "totalBuy" : 334 , "color" : "Grey", "productType" : "Laptop", "imageURL" : "www.imageDB.com/urlToDellInspironLaptop.jpg"} } ] }, "aggregations" : { "department" : { "buckets" : [ { "key" : "Grey", "doc_count" : 1 }, { "key" : "Yellow", "doc_count" : 1 } ] } } }
- HornetQ Messaging Developer’s Guide
- C及C++程序設計(第4版)
- Learning Python Web Penetration Testing
- Visual C++程序設計教程
- 零基礎PHP學習筆記
- PLC編程及應用實戰
- Getting Started with NativeScript
- Learning ArcGIS for Desktop
- Mastering Unity 2D Game Development(Second Edition)
- Kotlin開發教程(全2冊)
- SwiftUI極簡開發
- 會當凌絕頂:Java開發修行實錄
- 深入理解Kafka:核心設計與實踐原理
- C#網絡編程高級篇之網頁游戲輔助程序設計
- Neo4j權威指南 (圖數據庫技術叢書)