Hello大家,
辛苦大家補班我們可以放假了~~~
下禮拜又有連假,
洗壓wa say餒~~
今天我們來到了最終章,type query
跟wildcard query
type query
這個query就過分簡單囉,
看到這個開頭顧名思義他就是在找這個類型的欄位,
包含此類型的Log就會被挑出來~
{
"query": {
"type": {
"value": "[type名稱]"
}
}
}
wildcard query
這個query其實跟regexp query
是差不多的意思,
他的重點可以說是為了降低我們運算的效能!
甚至限制了我們能使用的符號,
僅提供?
跟*
兩個可以使用,
並且警告了我們盡量不要在要查詢的開頭使用,
畢竟這樣用就跟reqexp query
沒什麼兩樣了XD
也就是說它主要是針對詞中間的字元進行查詢,
準確地給予了句首與句尾可以大幅降低需要select出來的結果,
藉此達到節省效能的目的,
有在用Kibana的人多少都遇過下完filter然後就報錯的問題吧哈哈
{
"query": {
"wildcard": {
"[field]": {
"value": "J*m"
}
}
}
}
FYI, 剛好最近有用到 wildcard search。他有新出一個 field type wildcard
, 可以提昇 wildcard 搜尋的速度喔~
https://www.elastic.co/guide/en/elasticsearch/reference/7.9/keyword.html#wildcard-field-type
我自己用起來效能提升蠻多的,如果有需要 wildcard 且開頭要 * 的可以考慮 XD