From 4effb7d525996f4b0b8bde332f7f1476214de238 Mon Sep 17 00:00:00 2001 From: Zachary Tong Date: Mon, 5 Jan 2015 17:50:32 -0500 Subject: [PATCH] Reconfigure histogram example to be simpler, more practical --- 300_Aggregations/30_histogram.asciidoc | 81 +++++++++++--------- images/elas_28in01.png | Bin 29761 -> 32172 bytes snippets/300_Aggregations/30_histogram.json | 9 +-- 3 files changed, 50 insertions(+), 40 deletions(-) diff --git a/300_Aggregations/30_histogram.asciidoc b/300_Aggregations/30_histogram.asciidoc index 266b0f481..206605761 100644 --- a/300_Aggregations/30_histogram.asciidoc +++ b/300_Aggregations/30_histogram.asciidoc @@ -12,9 +12,11 @@ undoubtedly had a few bar charts in it. The histogram works by specifying an int prices, you might specify an interval of 20,000. This would create a new bucket every $20,000. Documents are then sorted into buckets. -For our dashboard, we want a bar chart of car sale prices, but we -also want to know the top-selling make per price range. This is easily accomplished -using a `terms` bucket ((("terms bucket", "nested in a histogram bucket")))((("buckets", "nested in other buckets", "terms bucket nested in histogram bucket")))nested inside the `histogram`: +For our dashboard, we want to know how many cars sold in each price range. We +would also like to know the total revenue generated by that price bracket. This is +calculated by summing the price of each car sold in that interval. + +To do this, we use a `histogram` and a nested `sum` metric: [source,js] -------------------------------------------------- @@ -22,17 +24,16 @@ GET /cars/transactions/_search?search_type=count { "aggs":{ "price":{ - "histogram":{ - "field":"price", <1> - "interval":20000 <1> + "histogram":{ <1> + "field": "price", + "interval": 20000 }, "aggs":{ - "make":{ - "terms":{ - "field":"make", <2> - "size":1 + "revenue": { + "sum": { <2> + "field" : "price" } - } + } } } } @@ -42,19 +43,20 @@ GET /cars/transactions/_search?search_type=count <1> The `histogram` bucket requires two parameters: a numeric field, and an interval that defines the bucket size. // Mention use of "size" to get back just the top result? -<2> A `terms` bucket is nested inside each price range, which will show us the -top make per price range. +<2> A `sum` metric is nested inside each price range, which will show us the +total revenue for that bracket As you can see, our query is built around the `price` aggregation, which contains a `histogram` bucket. This bucket requires a numeric field to calculate buckets on, and an interval size. The interval defines how "wide" each bucket is. An interval of 20000 means we will have the ranges `[0-19999, 20000-39999, ...]`. -Next, we define a nested bucket inside the histogram. This is a `terms` bucket -over the `make` field. There is also a new `size` parameter, which defines the number of terms we want to generate. A `size` of `1` means we want only the top make -for each price range (the make that has the highest doc count). +Next, we define a nested metric inside the histogram. This is a `sum` metric, which +will sum up the `price` field from each document landing in that price range. +This gives us the revenue for each price range, so we can see if our business +makes more money from commodity or luxury cars. -And here is the response (truncated): +And here is the response: [source,js] -------------------------------------------------- @@ -66,40 +68,49 @@ And here is the response (truncated): { "key": 0, "doc_count": 3, - "make": { - "buckets": [ - { - "key": "honda", - "doc_count": 1 - } - ] + "revenue": { + "value": 37000 } }, { "key": 20000, "doc_count": 4, - "make": { - "buckets": [ - { - "key": "ford", - "doc_count": 2 - } - ] + "revenue": { + "value": 95000 } }, -... + { + "key": 80000, + "doc_count": 1, + "revenue": { + "value": 80000 + } + } + ] + } + } } -------------------------------------------------- The response is fairly self-explanatory, but it should be noted that the histogram keys correspond to the lower boundary of the interval. The key `0` -means `0-20,000`, the key `20000` means `20,000-40,000`, and so forth. +means `0-19,999`, the key `20000` means `20,000-39,999`, and so forth. + +[NOTE] +.Empty buckets are missing! +===================== +You'll notice that empty intervals, such as $40,000-60,000, is missing in the +response. The `histogram` bucket omits these by default, since it could lead +to the unintended generation of potentially enormous output. + +We'll discuss how to include empty buckets in the next section, <<_returning_empty_buckets>> +===================== Graphically, you could represent the preceding data in the histogram shown in <>: [[barcharts-histo1]] -.Top cars in each price range -image::images/elas_28in01.png["Top cars in each price range"] +.Sales and Revenue per price bracket +image::images/elas_28in01.png["Sales and Revenue per price bracket"] Of course, you can build bar charts with any aggregation that emits categories and statistics, not just the `histogram` bucket. Let's build a bar chart of diff --git a/images/elas_28in01.png b/images/elas_28in01.png index 21a42b462468f02190828992fdab9259191a64a4..232dde3de8fdf818423d342d7435edf40c405df9 100644 GIT binary patch literal 32172 zcmce+b9iM>w=NoVY}>YN+g8W6ZFJI6haIz%bZpzUZJQnEtn}~Odw=_${ha&HxpzJD zk2U8SqefNDs&~BOtrejtF98RQ4GjbY1Scgastg1K!V3fh><7?Qd^uM}Hbgh)KZxXQ;E=CKfuvhGkD_8HtIJw}AI;-%LV8Vn$@$CA*;XIzf&GgN zBM?A+@a*0%;!hz$KA=Ff`3j_L*g(2GiID?h5;Iq%eP^nYh&yQ5@S1}jL-xC07=?;$A1l8ULEd-tJG!#22E>Jw;&Ky1?jt`YMKmp7qZXgZL1KRimZXC6 z*7i0fg@|g-FhcFnY;UkPAl3@6VSeFzj`jvI9?KvqJdS-9#p=-nkq`HORF0x0I)DHw zh=p=o_=qN>R1IIaR|?Lta4yOTII*a#kUekCzygyLp?Hohd6u|!{QO<+6w@G zfk;gefgOY{mxXn43dOt;Jv9o}wIMVMY2u^qiyH_uGbd!4`a!P0m^;8Z#ThB|^h;nq z|{J@|K8JCk97isW=38su0&%WcAHG3v(Fe2FC6I#>Hzo0y!h|N`Tq7 z!fZ^e7XD5m1=$My-&ArPz&qc6YYqzdUW%z?S~y{Hj43kq2eIoDnU8%Nvf$B{weUd? zKx6zOE{NIJwT>eiV1PKsqQ?VQ=~tfu1f3HEv<0!}C-Z*ipl1*DO+w-aB!8g8Z~618g7DCr`OX=A-~E6OFY7a}Si~#*4Iw~*BLt3I6F z=qoc1l(stpsH?y-k!^V}p${=LsMXgTcU2GAkKJB@2Zu|?x2DD>iYBEsmMxHh#q!q& z7YRk`dxYT5fB6JQO`&osBB|4>zj0zU;x{%CRq zBt!`PD@S2O5YGaX&j6M-fX)Hr!hk2rix4unY*!F@31&tJof8_m3(5gHF<9CGOBb|0 z2WbuLPnXCPL{`9|gIyaaK{sp)=qO|mA|i87*cG90I45x=B}v*4dLL%BFfO8d9}JXW zPaGyG)bckIqUIr}Jy_*XU9pq6)*;Ye1fF4SLWMuwYKK!mHw5;hpGd7 zGw5Pm7obBG*VIoxhR4WCsUH9WSgK3 zF+3tg_^8X6%Z^L>k}3H%US;8Bj=#`H zW?-NpXfS#(p9rD|v4Fp%3 zPl&FV9Z4rK17i)-2um8vGxLQZtyxj7@SDtNIDtJQKDoRS_DmUEvPc&vVpRWGRw04GTSm^8%%a3b`f@h z245RA8$6rKrR%f!vxBqlGp)0q%ic@ooSIy!T)Lb)T;I7a9HN|zILSE2xkR{Xxhfsu z9qApR9FCoz9P#!_4zRb<4i9!0b{}>p_A0jhdfNL)#*D{MdJ=k7MsMRWMrnGjCvgV7 z;~RtB(_%9f(kH($BwS)|LJEv9^j>y#Ms{X&ru(Z4Dt4(7DsMFjrgzm57Ug6aR2g&_ zBy1%jrca^g66X5kn&l$&;PyQCy=UR zQj$~hpZ1wnpT=S$VzRC#t&TJz*>TxP+X>tm?BnS_BqJr$C4-lola`fsl1Y;xm;RdQ zLnM|wle9vmM$SeV{c|A^K8`-=B0

&IH8tyQ!C{l9uZ-;j;4bdvsH@Hcl@`vMp{h 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 diff --git a/snippets/300_Aggregations/30_histogram.json b/snippets/300_Aggregations/30_histogram.json index 3962c3922..4d8d7b50f 100644 --- a/snippets/300_Aggregations/30_histogram.json +++ b/snippets/300_Aggregations/30_histogram.json @@ -9,12 +9,11 @@ GET /cars/transactions/_search?search_type=count "interval":20000 }, "aggs":{ - "make":{ - "terms":{ - "field":"make", - "size":1 + "revenue": { + "sum": { + "field" : "price" } - } + } } } }