9
votes

Cassandra Copier des données d'une camarade de colonne à une autre famille de colonnes

Je suis Newbie à Cassandra. J'ai besoin de copier des données d'une camolaramily à une autre famille de colonnes dans la même camary dans Cassandra .say pour Ex Nous avons une camolarisation A1 Nous avons une famille de colonnes A1 dans Keyspace K1, alors j'ai besoin de créer une famille de colonnes A2 dans le même keyspace K1. Heire de copier des données de ColumnFamily A1 à A2 .A1 et A2 ont le même schéma .J'ai lu des documents en ligne dans lesquels vous pouvez utiliser SSTAble Loader pour copier des données d'un groupe Cassandra à un autre. Mais ici, je dois copier des données d'une camarade de colonne à une autre famille de colonnes dans le même clavier.

Des idées sur ci-dessus. Ou est-ce réalisable que je ne suis pas sûr.


0 commentaires

3 Réponses :


10
votes

Selon la version Cassandra, vous pouvez utiliser la commande Copy CQL. Pour utiliser que vous avez besoin d'un client CQL comme celui qui est distribué avec Cassandra.

Tout d'abord, vous devez d'abord copier le fichier ColumnFamily A1 vers un fichier CSV à l'aide de: xxx

et Après cela, copiez le fichier sur la nouvelle famille de colonnes xxx

, il est évident que vous devez modifier le nom des colonnes à vos noms.

Plus d'informations: < / p>

http: // www .Datastax.com / Documentation / Cassandra / 1.2 / Index.html # Cassandra / CQL_Reference / Copy_R.HTML


2 commentaires

S'il vous plaît si les solutions fonctionne pour vous, vérifiez la réponse comme une personne correcte de sorte que d'autres personnes qui ont le même doute peuvent vérifier que c'est la méthode pour aller.


J'essaie de faire la même chose, mais cela me donne une erreur comme une constante de chaîne non valide, les valeurs précédemment insérées toujours présentes .. Ainsi est-il nécessaire de tronquer les données après la copie K1.A1 (colonne1, colonne2, ...) À 'temp.csv'; étape..



0
votes

CQLSH -K MYKEYSPACE -E 'COPY DETABLE (Noms de colonnes) à Stdout' | tête-n -1 | CQLSH -K MYKEYSPACE -E 'COPIE TOUTABLE (NOMMES DE COLONNES) de STDIN'


0 commentaires

2
votes

S'il vous plaît soyez au courant d'une limite de max. 2 millions de lignes lors de l'utilisation de la commande de copie. Voir https://docs.datastax.com/fr/cql /3.3/cql/cql_reference/cqlshcopy.html

REMARQUE: Utilisez uniquement une copie de jeux de données pour importer moins de 2 millions de lignes. Pour importer de grands ensembles de données, utilisez le chargeur de Cassandra Bulk


0 commentaires