je dois faire quelque chose comme ça sur cassandra apache, SELECT * FROM mytable où adresse = "% indonésie%"est-il un truc pour faire des recherches génériques sur apache cassandra?
une idée de le faire sur cassandra?
je dois faire quelque chose comme ça sur cassandra apache, SELECT * FROM mytable où adresse = "% indonésie%"est-il un truc pour faire des recherches génériques sur apache cassandra?
une idée de le faire sur cassandra?
Son support n'est pas pris en charge. Vous devez maintenir vos propres indices.
Je recommande d'utiliser "Supercolumn index" ou d'utiliser un partitionneur de conservation des commandes (par exemple org.apache.cassandra.dht.OrderPreservingPartioner) en conjonction avec des requêtes de plage.
Jetez un oeil à the slides d'un excellent discours sur cassandra et l'indice de Benjamin Noir
Juste pour ajouter à ce que Schildmeijer a dit, à moins que vous faites beaucoup de travail supplémentaire, vous allez probablement pas pour obtenir l'équivalent d'une recherche générique "% indonesia%" dans Cassandra. Beaucoup plus facile sera "indonesia%" ou "% indonesia" (ou "aisenodni%") en utilisant une requête de plage sur un index spécial que vous avez créé pour des recherches comme celle-ci. Les diapositives que Schildmeijer relie pour décrire comment mettre en place ce type de recherche à un haut niveau. Si vous recherchez une recherche en texte intégral dans des blocs de texte stockés dans Cassandra, vous pouvez rechercher quelque chose comme Lucene pour conserver un index qui peut être utilisé pour effectuer certains types de recherches sur des chaînes dans le texte . Je ne suis pas trop familier avec les détails, mais voici deux liens qui pourraient être utiles ici:
Je souhaite que c'était en quelque sorte possible de faire avec les noms de colonnes ... espérons que cela sera rendu possible dans les futures versions –