Cassandra 卡桑德拉截断性能
最近有人告诉我,cassandra truncate没有性能,它是反模式的。但是,我不知道为什么 因此,我有两个问题:Cassandra 卡桑德拉截断性能,cassandra,truncate,Cassandra,Truncate,最近有人告诉我,cassandra truncate没有性能,它是反模式的。但是,我不知道为什么 因此,我有两个问题: 对所有记录进行upsert比执行truncate更有效吗 截断操作是否创建墓碑 卡桑德拉版本:3.x来自卡桑德拉文档: 注意:TRUNCATE向所有节点发送一个JMX命令,告诉它们 删除包含指定表中数据的SSTables。如果有的话 这些节点关闭或没有响应,命令失败并输出 像下面这样的消息 因此,运行truncate将删除属于cassandra表的所有SSTABLE,这将非
- 对所有记录进行upsert比执行truncate更有效吗
- 截断操作是否创建墓碑
卡桑德拉版本:3.x来自卡桑德拉文档: 注意:TRUNCATE向所有节点发送一个JMX命令,告诉它们 删除包含指定表中数据的SSTables。如果有的话 这些节点关闭或没有响应,命令失败并输出 像下面这样的消息 因此,运行truncate将删除属于cassandra表的所有SSTABLE,这将非常快,但必须得到所有节点的确认。根据您的cassandra.yml,这将在以下时间之前快照您的数据: 自动_快照(默认值:true)启用或禁用快照是否为 在键空间截断或删除表之前获取数据。到 防止数据丢失,强烈建议使用默认设置。如果 如果设置为false,则截断或删除时将丢失数据 创建或修改表时,可以启用或禁用密钥缓存 (分区键缓存)或通过设置 缓存参数。其他行和键缓存优化和配置 选项在全局(节点)级别设置。卡桑德拉用这些 为节点上的每个表自动分配内存的设置 基于总体工作负载和特定的表使用情况。你也可以 全局配置这些缓存的保存周期 关于你的问题:
- 上升速度会慢得多(当表中有重要数据时)
- truncate根本不写逻辑删除(相反,它会立即删除被截断表sstables的所有节点上的所有逻辑删除)