Apache Cassandra 4.0 带来速度改进、新功能等

几天前,Apache 软件基金会宣布发布新版 Apache Cassandra 4.0,它是一个分布式数据库管理系统,属于 NoSQL 系统,旨在创建高度可扩展和可靠的存储,用于存储以关联数组形式存储的大量数据。

这个新版本的 Apache Cassandra 4.0 被认为是一个稳定版本,因此它可以用于生产部署,并且已经在 Amazon、Apple、DataStax、Instaclustr、iland 和 Netflix 基础设施中进行了测试,这些基础设施具有超过 1000 个节点的集群。

Apache Cassandra 4.0 的主要新特性

新版Apache Cassandra 4.0 包含了近 1,000 项错误修复、改进和新功能,其中以下几点尤为突出:

  • 提高速度和可扩展性: 在大规模操作期间传输数据的速度最多可提高 5 倍,读取和写入的性能最多可提高 25%,从而提供更具弹性的架构,尤其是在云和 Kubernetes 部署中。
  • 提高一致性: 保持数据副本同步以优化增量修复,以实现更快、更高效的操作以及数据副本之间的一致性。
  • 提高安全性和可观察性: 审计跟踪跟踪用户访问和活动,对工作负载性能的影响最小。 新的捕获和回放功能支持对生产工作负载进行分析,以帮助确保安全性和符合 SOX、PCI、GDPR 或其他要求的法规。
  • 新的配置设置: 公开的系统指标和配置设置为操作员提供了灵活性,以确保他们可以轻松访问优化部署的数据。
  • 最小化延迟: 垃圾收集器暂停时间减少到几毫秒,而不会随着堆大小的增加而降低延迟。
  • 更好的压缩: 增强的压缩效率减轻了不必要的磁盘空间压力并提高了读取性能。

此外,还重点介绍了新增的审计日志支持,用于跟踪用户身份验证操作和所有已执行的 CQL 查询,以及维护完整的请求二进制日志的功能,从而可以保存所有请求和响应流量。

值得注意的是,该实验性选项可以比较所有默克尔树(默克尔树)。例如,在一个包含 3 个节点的集群上启用此选项,其中两个副本完全相同,而一个副本已过时,则只需复制当前副本即可更新过时的副本。

同样, 添加了对不反映存储在 SSTables 中的数据的虚拟表的支持,而是通过 API 显示的信息(性能指标、配置信息、缓存内容、有关已连接客户端的信息等)。
压缩存储效率已得到改进,以减少磁盘空间消耗并提高读取性能。

此外,值得注意的是,我们新增了对临时复制和廉价仲裁的实验性支持。临时副本不会存储所有数据,而是使用增量恢复来保持与完整副本的一致性。廉价仲裁是一种写入优化机制,它不会在拥有足够数量的完整副本之前向临时副本写入数据。

至于与系统键(system.*)空间相关的数据,现在默认在第一个目录中,而不是分布在所有数据目录中,允许节点在发生故障时保持运行附加磁盘之一。

其他显著变化包括:

  • 添加了对 Java 11 的实验性支持。
  • 在 CQL 查询中添加了对算术运算的支持。
  • “nodetool cfstats”命令增加了对按某些指标排序和限制显示行数的支持。
  • 提供这些设置是为了限制用户仅连接到特定数据中心。
  • 添加了限制创建和删除快照操作的强度(频率上限)的功能。
  • Python 3 支持在 cqlsh 和 cqlshlib 中实现(Python 2.7 支持仍然保留)。

最后,如果您有兴趣了解更多关于这个新版本的信息,可以在以下链接中找到详细信息。


在 Google 中将其添加为首选来源