Существует ли какая-либо библиотека в ElasticSearch или другом open-source, которая преобразует логический запрос в запрос ElasticSearch?
С типичными логическими выражениями запроса (AND, OR, "", *,?) Для преобразования в запрос "json" для ElasticSearch и создания "musts", "shoulds" и т. Д. *
Я имею в виду, например, чтобы преобразовать это:
(city = 'New York' AND state = 'NY') AND ((businessName='Java' and businessName='Shop') OR (category='Java' and category = 'Shop'))
в это:
{
"query": {
"match_all": {}
},
"filter": {
"bool": {
"must": [
{
"term": {
"city": "New york"
}
},
{
"term": {
"state": "NY"
}
},
{
"bool": {
"should": [
{
"bool": {
"must": [
{
"term": {
"businessName": "Java"
}
},
{
"term": {
"businessName": "Shop"
}
}
]
}
},
{
"bool": {
"must": [
{
"term": {
"category": "Java"
}
},
{
"term": {
"category": "Shop"
}
}
]
}
}
]
}
}
]
}
}
}