ScyllaDB 2022企业版发布,支持 LDAP 授权和身份验证

通讯员 2022-09-23
62

图片.png

近日,ScyllaDB 发布 ScyllaDB Enterprise 2022.1 版本,这是一个可用于生产的 ScyllaDB Enterprise 主要版本。在来自五个开源版本的超过 6,199 次提交之后,我们很高兴现在可以继续使用 ScyllaDB Enterprise 2022。

ScyllaDB Enterprise 建立在我们的 ScyllaDB 开源 NoSQL 数据库经过验证的特性和功能之上,通过额外的严格测试提供更高的可靠性。从 ScyllaDB Enterprise 2021 到 2022 年的这个版本,我们已经关闭了 1,565 个问题。此外,它还提供了一组独特的企业专用功能,例如 LDAP 授权和身份验证。

ScyllaDB Enterprise 2022 立即可供所有 ScyllaDB Enterprise 客户使用,并将作为其完全托管服务的一部分部署给 ScyllaDB Cloud 用户。兴趣根据自己的用例测试其功能的用户可以使用30 天试用版。

ScyllaDB Enterprise 2022 的新功能

支持 AWS EC2 I4i 系列实例

ScyllaDB现在支持新的 AWS EC2 I4i 系列实例由于多种因素,I4i 系列提供优于 I3 系列的性能:第三代 Intel Xeon“Ice Lake”处理器、AWS Nitro System 管理程序和低延迟 Nitro NVMe SSD。与同类 i3 服务器相比,ScyllaDB 可以在 I4i 实例上实现 2 倍的吞吐量和更低的延迟。

图片.png

支持基于 Arm 的系统

借助 ScyllaDB 开源 4.6,我们实现了对基于 Arm 的架构的支持,包括由 Graviton2 处理器提供支持的新 AWS Im4gn 和 Is4gen存储优化实例。4.6 版还支持用于开发基于云的应用程序的低成本T4g 突发实例。由于 ScyllaDB 现在已编译为在任何 Aarch64 架构上运行,您甚至可以使用 Docker 在基于 Arm 的 M1 驱动的 Macintosh 上运行它以进行本地开发。

变更数据捕获 (CDC)

此功能允许您跟踪对数据库中的基表所做的更改以进行可见性或审计。对基表所做的更改存储在可以通过标准 CQL 查询的单独表中。我们的 CDC 实施使用可配置的生存时间 (TTL) 来确保它不会占用过多的磁盘空间。注意:这是通过维护版本 (2021.1.1) 引入的少数功能之一。自 ScyllaDB Enterprise 2021 的上一个主要版本以来,它是新的。

LDAP

ScyllaDB Enterprise 2021.1.2 引入了对 LDAP 授权和 LDAP 身份验证的支持。

  • LDAP 身份验证允许用户管理外部目录服务(LDAP 服务器)中的 ScyllaDB Enterprise 用户和密码列表,例如 MS Active Directory。ScyllaDB 利用名为saslauthd的第三方实用程序的身份验证来处理身份验证,进而支持许多不同的身份验证机制。阅读有关如何配置和使用 saslauthd 和LDAP 身份验证的完整文档。
  • LDAP 授权允许用户在外部目录服务(LDAP 服务器)中管理 ScyllaDB 用户的角色和权限,例如 MS Active Directory。为此,需要将 scylla.yaml 中的 role_manager 条目设置为 com.scylladb.auth.LDAPRoleManager。When this role manager is chosen, ScyllaDB forbids GRANT and REVOKE role statements (CQL commands) as all users get their roles from the contents of the LDAP directory.When LDAP Authorization is enabled and a ScyllaDB user authenticates to ScyllaDB, a query is sent to LDAP 服务器,其响应设置该登录会话的用户角色。用户保留授予的角色直到注销;对 LDAP 目录的任何后续更改仅在用户下次登录 ScyllaDB 时生效。

注意:这是通过维护版本 (2021.1.2) 引入的少数功能之一。自 ScyllaDB Enterprise 2021 的上一个主要版本以来,它是新的。

每次操作超时

