当前位置: 首页 > 知识库问答 >
问题:

Cassandra-“批次太大”异常

马银龙
2023-03-14

我们使用卡桑德拉批处理语句来持久化数据。我们收到“批处理太大”异常。我了解批大小中的数据超过了批大小失败阈值。我需要帮助来计算批次的大小。有没有办法找出批量传递的数据的确切大小?

共有1个答案

锺星腾
2023-03-14

对于最终用户来说,没有一种简单的方法来计算批次的大小,因为它是基于批次中所有突变的序列化大小。

一个复杂的问题是,批量突变可以是插入更新删除列,行或分区的任意组合的任意组合。

如果您还没有意识到,与在RDBMS中使用批处理相比,CQL批处理并不是一种优化,正如我在https://community.datastax.com/questions/5246/.CQL批处理只能用于在非规范化表之间保持相关分区的同步,正如我在https://community.datastax.com/articles/2744/.干杯

 类似资料:
  • 我有一个必须添加到采购订单的产品列表。采购订单具有序列号,添加产品后,应更改其状态以指示这些产品已出货。 1 个采购订单中处理的典型产品数为 500。 在DB上-我有2张桌子- 各方面的建议告诉我应该使用多个异步查询。然而,我关心的是整个操作的原子性。鉴于我的要求,请建议什么是最好的前进方式。 先谢谢你。

  • 你说的批处理语句在卡桑德拉中是原子的是什么意思?确切地说,文档在本质上有点令人困惑。这是否意味着查询在群集中的节点之间是原子的? 例如,我有一批100个查询。如果批处理中的第40个查询失败,那么批处理中执行的39个查询会发生什么? 我知道有一个在后台创建的批处理日志,它将负责部分批处理的一致性。它是否删除了其余39个条目,并提供了批处理查询所需的原子性质。 在MYSQL中,我们将自动提交设置为fa

  • 问题内容: 当我使用发布请求发送大文件时,系统显示异常: 当我在Google中搜索帮助时,他们会提供一些帮助,例如, 我正在使用此代码,但问题仍未解决 我也在使用代码 但是没有结果 注意:-我正在使用Jetty-6.1.0 问题答案: 尝试通过设置系统属性 好的,您可以从网络应用中对其进行配置 在您的Web应用程序中添加文件,并在该文件中配置参数: 文件 版本7或更高版本 从版本7开始,Jetty

  • 我正在尝试通过copy命令将数据从.csv文件导入Cassandra 3.2.1。文件中只有299行14列。我得到错误: 无法导入 299 行:请求无效 - code=2200 [无效查询] 消息=“批处理太大” 我使用以下复制命令并尝试增加批大小: 我认为299行对卡桑德拉来说不算太多,还是我错了?

  • 在Cassandra中,用于同时执行多个修改语句(插入,更新,删除)。 当你必须更新一些以及删除一些现有的列是非常有用的。 语法 实例: 让我们举个例子来演示命令。 在这里,我们有一个名为“”的表,其中包含列(,,),具有以下数据。 在这个例子中,我们将执行BATCH(插入,更新和删除)操作: 插入一个包含以下信息的新行(,,)。 更新行ID为的学生的列的值为。 删除具有行ID为的雇员的值。 完整

  • 我使用。 我每秒接收15万个请求,并将其插入到具有不同分区键的8个表中。 我的问题是哪种方式更好: 批量插入这些表 一个接一个地插入。 我问这个问题是因为,考虑到我的请求大小(150k),批处理听起来是更好的选择,但是因为所有的表都有不同的分区键,所以批处理显得很昂贵。