0

我坚持通过 cqlengine 插入/更新多行/大约 800 行/到 cassandra 表。我不想在 python 中使用循环。我搜索并找到批量查询。但不能使用它。

请帮助我进行批量查询或提供其他有效方式在 cassandra 中插入多行。

谢谢你。

https://cqlengine.readthedocs.io/en/latest/topics/queryset.html#batch-queries

4

1 回答 1

1

CQL 批处理不是一种优化——它们不会使您的查询运行得更快。事实上,如果你有大批量,它们会做相反的事情,因为它们会使请求的协调器过载,并且查询最终会运行得更慢。

CQL 批处理旨在实现原子性,因此要么 (a) 批处理中的所有语句都成功执行,要么 (b) 根本不执行。

在 Cassandra 中,如果发出多个异步写入而不是单个批处理,则可以实现更高的吞吐量。更多的应用程序实例(客户端)性能更好,因为单个客户端应用程序可能会成为流量瓶颈。

如果您的目标是批量加载数据,我建议您改用DataStax Bulk Loader (DSBulk) 之类的工具。DSBulk 是一款免费的开源软件,允许您将 CSV 或 JSON 格式的数据批量加载到 Cassandra 集群。

以下是一些可帮助您入门的资源:

于 2022-03-02T05:48:15.033 回答