![](/img/trans.png)
[英]How to copy/migrate data from one keyspace to another in cassandra?
[英]How to do data migration of Cassandra from one keyspace to another keyspace?
我在Cassandra集群中創建了一個舊的密鑰空間,但發現其“比較器”的定義是錯誤的,所以我必須重新創建一個新的密鑰空間並進行數據遷移。 有沒有工具可以進行數據遷移? 或者我必須使用Thrift客戶端編程從舊密鑰空間讀取所有數據並將其寫入新的密鑰空間? 歡迎任何建議或代碼片段!
這是一個共同的問題,我想在此之前已經提出過這個問題。 您可以在C *中使用COPY
命令。 您可以在這里找到更多詳細信息http://www.datastax.com/dev/blog/ways-to-move-data-tofrom-datastax-enterprise-and-cassandra
我們可以在cql中使用COPY
命令來完成它。 使用COPY
命令,我們可以將表數據保存到.csv文件並從.csv文件返回到表。 但是,更好的方法是編寫一個程序來從表中讀取並將其寫入另一個表,因為如果表包含集合列類型,如list<text>
, map<text, text>
, set<text>
,則從csv導入可能會失敗set<text>
。
例如: - 將表數據從表復制到.csv文件: -
COPY keyspace1.table1 (column1, column2) TO 'path/to/file/keyspace1_table1.csv';
將csv數據從文件復制到表: -
COPY keyspace2.table1 (column1, column2) FROM 'path/to/file/keyspace1_table1.csv';
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.