Ho creato un vecchio spazio per le chiavi nel cluster Cassandra ma ho trovato che la definizione del suo "comparatore" è errata, quindi devo ricreare un nuovo spazio per le chiavi e fare la migrazione dei dati. C'è qualche strumento per fare la migrazione dei dati? o devo programmare con il client Thrift leggere tutti i dati dal vecchio keyspace e scriverli su un nuovo keypace? Qualsiasi suggerimento o frammento di codice è benvenuto!Come eseguire la migrazione dei dati di Cassandra da uno spazio per chiavi a un altro spazio tasti?
Come eseguire la migrazione dei dati di Cassandra da uno spazio per chiavi a un altro spazio tasti?
risposta
Questa è una domanda comune, e penso che sia stata chiesta prima qui. È possibile utilizzare il comando COPY
in C *. Qui troverai maggiori dettagli http://www.datastax.com/dev/blog/ways-to-move-data-tofrom-datastax-enterprise-and-cassandra
Possiamo farlo usando il comando COPY
in cql. Usando il comando COPY
possiamo salvare i dati della tabella nel file .csv e tornare a un tavolo dal file .csv. Ma, l'approccio migliore sarà scrivere un programma per leggere dalla tabella e scriverlo su un'altra tabella perché l'importazione da CSV potrebbe fallire se la tabella contiene tipi di colonne di raccolta come list<text>
, map<text, text>
, set<text>
.
Ad esempio: - Per copiare i dati della tabella da tavolo a .csv: -
COPY keyspace1.table1 (column1, column2) TO 'path/to/file/keyspace1_table1.csv';
per copiare i dati da file CSV a una tabella: -
COPY keyspace2.table1 (column1, column2) FROM 'path/to/file/keyspace1_table1.csv';
consultare Cassandra migration tool
- 1. Cassandra: backup dell'intero spazio chiavi
- 2. Come conoscere le dimensioni di uno spazio chiavi e una famiglia di colonne in Cassandra?
- 3. Che cosa significa "dichiarare indirettamente uno spazio dei nomi all'interno di un altro spazio dei nomi"?
- 4. Eseguire codice incorporato da uno spazio dei nomi diverso
- 5. "template" uno spazio dei nomi
- 6. "usa lo spazio dei nomi" all'interno di un altro spazio dei nomi equivalente ad un alias?
- 7. Spazio dei nomi HTML 5 chiavi di memorizzazione locali
- 8. Rails 3.2 - Come reindirizzare a uno spazio dei nomi?
- 9. Come faccio a fare riferimento a uno spazio dei nomi C++ esterno da uno nidificato?
- 10. Come posso fare esplicitamente riferimento a uno spazio dei nomi che racchiude quando esiste uno spazio dei nomi in linea?
- 11. L'uso del "sistema" di chiavi interne di Cassandra
- 12. come eseguire lo streaming dei dati da una tabella cassandra?
- 13. Risoluzione di uno spazio dei nomi utilizzando la tastiera
- 14. Come verificare se la stringa è uno spazio dei nomi
- 15. Che cos'è uno spazio dei nomi?
- 16. Come esportare i dati dal cluster Cassandra e importarli in un altro
- 17. rimozione di uno spazio da una stringa da awk
- 18. Come faccio a fare riferimento a uno spazio dei nomi da utilizzare nell'immediato o quickwatch?
- 19. Come utilizzare MySQLi all'interno di uno spazio dei nomi
- 20. Come definire gli amici nello spazio dei nomi globale all'interno di un altro spazio dei nomi C++?
- 21. Corrispondenza spazio dei nomi
- 22. Suggerisci un modello dati Cassandra per uno schema esistente
- 23. Spazio dei nomi XSD nello spazio dei nomi C#
- 24. Come verificare l'esistenza di uno spazio dei nomi in php
- 25. Usa XmlSerializer per aggiungere uno spazio dei nomi senza prefisso
- 26. C'è un modo per inserire uno spazio in modalità normale?
- 27. Comune modo Lisp per rinominare uno spazio dei nomi
- 28. Come posso cancellare/drop intero spazio delle chiavi usando PHP: cassandra: la parsimonia
- 29. Come si crea uno spazio dei nomi Python (valore argparse.parse_args)?
- 30. Spazio dei nomi per [DataContract]