Prenons ce document par exemple:Comment est-ce que j'interrogerais des clés de sorte qu'elles correspondent partiellement?
{
"id":1
"planet":"earth-616"
"data":[
["wolverine","mutant"],
["Storm","mutant"],
["Mark Zuckerberg","human"]]
}
J'ai créé un index de recherche pour indexer le nom et le type, par exemple si recherché pour nom: wolverine ou le type: mutant j'obtenir le document qui l'a. Mais selon mes besoins Je ne veux pas tout le document, je ne veux que ["wolverine","mutant"]
J'ai créé une vue que les produits comme:
{
"id":1,
"key":"earth-616",
"value":["earth-616","wolverine","mutant"]
}
J'ai découvert que je peux interroger uniquement avec des clés. (Est-il possible de créer des index de recherche sur les vues ?, Impossible de trouver quoi que ce soit dans la documentation) Ou devrais-je créer des vues avec celle ci-dessus comme ceci:
{
"id":1,
"key":"wolverine",
"value":["earth-616","wolverine","mutant"]
}
Et
{
"id":,
"key":"mutant"
"value":["earth-616","wolverine","mutant"]
}
De cette façon, je peux interroger avec les touches que je veux, mais je ne peux pas sembler correspondre partiellement les clés (ai-je manqué quelque chose?)
Pourriez-vous définir ce qui est un indice de recherche? Faites-vous référence à Lucene Text search? En outre, avec votre structure de données actuelle, le type de requête que vous souhaitez obtenir sera difficile. Peut-être quelque chose comme ceci: people: [{"name": "Wolverine", "race": "mutant"}] serait plus propre et plus facile à interroger –
@ AlexisCôté Oui, je fais référence à Lucene Text Search. "people: [{" name ":" wolverine "," race ":" mutant "}]" est beaucoup plus propre Je suis d'accord, mais c'est ce que je ** dois travailler avec. La meilleure solution que j'ai trouvée jusqu'ici dans ce but serait d'indexer chaque sous-chaîne d'une clé. Est-ce une mauvaise idée? Je suis très nouveau à ce sujet. –