如何在cassandra中编写大量记录(例如2000000条)以获得最佳性能?我在我的项目中使用scala、datastax驱动程序和幻影。我怎样才能在数据库中插入这么多记录?
x6492ojm1#
200万不算多。我只想使用cql副本:https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshcopy.html
2lpgd9682#
最佳性能可通过以下方式实现:使用异步操作;准备好的查询;使用一致性级别 ONE (默认,不更改);使用dcaware/tokenaware负载平衡策略(默认,不更改);将每个连接的请求数从默认的1024增加到更高的数目,比如32k;但是对于异步查询,最大的问题是您可能会推送更多cassandra可能处理的请求,这可能会导致 BusyPoolException -为了防止这种情况,您需要某种计数信号量,它不允许发出许多请求。下面是这样一个实现的例子。
ONE
BusyPoolException
2条答案
按热度按时间x6492ojm1#
200万不算多。我只想使用cql副本:
https://docs.datastax.com/en/cql/3.3/cql/cql_reference/cqlshcopy.html
2lpgd9682#
最佳性能可通过以下方式实现:
使用异步操作;
准备好的查询;
使用一致性级别
ONE
(默认,不更改);使用dcaware/tokenaware负载平衡策略(默认,不更改);
将每个连接的请求数从默认的1024增加到更高的数目,比如32k;
但是对于异步查询,最大的问题是您可能会推送更多cassandra可能处理的请求,这可能会导致
BusyPoolException
-为了防止这种情况,您需要某种计数信号量,它不允许发出许多请求。下面是这样一个实现的例子。