使用node.js批量插入不在Cassandra中工作
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了使用node.js批量插入不在Cassandra中工作相关的知识,希望对你有一定的参考价值。
我试图使用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,那么我得到“批量太大”
答案
您不应该使用批量插入Cassandra(与RDBMS相比) - 这个错误意味着您将数据插入到不同的分区中,并且它会在接收查询的节点上推送额外的负载。只有在插入同一分区时才需要使用批处理 - 在这种情况下,它们将作为单个突变应用。
否则,通过异步执行发送单个插入查询将会快得多。您只需要同时发送太多请求(请参阅此answer)。
你可以在documentation上阅读更多关于批次的好坏使用的信息,然后回答SO:1。
以上是关于使用node.js批量插入不在Cassandra中工作的主要内容,如果未能解决你的问题,请参考以下文章
如何在 node.js 中使用 sqlite3 执行批量插入?
使用 Node.js/Sequelize 进行批量插入时 PostgreSQL 崩溃
如何使用 Sequelize 和 node.js 进行批量插入