询问八个不同的人的意见,你会得到八个不同的答案。 Apache Cassandra开源项目是由一群带着自己的动机来到这里的个人构建和维护的。有些人喜欢新功能。有些人喜欢从系统中榨取所有的性能。有些人希望让操作员的生活更轻松。是什么将他们联系在一起?他们作为一个分布式团队致力于一个目标:一个不断变得更好的令人惊叹的数据库。
Cassandra 是来自世界各地的工程师的共同努力的成果,他们有着共同的目标:创造尽可能最好的产品。他们为雇主解决问题,同时为项目的开源代码做出贡献。那些赢得社区信任并可以更改基本代码的人被称为“提交者”。成为一名提交者需要对项目的奉献和热情。近日,该项目举办了一场名为“
Haddad 告诉我们,他期待在 Cassandra 5.0 中支持 Java 17 及其低延迟垃圾收集器(例如 ZGC)。这位前 Netflix 和 Apple 开发人员自 2017 年以来一直是 Cassandra 提交者,他表示这些收集器将提供亚毫秒级的暂停时间和“设置后忘记”模型,使内存管理对 Cassandra 用户来说不再那么困难。随着项目的成熟和内存管理的进一步完善,GC 暂停的持续时间和频率将会有所改善,从而更容易运行更密集的节点,这将为用户节省资金。
“这意味着我们会看到 GC 暂停的频率降低,而且当它们发生时,所需的时间也会更少。这将使运行更密集的节点变得更容易,这意味着您的集群的运行成本将更低。我喜欢通过升级来省钱的想法。”
De la Peña是一名 DataStax 软件工程师,自 2016 年以来一直是 Cassandra 提交者,他对 Cassandra 5.0 中的动态数据屏蔽功能充满热情,该功能可以屏蔽敏感信息,同时仍然允许访问屏蔽列。此功能使用一系列转换单元格值的常规 SQL 函数,用通用数据替换列的实际值。管理员可以将这些屏蔽函数附加到表模式的列,因此非特权用户将始终看到屏蔽数据,即使他们没有在查询中指定函数。目前可用的屏蔽函数集相对较小,但用户可以使用自己的用户定义函数进行屏蔽,从而可以轻松添加自定义类型的屏蔽。
“这是一种安全匿名功能,在许多数据库中都可用
卡桑德拉早就该这么做了。”
Chella 是Netflix的高级工程负责人,自 2019 年以来一直是提交者,她对 Cassandra 5.0 中的新功能感到兴奋,这些新功能为开发人员提供了更多保护,提高了稳定性并增强了操作体验。 Cassandra 4.1 中引入的护栏允许对用户操作进行软和硬限制,而 Cassandra 5.0 添加了几个新的护栏以提高可靠性、可用性和用户体验。这些护栏将最佳实践编入法典并避免灾难性错误,例如删除生产关键关键空间或丢失数据。
“这些护栏确实有助于防止很多这样的‘糟糕’时刻。”
Semb Weaver 自 2016 年以来一直是 Cassandra 提交者,也是 DataStax 的首席架构师,他很欣赏 Cassandra 5.0 通过拥有多个供应商、公司和员工支持其贡献者来体现“真正的开源”。这创建了一个具有丰富功能和应用程序的多元化开发社区,并强调了工程卫生、构建 QA 和 CI 以提高信任并启用激进功能的重要性。他表示,这些原则和实践将延长技术的寿命、可持续性和现代化,并鼓励社区的多样性和协作。
“这就是 5.0 中出现的一些激进功能的原因——比如 Accord——如果我们不作为一个团队共同努力,我们就无法跨越终点线。”
West 是 Netflix 高级软件工程师,自 2020 年起担任 Cassandra Committer,他对 Cassandra 5.0 的改进将如何带来更好的可靠性和性能感到兴奋,这将使他作为值班工程师获得更多睡眠。他重点介绍了新的事务元数据功能和改进的内存表,这些功能将允许更快地进行更多写入。他还介绍了新的虚拟表、诊断和指标将如何提供对 Cassandra 的更多了解并帮助更快地解决事件。
“我知道,使用 Cassandra 5.0,当我上床睡觉时,我不太可能被吵醒,而当我醒来时,我会更快地解决问题并更快地回到床上。”
Dimitrova 是一名 DataStax 工程师,自 2020 年以来一直是提交者,她热切期待社区对 Accord 协议的实施。该协议将实现全球共识,并允许大规模执行 ACID 事务,从而使开发人员在不影响性能或可扩展性的情况下提高效率。全球共识对于银行转账等事情至关重要;并发保证确保一次只有一个进程可以进行更改。我们为开发人员创建的新语法将包括开始和提交事务声明,这允许声明中的所有操作完全符合 ACID。
波兰是一位 DataStax 技术主管,于 2021 年成为提交者,他喜欢 Cassandra 5.0 统一压缩策略 (UCS) 的好处,该策略结合了旧的遗留压缩策略,如 CT、大小分层和级别压缩策略。 UCS 是一种速度明显更快的压缩策略,可减少空间开销并允许并行性。该策略还具有一个缩放因子,可以根据特定的工作负载进行调整,无论它们是读取密集型还是写入密集型,或两者兼而有之。无需了解旧策略如何工作,并且迁移到 UCS 的开销为零。
“如果你需要它的写入量很大,你可以将其调整为这样;如果你需要大量阅读,你可以调整它;如果你只是想要介于两者之间的东西,那么无论你的工作量有多大,它都很适合。”
Lerer 八年前成为一名提交者。 DataStax 技术负责人指出,存储附加二级索引 (SASI) 于 2016 年添加,但投资不足,必须在 Cassandra 4.0 中进行实验性销售,因为它没有达到预期标准。 SAI 建立在 SASI 之上,并拥有自己的一套创新,包括在没有可扩展性问题的情况下对多个列进行索引的能力以及空间使用和数字紧缩查询的优化。
“SAI 将启用一组新的查询功能,并且没有二级索引或 SASI 所具有的缺点。”
Lambov 是一名 DataStax 工程师,自 2015 年以来一直是 Cassandra 提交者,他对 Cassandra 5.0 中的本地存储可插拔性感到兴奋。变化主要围绕内存表,它是计算机内存中的临时存储区域,数据在写入更永久的存储之前存储在其中。新实现的目标是更轻松地使用不同类型的内存表,并为每个特定用例选择最佳的内存表。其中一项新的实现是基于
从人类和技术的角度来看,探索一个成功的开源项目都是一次迷人的旅程。虽然技术可能是软件项目的最初焦点,但真正令人着迷的是参与其中的人员。每个人都会将自己独特的情感和愿望带到桌面上,这可能会导致积极或消极的结果。在开源项目中,个人改进某些东西的愿望是赤裸裸的,并且容易受到批评。然而,只有通过共同努力并不断前进的决心,该项目的真正魔力才会发生。
您期待 Cassandra 5.0 的哪些功能?就我个人而言,我对开发人员的改进感到兴奋,这些改进将改变游戏规则,例如 ACID 事务、新的索引方案和 NOT 运算符等新语法。作为一名 Cassandra 提交者,我喜欢观看开发人员使用这些新功能并创造出令人惊叹的东西。如果您有一段时间没有查看 Cassandra,现在是查看的好时机。加入其他用户社区:
也发布在这里。