Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cassandra/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Nosql 卡桑德拉:复制整行_Nosql_Cassandra_Thrift_Hector_Pelops - Fatal编程技术网

Nosql 卡桑德拉:复制整行

Nosql 卡桑德拉:复制整行,nosql,cassandra,thrift,hector,pelops,Nosql,Cassandra,Thrift,Hector,Pelops,是否有推荐的方法使用Java客户机复制/克隆Cassandra列族中的行 我目前正在使用Hector(1.0-2)和Cassandra 1.1.8,但切换到另一个客户端库应该不会有问题 不,通过发送密钥列表来获取所有行(在磁盘上并行进行,这样i/o速度更快)。循环遍历内存中的所有行(无论如何都非常快),然后执行一次写操作,将所有行写回磁盘。(同样,写操作是在所有磁盘上并行完成的,因此磁盘写速度很快) 无论如何,i/o都是您需要担心的,因为内存中的操作通常很快。如果要进行大量复制,则需要切换到ma

是否有推荐的方法使用Java客户机复制/克隆Cassandra列族中的行


我目前正在使用Hector(1.0-2)和Cassandra 1.1.8,但切换到另一个客户端库应该不会有问题

不,通过发送密钥列表来获取所有行(在磁盘上并行进行,这样i/o速度更快)。循环遍历内存中的所有行(无论如何都非常快),然后执行一次写操作,将所有行写回磁盘。(同样,写操作是在所有磁盘上并行完成的,因此磁盘写速度很快)

无论如何,i/o都是您需要担心的,因为内存中的操作通常很快。如果要进行大量复制,则需要切换到map/reduce


如果您在cassandra上使用PlayOrm,只需在要复制的实体上编写一个复制方法,以保持代码干净。

为什么要复制一行?你要复制到哪里?因为任何客户端都可以直接获取一行,所以我不确定您这里有什么问题。我必须在同一列族中复制一行,但使用不同的行键。是的,我知道任何客户端都允许您检索给定rowkey的所有单元格。我想知道是否有一种更“facade”的方法来实现这一点,而不是手动获取所有行并在循环中重新创建行。谢谢,我每次只能复制一行,这样整个流程应该会更快