dot Redis 8 来了——而且是开源的

了解更多

DevOps 团队喜爱 Redis Enterprise 的五大理由

DevOpsDevOps

在许多企业中,DevOps 团队正在引领向数字化转型的潮流。这一旅程通常始于应用程序和基础设施的现代化,旨在释放数字经济的潜力并应对近在咫尺的竞争。应用程序性能滞后几秒钟可能对客户体验以及最终的业务成功产生巨大的下游影响。例如,如果 Gap 应用程序无法立即加载,或者无法在几秒钟内提供库存更新,那么许多购物者会毫不犹豫地在其他地方购买他们的卡其裤。简而言之,应用程序的数据处理速度必须足够快,才能满足消费者对实时性能的需求。 

根据 Allied Market Research 报告,到 2026 年,全球 NoSQL 数据库市场预计将达到 220.8 亿美元。非结构化数据的增加、对实时数据分析的需求以及全球应用程序开发活动的激增是驱动因素。传统的关联数据库通常太慢,根本无法满足当今的网络规模需求。它们的设计初衷是垂直扩展并在单个节点上运行。现代的分布式非关系型 NoSQL 数据库从一开始就被设计为多节点和水平扩展,从而使企业能够更加敏捷。

DevOps 数据库要求

NoSQL 数据库非常适合开发人员和运维团队灵活的数据存储和操作需求。DevOps 拥抱企业技术的愿景,该愿景集成了传统上孤立的开发、运维和质量保证部门。DevOps 团队强调各个组件之间的沟通与合作,专注于如何自动化和集成应用程序和服务的开发、质量测试和生产,以缩短其上市时间。

DevOps 团队努力像部署和管理应用程序代码一样部署和管理他们的数据库。数据库的更改被认为是另一种代码部署,需要进行管理、测试、自动化和改进,并采用与应用程序代码相同的无缝、强大、可靠的方法。数据库现在是持续集成/持续部署 (CI/CD) 管道的一部分。如果 DevOps 管道不包含数据库,它将成为瓶颈,减慢新功能的交付速度。实际上,DevOps 团队不仅将数据库集成到开发管道中,还将数据库集成到整个发布管道中。 

具有前瞻性的 DevOps 团队在设计应用程序(包括数据层)时,力求满足许多关键要求

  • 运营灵活性(在云端、本地和混合部署中运行)
  • 运营简单性
  • 真正的高可用性和弹性
  • 无限的可扩展性和高性能
  • 平台无关性
  • 全局分布,具有本地写入和读取延迟
  • 更低的总拥有成本 (TCO)

Redis 之所以成为一种流行的数据库选择,是因为它易于实现并且具有极高的性能,以及其他优点。大多数实时数据最终会进入 Redis,因为它具有令人印象深刻的低延迟(小于 1 毫秒)。Redis 是性能最高的 NoSQL 数据库,与其他 NoSQL 数据库相比,吞吐量高达 8 倍,延迟降低高达 80%。Redis 还经过 基准测试,在单个适度的云实例上以亚毫秒级的延迟达到每秒 150 万次操作。在 Datadog 的 2020 年容器报告中,Redis 是 Kubernetes StatefulSets 中最受欢迎的容器镜像。

Redis 非常适合 DevOps 模型,因为它易于部署、对核心和补充 Redis 技术进行严格的单元和功能测试,并且易于通过诸如 DockerAnsiblePuppet 之类的工具进行自动化。Redis Enterprise 是一种企业级、分布式、内存 NoSQL 数据库服务器,与开源 Redis 完全兼容。Redis Enterprise 扩展了开源 Redis,并提供稳定的高性能、零停机 线性扩展 和高可用性。它具有独特的优势,可以帮助 DevOps 团队以更少的管理工作和更低的开销来实现他们的目标。

DevOps 团队选择 Redis Enterprise 的原因

那么,DevOps 团队到底在 Redis Enterprise 中寻找什么?以下是五个最重要的功能

  1. 五个 9 (99.999%) 的正常运行时间 
  2. 灵活的部署选项 
  3. 几乎无限的线性可扩展性和高性能
  4. 全局分布(具有 Active-Active 地理分布)
  5. 多租户架构
  1. 五个 9 (99.999%) 的正常运行时间 

高可用性是大多数 DevOps 团队的圣杯,他们经常花费大量时间和金钱来保持其应用程序的运行。但是,未能及时从数据库故障中恢复可能会导致数据丢失和数百万次操作。Redis Enterprise 提供不间断的 高可用性,对于 DevOps 团队来说完全透明,具有无盘复制、即时故障检测以及跨机架、区域和地理位置的个位数秒级故障转移。即使在集群更改操作期间(例如向集群添加新节点、升级软件、重新平衡和重新分片数据),它也能提供高吞吐量和低延迟。 

这种 高可用性技术 的独特组合保证了四 nines (99.99%) 的正常运行时间和五个 nines (99.999%) 的正常运行时间,在全局分布式数据库的 Active-Active 部署中。Active-Active 地理分布支持跨多个地理位置在同一数据集上同时进行读取和写入操作。使用学术上经过验证的 无冲突复制数据类型 (CRDT) 技术,Redis Enterprise 会自动解决冲突写入,而不会改变应用程序使用 Redis 的方式。它为地理分布式应用程序提供防灾架构,同时还提供本地延迟。

  1. 灵活的部署选项 
Redis Enterprise 具有灵活的部署选项。

在当前的技术领域中,平台选择之多令人震惊。实际上,不可能花时间调查每个选项,因此企业通常坚持使用他们感到舒适的平台,即使它们不一定是完成任务的最佳工具。成功实施 DevOps 的一部分包括为组织环境的独特环境和流程的性质选择最佳平台。这正是 Redis Enterprise 对 DevOps 采取平台无关立场的原因。 

