【发布时间】:2014-12-29 02:35:21
【问题描述】:
在两节点集群中运行 cassandra(将来会扩展)。
我想加载几百万行负载测试数据。
我有一个可以执行此操作的 python 脚本。
我应该同时在两个节点上运行脚本吗?或者我应该只做一个并让 Cassandra 复制?
(集群在不同区域的 AWS EC2 服务器上)。
【问题讨论】:
标签: cassandra load-testing bulkinsert
在两节点集群中运行 cassandra(将来会扩展)。
我想加载几百万行负载测试数据。
我有一个可以执行此操作的 python 脚本。
我应该同时在两个节点上运行脚本吗?或者我应该只做一个并让 Cassandra 复制?
(集群在不同区域的 AWS EC2 服务器上)。
【问题讨论】:
标签: cassandra load-testing bulkinsert
如果集群中有 2 个节点,则无需在两个节点上都插入数据。 Cassandra 根据分区键和复制因子在节点间分发数据。
了解 cassandra 中数据分布的一个很好的起点是here:
【讨论】:
我有一个可以执行此操作的 python 脚本。
我建议您查看 DataStax 的 Python Cassandra 驱动程序(例如 http://datastax.github.io/python-driver/getting_started.html#connecting-to-cassandra),并按照他们为实际写入提供的说明进行操作。该驱动程序中有一些异步方法派上用场。
就实际写入本身以及是否应该写入两个节点而言,不,不应该。这是告密者和八卦者的工作。
假设您使用的是 Datastax Community Edition(顺便说一句,您应该),您应该利用 EC2 Multiregion Snitch (http://www.datastax.com/documentation/cassandra/2.0/cassandra/architecture/architectureSnitchEC2MultiRegion_c.html)。安装和使用非常简单。
【讨论】: