CQL: comment faire pour vérifier si l'espace existe?
J'ai besoin de vérifier si certaines clés existe dans la base de données Cassandra. J'ai besoin d'écrire qch comme ceci:
if (keyspace KEYSPACE_NAME not exists) create keyspace KEYSPACE_NAME;
Il y a une commande décrire les clés, mais je peux en quelque sorte en extraire des informations dans cql script?
OriginalL'auteur Yury Pogrebnyak | 2012-03-11
Vous devez vous connecter pour publier un commentaire.
En ce moment, cql grammaire ne fournit pas de
create keyspace if not exists
. Probablement dans l'avenir, ils vont ajouter cette fonctionnalité. L'un se rapprochent de ce, ne serait-ce l'amélioration de la, peut-être qu'ils vont ajouter pour créer des clés trop. hausse les épaulesVous pouvez probablement faire quelque chose de similaire à l'aide de CQL en python ou en tout Cassandra clients. J'ai un simple de créer des clés si n'existe pas écrit en java.
describe*
fonction est plutôt lent. J'espère que vous n'avez pas à utiliser trop souvent.cela a été répondu dans l'année 2012... à moins que, à ce stade, de cette écriture, vous êtes toujours en utilisant les anciennes cassandra, vous devriez vraiment lire la documentation en cours.
OriginalL'auteur Jasonw
De simplement fournir des informations fraîches. Comme de CQL3 tout en créant un espace de clé, vous pouvez ajouter, en cas de déclaration de ce type
OriginalL'auteur fgakk
Selon: https://issues.apache.org/jira/browse/CASSANDRA-2477, comme de Cassandra 1.1, vous pouvez maintenant faire:
accept edit
par erreur. S'il vous plaît ne pas ajouter des trucs qui modifie le contexte des questions à des modifications. LeUSE system;
suggéré, éditer en est un exemple.Le problème est que le système de tables ont tendance à changer (rapidement) au fil du temps. Il peut être un cauchemar à l'appui de ce code, surtout si vous avez d'avoir hérité de soutien pour les différents utilisateurs. En CQL 3.x, l'info est maintenant dans un espace nommé
system_schema
...OriginalL'auteur Tao Starbow