现在有新的语法可以使用“ ”为单个查询设置超时USING TIMEOUT当一个人有已知需要很长时间的查询时,这特别有用。到现在为止,您可以增加整个系统的超时值(使用 request_timeout_in_ms),或者将其保持在较低水平并看到较长查询的许多超时。新的 Timeout per Operation 允许您以更精细的方式定义超时。相反,一些查询可能有严格的延迟要求,在这种情况下,将它们的超时设置为一个较小的值是有意义的。这样的查询会更快地超时,这意味着它们不会不必要地占用服务器的资源。您可以将新TIMEOUT参数用于查询 ( SELECT) 和更新 ( INSERTUPDATEDELETE)。注意:这是通过维护版本 (2021.1.1) 引入的少数功能之一。自 ScyllaDB Enterprise 2021 的上一个主要版本以来,它是新的。

云形成的改进

一个新变量VpcCidrIp允许您为 VPC 设置 CIDR IP 范围。以前,范围被硬编码为172.31.0.0/16此外,对 Cloud Formation 模板进行了重新排序以提高可读性。注意:这是通过维护版本 (2021.1.5) 引入的少数功能之一。自 ScyllaDB Enterprise 2021 的上一个主要版本以来,它是新的。

I/O 调度程序改进

通过 Seastar 更新集成了一个新的 I/O 调度程序。新的调度程序更擅长限制磁盘 I/O 以保持低延迟。此实现在传统的生产者-消费者模型中间引入了一个新的调度程序。IO 调度程序试图找到所谓的有效调度率——系统可以处理数据而不会遇到内部排队堵塞的最快速度。

图片.png

改进的反向查询

反向查询SELECT使用表模式的反向顺序的语句。如果未定义顺序,则默认顺序为升序 ( ASC)。例如,假设分区中的行按时间升序排序。反向查询将按降序对行进行排序,最新的行在前。反向查询在 ScyllaDB Open Source 4.6 中得到了改进,并在 5.0 中进一步改进,首先,返回短页面以限制内存消耗,其次,反向查询利用 ScyllaDB 的基于行的缓存(在 5.0 之前它们绕过缓存)。

用于配置和 Nodetool 信息的新虚拟表

新的system.config 虚拟表允许通过 CQL 查询和更新配置参数的子集。这些更新不是持久的,重启后会返回到 scylla.yaml 更新。Nodetool 命令信息也可以通过虚拟表访问,包括快照、协议服务器、运行时信息和 nodetool 版本的虚拟表替换。虚拟表允许通过 CQL 进行远程访问,包括 ScyllaDB Cloud 用户。

基于修复的节点操作 (RBNO)

我们将基于行的修复机制用于其他基于修复的节点操作 (RBNO),例如节点引导、停用和删除,并允许它使用非策略压缩来简化集群管理。

SSTable 索引缓存

我们还添加了 SSTable 索引缓存 (4.6)。在此版本之前,ScyllaDB 仅缓存来自 SSTables 数据行(值)的数据,而不是索引本身。结果,如果数据不在缓存中,读取器必须在遍历索引时接触磁盘。这是低效的,特别是对于大分区,增加了磁盘负载并增加了延迟。现在,索引块可以缓存在内存中,在读取器之间,在访问时填充,并在内存压力下驱逐——减少 IO 并减少延迟。更多信息可以在 ScyllaDB 峰会“ SSTable 索引缓存”的 Tomasz Grabiec 会议中找到。

图片.png

SSTable 索引缓存通过避免
对 SSD 的不必要查询来提供更快的性能。

粒度超时控制

还添加了每次操作的超时,从而可以更精细地控制延迟要求并释放服务器资源 (4.4)。我们通过添加服务级别属性对此进行了扩展,允许您将属性与规则和用户相关联,因此您可以对会话属性进行精细控制,例如每个服务级别的超时和工作负载类型 (4.6)。

ScyllaDB

ScyllaDB 是一个非常强大的工具,具有许多功能和选项。在许多情况下,不建议在生产中运行这些选项,例如实验性或影响性能的功能,或它们的组合。Guardrails 是保留的集合,使用户更难在生产中使用非推荐选项。几个例子:

  • 阻止用户使用 SimpleReplicationStrategy。
  • 警告或阻止使用 DateTieredCompactionStrategy,它早已被弃用,取而代之的是 TimeWindowCompactionStrategy。
  • 默认禁用旧接口 Thrift
  • 确保所有节点使用相同的告密模式

