我在使用dsbulk卸载时收到以下消息。我搞不懂这是什么意思[s0 | 347101951 | 0]发送取消请求时出错。这并不重要(请求最终会在服务器端超时)(heartbeatexception:空)不发送心跳,因为上一个心跳仍在进行中。检查advanced.heartbeat.interval是否不低于advanced.heartbeat.timeout。谢谢
s8vozzvw1#
“发送取消请求时出错”是典型的连续分页查询。协调器似乎因为某种原因陷入麻烦,这就是为什么您也看到心跳失败的原因。dsbulk可能会给集群带来太多负载。您没有具体提到dsbulk的哪个版本,但假设是1.4+,我建议您尝试以下操作(单独或组合):使用禁用连续分页 dsbulk.executor.continuousPaging.enabled = false (这可能会减慢dsbulk的速度)。使用较小的页面大小,例如1000行:如果不使用连续分页: datastax-java-driver.basic.request.page-size = 1000 .如果使用连续分页: datastax-java-driver.advanced.continuous-paging.page-size = 1000 .限制dsbulk以减少集群上的负载通过限制并发请求的数量来实现“软”节流,例如128:dsbulk<1.6: dsbulk.executor.maxInFlight = 128 .dsbulk>=1.6: dsbulk.engine.maxConcurrentQueries = 128 .或通过限制每秒的请求数来“硬”调节,例如500: dsbulk.executor.maxPerSecond = 500 .
dsbulk.executor.continuousPaging.enabled = false
datastax-java-driver.basic.request.page-size = 1000
datastax-java-driver.advanced.continuous-paging.page-size = 1000
dsbulk.executor.maxInFlight = 128
dsbulk.engine.maxConcurrentQueries = 128
dsbulk.executor.maxPerSecond = 500
1条答案
按热度按时间s8vozzvw1#
“发送取消请求时出错”是典型的连续分页查询。协调器似乎因为某种原因陷入麻烦,这就是为什么您也看到心跳失败的原因。dsbulk可能会给集群带来太多负载。
您没有具体提到dsbulk的哪个版本,但假设是1.4+,我建议您尝试以下操作(单独或组合):
使用禁用连续分页
dsbulk.executor.continuousPaging.enabled = false
(这可能会减慢dsbulk的速度)。使用较小的页面大小,例如1000行:
如果不使用连续分页:
datastax-java-driver.basic.request.page-size = 1000
.如果使用连续分页:
datastax-java-driver.advanced.continuous-paging.page-size = 1000
.限制dsbulk以减少集群上的负载
通过限制并发请求的数量来实现“软”节流,例如128:
dsbulk<1.6:
dsbulk.executor.maxInFlight = 128
.dsbulk>=1.6:
dsbulk.engine.maxConcurrentQueries = 128
.或通过限制每秒的请求数来“硬”调节,例如500:
dsbulk.executor.maxPerSecond = 500
.