Допустим, у меня есть объект в корзине test
в моей установке Riak со следующей структурой:
{
"animals": {
"dog": "woof",
"cat: "miaow",
"cow": "moo"
}
}
При выполнении поискового запроса по данному объекту структура результатов поиска следующая:
{
"responseHeader": {
"status": 0,
"QTime": 3,
"params": {
"q": "animals_cow:moo",
"q.op": "or",
"filter":"",
"wt": "json"
}
},
"response": {
"numFound": 1,
"start": 0,
"maxScore": "0.353553",
"docs": [
{
"id": "test",
"index": "test",
"fields": {
"animals_cat": "miaow",
"animals_cow": "moo",
"animals_dog": "woof"
},
"props": {}
}
]
}
}
Как видите, способ хранения объекта, ключи cat
, cow
и dog
вложены в animals
. Однако, когда возвращаются результаты поиска, ни один из ключей не является вложенным и просто разделен _
.
Мой вопрос заключается в следующем: есть ли какой-либо способ, предоставляемый Riak, для «обратного форматирования» поиска и возврата полей объекта в правильном (вложенном) формате? Это становится проблемой при хранении и возврате пользовательских данных, которые могут содержать _
.
Я вижу, что последняя версия Riak (бета-версия) предоставляет схему поиска, но я не вижу, будет ли это ответом на мой вопрос.