- 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 } ] } } }
- ServiceNow Application Development
- Learning Spring 5.0
- Apache Spark 2.x Machine Learning Cookbook
- 看透JavaScript:原理、方法與實踐
- JavaScript+jQuery開發實戰
- Mastering Drupal 8 Views
- Visual FoxPro程序設計習題集及實驗指導(第四版)
- OpenGL Data Visualization Cookbook
- 好好學Java:從零基礎到項目實戰
- Android群英傳
- 并行編程方法與優化實踐
- Mastering HTML5 Forms
- 超簡單:用Python讓Excel飛起來(實戰150例)
- Python應用與實戰
- Using Yocto Project with BeagleBone Black