ElasticSearch之——巢狀聚合,下鑽分析,聚合分析
1、第一個分析需求
計算每個tag下的商品數量
GET /ecommerce/product/_search
{
"aggs": {
"group_by_tags": {
"terms": { "field": "tags" }
}
}
}
將文字field的fielddata屬性設定為truePUT /ecommerce/_mapping/product
{
"properties": {
"tags": {
"type": "text",
"fielddata": true
}
}
}
GET /ecommerce/product/_search { "size": 0, "aggs": { "all_tags": { "terms": { "field": "tags" } } } }
2、第二個聚合分析的需求
對名稱中包含yagao的商品,計算每個tag下的商品數量
GET /ecommerce/product/_search
{
"size": 0,
"query": {
"match": {
"name": "yagao"
}
},
"aggs": {
"all_tags": {
"terms": {
"field": "tags"
}
}
}
}
3、第三個聚合分析的需求
先分組,再算每組的平均值,計算每個tag下的商品的平均價格
GET /ecommerce/product/_search { "size": 0, "aggs" : { "group_by_tags" : { "terms" : { "field" : "tags" }, "aggs" : { "avg_price" : { "avg" : { "field" : "price" } } } } } }
4、第四個資料分析需求
計算每個tag下的商品的平均價格,並且按照平均價格降序排序
GET /ecommerce/product/_search { "size": 0, "aggs" : { "all_tags" : { "terms" : { "field" : "tags", "order": { "avg_price": "desc" } }, "aggs" : { "avg_price" : { "avg" : { "field" : "price" } } } } } }
5、第五個資料分析需求
按照指定的價格範圍區間進行分組,然後在每組內再按照tag進行分組,最後再計算每組的平均價格
GET /ecommerce/product/_search
{
"size": 0,
"aggs": {
"group_by_price": {
"range": {
"field": "price",
"ranges": [
{
"from": 0,
"to": 20
},
{
"from": 20,
"to": 40
},
{
"from": 40,
"to": 50
}
]
},
"aggs": {
"group_by_tags": {
"terms": {
"field": "tags"
},
"aggs": {
"average_price": {
"avg": {
"field": "price"
}
}
}
}
}
}
}
}
相關推薦
ElasticSearch之——巢狀聚合,下鑽分析,聚合分析
1、第一個分析需求計算每個tag下的商品數量GET /ecommerce/product/_search { "aggs": { "group_by_tags": { "terms": { "field": "tags" } } } }將文
ElasticSearch教程——kibana巢狀聚合,下鑽分析,聚合分析
兩個核心概念:bucket和metric city name 北京 小李 北京 小王 上海 小張 上海 小麗 上海 小陳 基於city劃分buckets 劃分出來兩個bucket,一個是北京bucket,一個是上海bucket 北京bucket:包含了2個人,小
快速入門案例實戰之電商網站商品管理:巢狀聚合,下鑽分析,聚合分析
第一個分析需求:計算每個tag下的商品數量 GET /ecommerce/product/_search { "aggs": { "group_by_tags": { "terms": { "field": "tags" } } } }
07.巢狀聚合,下鑽分析,聚合分析
聚合分析(group by + avg + sort) 第一個分析需求:計算每個tag下的商品數量 GET /ecommerce/product/_search { “aggs”: { “group_by_tags”: { “terms”: { “field”: “tags” } } } }
Kotlin程式設計之巢狀類,內部類,匿名內部類
Kotlin程式設計相關知識點介紹: 和Java程式設計類似,在Kotlin程式設計也有巢狀類和內部類,及匿名內部類。 開始編寫一個案例,來了解這三者,程式碼如下: package com
迴圈取多層巢狀的JsonArray中的值,最後一層可以是JsonArray也可以是jsonObject
/** * @param jsonStr json字串 * @param key 具體取值上一級對應的所有的 Key * @param value 具體取值對應的所有的key * @param type type 是最後一個key對應的是array還是jsonObject
block巢狀的資料繫結問題,block時序問題
做過幾個專案以後,會用到比較深層次的block,開始學習階段block都是通過mvc方式寫,不會涉及到block時序問題,也不會有資料來源繫結問題,因為controller不會被釋放,你的資料都寫在controller層。邁向大神的階段就需要多用block封裝view,資料只是在controller
mybatis之巢狀查詢association和collection
Mybatis association是用於一對一和多對一,而collection是用於一對多的關係 一. Association 1. 巢狀查詢實現association一對一 public class Card implements Serializable{ private In
java遺珠之巢狀類
使用內部類的原因 1.合乎只在一個地方備用的邏輯: 如果一個類僅僅被一個別的類使用,那麼把這個類嵌入到使用它的類中非常符合邏輯,巢狀這樣的幫助類是的package變得簡潔。 2.有益於封裝: 如果兩個類A和B,如果B需要訪問A定義為private的成員,那
巢狀路由之間的傳值,go(-1)並同時傳參
巢狀路由子路由向父路由傳值方式就是父子元件之間的傳值方式,即使用emit。 如果是想看go(-1)的同時傳值,直接到文末 假設現在有路由如下: A是父路由,BC是子路由 { path: '/A', name: 'A', compone
fastjson-1.2.21 使用例項,複雜巢狀Java物件轉json物件,複雜巢狀json物件轉對應Java物件的程式碼實現
理論我就不多廢話了,直接看程式碼吧。使用的是fastjson-1.2.21版本的來實現下面程式碼的。 主要是實現複雜的巢狀的Java物件,也就是物件巢狀物件的複雜物件,轉換成json字串。然後就是反過來,把複雜的json字串轉換成對應的巢狀的Java物件。 先上工具類。如下
MySQL查詢優化之巢狀連線
原文地址:https://dev.mysql.com/doc/refman/5.7/en/nested-join-optimization.html 譯文: 8.2.1.7巢狀連線優化 連線的語法允許巢狀連線。下面討論中涉及到的連線語法可以參考Section
圖解Oracle 表連線優化之巢狀迴圈連線(Nested loops join)
當一條SQL語句引用多張表連線時,Oracle的查詢優化器(Optimizer)不僅要確定每張表的訪問路徑,而且需要確定這些表的連線順序和連線方法。查詢優化器的目標是通過儘早地過濾不需要的資料,減少需要處理的資料量。 Oracle的SQL優化器(Optimizer)在執行
Recyclerview列表,item巢狀橫向Gridview 解決滑動衝突,資料載入問題
recyclerview列表資料,每個item 巢狀橫向滑動GridView的問題, 這幾天新需求,列表載入使用者關注的人物,一頁15條資料,,,,,,。然後每個人物 都有自己的一系列作品,要在人物頭像之後 ,放一個可以橫著滑動,又支援分頁載入的橫向列表。 剛開始覺得挺容
d3之元件的運用(單選框,下拉列表,滑動軸,多選)
目錄 目錄 單選框 下拉列表 滑動軸 多選框 單選框 1.前端 <form name="myForm" action="" method="" style="posit
XRecyclerView巢狀recyclerview佈局下拉卡頓問題
android:descendantFocusability="blocksDescendants" 解決方案是從github上另一個下拉重新整理的recyclerview控制元件裡找到的,這裡貼一下連結 https://github.com/jdsjlzx/LRecyc
02_Weblogic課程之安裝篇:RedHat下JDK安裝,RedHat下Weblogic安裝,目錄結構,環境變數設定
1Weblogic的安裝方式有三種: 一、GUI方式安裝(java –jar wls1035_generic.jar [-mode=gui])這是預設的 二、Consol
Java之巢狀介面詳解(附原始碼)
package com.mufeng.theninthchapter; class A { interface B { void f(); } public class BImp implements B { @Override public void f() { // TODO
Angular-ui-router進階二之巢狀檢視與多個檢視組合使用
ui-router巢狀檢視 巢狀檢視是ui-router不同於ng-route的最大區別之一,也是ui-router受到大眾青睞的主要原因。接下來跟小編直接上手做一下簡單的巢狀檢視(Nested Views)。 上面是本次示例的佈局,有導航欄、側邊欄、檢視1及其子孫檢
python 踩坑系列之巢狀列表建立
1.初始化列表及修改 初始化列表有很多方法,其中之一可以通過*來初始化: a = [[]]*3 print a >>> [[], [], []] 通過這個方法獲取了一個包含三個空list的巢狀列表,下面對這個列表進行修改: a[0].appe