使用node.js批量插入不在Cassandra中工作

问题描述 投票:0回答:1

我试图使用batch()方法插入超过100条记录。

client.batch(batchQuery, { prepare: true }, function (err, result) {
    if (err) {
        res.status(404).json({ msg: err });
    } else {
        res.json([result.rows][0]);
    }
});

batchQuery有超过100个插入查询。如果记录小于7,它正在工作。如果它超过10,那么我得到“批量太大”

node.js cassandra cassandra-node-driver
1个回答
1
投票

您不应该使用批量插入Cassandra(与RDBMS相比) - 这个错误意味着您将数据插入到不同的分区中,并且它会在接收查询的节点上推送额外的负载。只有在插入同一分区时才需要使用批处理 - 在这种情况下,它们将作为单个突变应用。

否则,通过异步执行发送单个插入查询将会快得多。您只需要同时发送太多请求(请参阅此answer)。

你可以在documentation上阅读更多关于批次的好坏使用的信息,然后回答SO:1

© www.soinside.com 2019 - 2024. All rights reserved.