daily pastebin goal
51%
SHARE
TWEET

Untitled

a guest Mar 20th, 2019 51 Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. ### distinct
  2.  
  3. ```js
  4. {
  5.   "size": 0,
  6.   "aggs": {
  7.     "uniq_country": {
  8.       "terms": {
  9.         "field": "alarmData.alarmType"
  10.       }
  11.     }
  12.   }
  13. }
  14. ```
  15.  
  16. ### group by where
  17.  
  18. ```js
  19. {
  20.     "size": 0,
  21.     "query": {
  22.         "bool": {
  23.             "must": [
  24.                 {
  25.                     "range": {
  26.                         "dxpGpsData.gpsTime": {
  27.                             "lte": $gpsTime
  28.                         }
  29.                     }
  30.                 },
  31.                 {
  32.                     "range": {
  33.                         "dxpGpsData.latitude": {
  34.                             "gte": 1
  35.                         }
  36.                     }
  37.                 },
  38.                 {
  39.                     "range": {
  40.                         "dxpGpsData.latitude": {
  41.                             "gte": 1
  42.                         }
  43.                     }
  44.                 }
  45.             ],
  46.             "filter": [
  47.                 {
  48.                     "terms": {
  49.                         "imei.keyword": $imei
  50.                     }
  51.                 }
  52.             ]
  53.         }
  54.     },
  55.     "aggregations": {
  56.         "by_imei": {
  57.             "terms": {
  58.                 "size": 2147483647,
  59.                 "field": "imei.keyword"
  60.             },
  61.             "aggregations": {
  62.                 "online_time": {
  63.                     "max": {
  64.                         "field": "dxpGpsData.gpsTime"
  65.                     }
  66.                 },
  67.                 "detail": {
  68.                     "top_hits": {
  69.                         "size": 1,
  70.                         "from": 0,
  71.                         "_source": {
  72.                             "excludes": [],
  73.                             "includes": [
  74.                                 "dxpGpsData.latitude",
  75.                                 "dxpGpsData.longitude",
  76.                                 "dxpGpsData.gpsTime"
  77.                             ]
  78.                         },
  79.                         "sort": [
  80.                             {
  81.                                 "dxpGpsData.gpsTime": {
  82.                                     "order": "desc"
  83.                                 }
  84.                             }
  85.                         ]
  86.                     }
  87.                 }
  88.             }
  89.         }
  90.     }
  91. }
  92. ```
  93.  
  94. ### select where
  95. ```js
  96. {
  97.     "_source": {
  98.         "includes": [
  99.             "imei",
  100.             "dxpGpsData.gpsTime",
  101.             "dxpGpsData.speed",
  102.             "dxpGpsData.longitude",
  103.             "dxpGpsData.latitude",
  104.             "dxpFullProtoData.alarmType"
  105.         ],
  106.         "excludes": []
  107.     },
  108.     "from": 0,
  109.     "size": 20,
  110.     "min_score": 1,
  111.     "query": {
  112.         "function_score": {
  113.             "query": {
  114.                 "bool": {
  115.                     "must": [
  116.                         {
  117.                             "range": {
  118.                                 "dxpFullProtoData.alarmType": {
  119.                                     "gt": 0
  120.                                 }
  121.                             }
  122.                         },
  123.                         {
  124.                             "range": {
  125.                                 "dxpGpsData.latitude": {
  126.                                     "gte": 1
  127.                                 }
  128.                             }
  129.                         },
  130.                         {
  131.                             "range": {
  132.                                 "dxpGpsData.latitude": {
  133.                                     "gte": 1
  134.                                 }
  135.                             }
  136.                         },
  137.                         {
  138.                             "range": {
  139.                                 "dxpGpsData.speed": {
  140.                                     "lte": 200
  141.                                 }
  142.                             }
  143.                         },
  144.                         {
  145.                             "range": {
  146.                                 "dxpGpsData.gpsTime": {
  147.                                     "gte": $startTime,
  148.                                     "lte": $endTime
  149.                                 }
  150.                             }
  151.                         }
  152.  
  153.                     ],
  154.                     "filter": [
  155.                         {
  156.                             "terms": {
  157.                                 "imei": $imei
  158.                             }
  159.                         }
  160.                     ]
  161.                 }
  162.             }
  163.         }
  164.     },
  165.     "sort": [
  166.         {
  167.             "dxpGpsData.gpsTime": "desc"
  168.         }
  169.     ]
  170. }
  171. ```
  172.  
  173.  
  174. ### too_many_clauses: maxClauseCount is set to 1024
  175.  
  176. es的in查询,in中id大于1024个,导致es报错,es默认支持元素数量为1024个。
  177. 编辑elasticsearch.yml,添加如下配置:
  178. indices.query.bool.max_clause_count: 10240
  179.  
  180. **或者把must中的terms移至filter中**
  181.  
  182. 必须过滤条件建议优先使用filter,只有该条件要参与score计算时才用must!
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top