ScyllaDB 管理员可以使用我们的默认设置或根据自己的环境和需求自定义护栏。

交流发电机的改进

与 Amazon DynamoDB兼容的界面已更新,包括许多新功能:

  • 支持跨域资源共享 (CORS)
  • 完全支持嵌套属性路径
  • 支持 ConditionExpression、FilterExpression 和 ProjectionExpression 中的属性路径

相关创新

Kubernetes Operator 改进

我们的 Kubernetes 故事已通过 2020 年 1 月发布的 ScyllaDB Operator 1.0 为生产做好准备。从那时起,我们通过云编排不断改进我们的功能性能调整。

更快的分片感知驱动程序

同样在过去的两年中,我们学到了很多关于使我们的分片感知驱动程序更快的知识。开源社区的贡献导致了一个分片感知 Python 驱动程序从那时起,我们的开发人员就接受了 Rust 的速度和安全性,现在我们正在将我们的数据库驱动程序移植到异步 Rust中,这将为多个驱动程序提供核心代码,并将语言绑定到 C/C++ 和 Python。

面向企业客户的新发布周期

根据我们的新企业发布政策,ScyllaDB Enterprise 2022.1 是一个长期支持版本 (LTS) 过去,企业用户需要在主要 ScyllaDB Enterprise 版本的功能更新之间等待一年。从今年晚些时候开始,我们打算在短期支持 (STS) 版本中提供额外的新功能,版本为 2022.2。LTS 和 STS 版本的这种新组合将使我们能够在年内提供新功能。对您而言,这意味着您无需等待很长时间就能看到新的创新出现在稳定的企业版本中。

例如,让我们从我们在 ScyllaDB 开源 3.0 到 4.0 时代制作的历史版本中看一下这张图表,以及它是如何跟踪到 ScyllaDB Enterprise 2019 到 2020 年的。

图片.png

从 ScyllaDB Open Source 3.0(2019 年 1 月)发布到相关的 ScyllaDB Enterprise 2019.1 版本(2019 年 5 月)之间有四个月的延迟。ScyllaDB Open Source 4.0 和 ScyllaDB Enterprise 2020.1 之间也存在类似的三个月滞后。

在这些主要版本之间的过渡期间,ScyllaDB 开源有三个次要版本——3.1、3.2 和 3.3。企业用户需要等到下一个主要年度版本才能利用这些创新中的任何一项——除了支持 IPv6 等单点功能。

相比之下,ScyllaDB 开源 5.0于 2022 年 7 月 7 日发布。在这里,在一个日历月内,我们宣布了 ScyllaDB Enterprise 2022。

此外,当 ScyllaDB Enterprise 2022.2 在今年晚些时候发布时,它将在其中包含从 ScyllaDB 开源引入的其他生产就绪创新,而无需用户等到 2023 日历年的新主要版本。

这为我们的企业用户缩短了生产就绪软件功能的延迟。例如,这就是 2022 年剩余时间的样子:

图片.png

注意 ScyllaDB Enterprise 2022.2 将是一个短期支持版本。这意味着一些企业用户可能仍决定等待 2023 年的下一个 ScyllaDB Enterprise LTS 版本。鼓励现有的 ScyllaDB Enterprise 客户与其支持团队讨论他们的升级政策和策略。

ScyllaDB Enterprise 2022 下载

ScyllaDB Enterprise 2022 立即可用。现有的 ScyllaDB Enterprise 客户可以与他们的支持团队一起管理他们的升级。ScyllaDB Cloud 用户将在未来几天内看到自动对其集群进行的更改。

对于那些希望第一次尝试 ScyllaDB Enterprise 的人,可以使用30 天的试用期试用版下载:https://www.scylladb.com/download/enterprise-trial/)。

ScyllaDB Enterprise 2022 下载https://www.scylladb.com/download/#enterprise


原文标题:Introducing ScyllaDB Enterprise 2022.1

原文作者:Tzach Livyatan

原文链接:https://www.scylladb.com/2022/08/04/introducing-scylladb-enterprise-2022-1/



最后修改时间:2022-09-23 14:23:56
「喜欢文章,快来给作者赞赏墨值吧」
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论