Redis Enterprise 软件可在 Amazon 的 AWS MarketplaceGoogle Cloud MarketplaceMicrosoft Azure Marketplace 上获得,并且可以轻松地一键部署。它可以部署在支持 Linux/RHEL/CentOS 操作系统的任何虚拟机/裸机配置上。Redis Enterprise 软件与专用 Redis Enterprise Operator 结合使用,旨在提供企业级功能,例如在几分钟内声明式部署集群和数据库,利用基础设施即代码 (IaC);自动化集群生命周期管理,包括升级和恢复;具有无缝故障转移的高可用性;跨 Kubernetes 集群的 Active-Active 部署数据持久性。Redis Enterprise Kubernetes Operator 可以跨多个 Kubernetes 平台部署,包括 RedHat OpenShiftGoogle Kubernetes Engine (GKE)VMware Tanzu Kubernetes Grid(以前称为 Enterprise PKS) 以及 上游 Kubernetes。(在我们的 Why Kubernetes 页面上了解更多关于我们用于在 Kubernetes 上部署 Redis Enterprise 的原则。)

Redis Enterprise 提供与 VMware Tanzu 应用程序服务 紧密集成的解决方案。应用程序开发人员可以本地使用 适用于 VMware Tanzu 的 Redis Enterprise Service Broker 来启动和管理其数据库/缓存系统的生命周期,而运维人员可以使用各种自动化工具来管理其 Redis 部署,并增强监控功能、故障恢复、计划之间的无缝迁移以及无缝软件升级。 (在 Pivotal 的 Redis Enterprise for VMware Tanzu 文档 中了解更多关于在 Tanzu 环境中使用 Redis Enterprise 的好处,)

Redis Enterprise 也是为 CI/CD 过程带来更多能力和灵活性的好方法。Redis 可以帮助分布式开发团队安全地发布新功能,并在需要时以最小的影响回滚它们。在此 博客文章 中了解更多关于功能标志、功能上下文和错误日志如何增强您的 CI/CD 过程。)

3. 几乎无限的可扩展性和高性能

在当今快节奏的开发环境中,周全的扩展准备策略是使流程顺畅便捷的必要条件。许多 DevOps 失败的原因是底层基础设施无法扩展以满足需求,从而导致应用程序崩溃。这是一个真正的问题,因为扩展数据库解决方案需要大量的额外基础设施投资,因为它们在横向扩展环境中会累积非线性开销。 

线性扩展至关重要,这意味着要获得 2 倍的性能,您大致需要 2 倍的基础设施,而 4 倍的性能则需要大约 4 倍的基础设施,依此类推。这对于DevOps 团队以经济实惠的方式满足快速增长的需求至关重要。Redis Enterprise专为 DevOps 环境而设计,可帮助企业快速地将动态应用部署到数百万用户。(在此处了解更多关于 Redis Enterprise 中的线性可扩展性。)

4. 全球分布(具有主动-主动地理分布)

DevOps 团队部署的应用程序越来越多地使用微服务构建。这些应用程序利用了大量不同的组件部分,采用不同的基础设施方法,托管在各种不同的位置,被世界各地的人们使用,并分布在许多不同的平台上。

为了支持分布式应用程序所需的响应性和可扩展性,DevOps 团队越来越多地寻求创新的数据库技术,例如地理分布式数据处理,以提供高度交互、可扩展且低延迟的地理分布式应用程序。许多人选择 Redis Enterprise 作为一种现代数据库,它可以在全球范围内部署,但可以为写入和读取提供本地延迟,同时简化冲突解决,并为数据集实现强大的最终一致性。

无论您的环境包括在本地、混合云或多个云上运行的应用程序,还是所有这三者的混合体,Redis Enterprise 的 Active-Active 地理分布都能提高高可用性和低延迟。凭借基于 CRDT 的内置主动-主动数据库技术,Redis Enterprise 可帮助 DevOps 团队在分布式数据集中实现高性能。这大大减少了构建现代应用程序的开发工作,即使这些应用程序需要跨机架、云或区域,也能提供本地延迟。

5. 多租户架构

Redis Enterprise 中的多租户。

在多租户软件架构中,单个软件应用程序实例(包括数据库)为多个租户提供服务。每个租户的数据与其他共享应用程序实例的租户隔离。这确保了所有租户的数据安全和隐私。在为多租户应用程序选择数据库时,开发人员必须在客户对数据隔离的需求或期望与一种可以快速且经济地响应增长或应用程序流量峰值的解决方案之间取得平衡。因此,为了确保完全隔离,开发人员可以为每个租户分配一个单独的数据库实例;在另一个极端,为了确保最大的可扩展性,开发人员可以让所有租户共享同一个数据库实例。

大多数开发人员选择使用 Redis Enterprise,因为它提供软件多租户支持。单个 Redis Enterprise 软件部署(通常部署为节点集群)为数百个租户提供服务。每个租户都有自己的 Redis 数据库端点,该端点与其他 Redis 数据库完全隔离。如左图所示,有多个数据库,例如用于存储 JSON 数据的 DB1,用于搜索和过滤的 DB2,以及用于存储和分析时间序列的 DB3 等。

Redis Enterprise + DevOps

快速部署是成功 DevOps 方法的关键要素。Redis Enterprise 提供了一个快速数据库,可帮助 DevOps 团队更有效地构建和运行应用程序。Redis 易于学习的数据结构模块足够灵活,可以涵盖各种用例——而 Redis Enterprise 的功能,例如持久内存存储无共享集群架构,有助于减轻运营负担。这就是为什么 DevOps 团队像开发人员一样热爱 Redis。

还在等什么?立即开始使用 Redis Enterprise,在云中免费,或者立即下载该软件。