将数据从一个列族db传输到另一个列族

时间:2016-08-02 06:26:12

标签: cassandra datastax-enterprise column-family scylla bigdata

我是Cassandra和Column系列数据库世界的新手。我有一个场景需要将数据从一个Column系列数据库(如 Scylla 数据库)移动到另一个Column系列数据库 Datastax Cassandra 。要传输的数据大小将在百万中。我希望这个数据传输发生在定期间隔时间,比如2分钟。我正在探索sstableloader选项。没有运气了。对于我的场景,还有其他更好的方法吗?任何建议都将受到高度赞赏。

2 个答案:

答案 0 :(得分:2)

(免责声明:我是ScyllaDB员工)

有三种方法可以实现这一目标:

  1. 从客户端双向写入客户端时间戳到两个DB
  2. 使用sstableloader工具将数据从一个数据库迁移到另一个数据库。
  3. 使用['host', 'hardware ethernet', 'fixed-address']命令加载sstables
  4. 您可以在以下文档中阅读有关从Cassandra迁移到Scylla的更多信息,该文档还介绍了如何从客户端执行双重写入(选项-1),使用代码示例+如何使用sstableloader工具(选项-2) )

    http://docs.scylladb.com/procedures/cassandra_to_scylla_migration_process/

    对于nodetool refresh用法,您可以在此处查看:http://docs.scylladb.com/nodetool-commands/refresh/

答案 1 :(得分:0)

一种常见的方法是检测客户端并行写入两个数据库,而不是同步两个数据库。这使得每次写入时两个数据库保持同步。