运行 cassandra 并行重建

Run cassandra rebuild in parallel

我是 运行 nodetool 重建,在一个节点上有一个 table 有 400 个 sstables,从那里发生流式传输。一次只流式传输一个文件,有什么方法可以并行化此操作,以便可以并行流式传输多个 sstables 而不是顺序文件流式传输。

Mode: NORMAL
Rebuild f151a460-9bdd-11ec-82be-c9782f58af4d
    /10.1.1.1
        Sending 362 files, 856967791730 bytes total. Already sent 217 files, 516836789972 bytes total
            /CassandraData/data/keyspace/tableA-bcb7f6b460bf3dfabeea64cf6b01c3fe/mc-204328-big-Data.db 8932078253/35051713491 bytes(25%) sent to idx:0/10.2.2.2

尝试通过增加(即从 200mb 增加一倍,即 400mb)流式处理吞吐量,但它没有多大帮助,即它花费相同的时间来流式传输相同数量的数据,同时增加了吞吐量值。吞吐量没有帮助,正在寻找一种在 table 级别并行化流操作的方法。

无法增加流式处理线程的数量。无论如何,有几个因素会影响流媒体的速度,而不仅仅是网络吞吐量。磁盘类型和数据模型对 JVM 将数据序列化为流的速度以及清理堆 (GC) 的速度有重大影响。

我看到您已经尝试增加流式传输吞吐量。请注意,您需要为发送节点和接收节点(实际上是所有节点)增加它,否则,流的速度只会与最慢的节点一样快。干杯!