当今世界需要实时响应,延迟成为了新的中断,客户对速度的期望只增不减。只有使用实时解决方案才能实现实时用例。您的 RDBMS 甚至基于磁盘的 NoSQL 数据库 都无法提供像 Redis Enterprise 这样的内存数据库所能提供的速度和性能。
阅读我们的白皮书“延迟是新的中断”。
实时用例
1. 前端 DBMS 的缓存
传统和传统 SQL 数据库的设计目的不是大规模提高速度,因此,缓存通常用于存储查找表的副本,以减少延迟并提高吞吐量。这允许前端 DBMS 在始终可用的同时轻松扩展。
2.缓存用户会话数据
缓存用户会话数据对于构建可扩展且响应迅速的应用程序至关重要。存储每个用户交互都需要访问会话的数据,并且将这些数据保存在缓存中可以加快对应用程序用户的响应时间。在这个采集过程中缓存会话数据对于现代微服务架构在更大范围内也非常重要,因为会话数据通常用作事实来源,有助于提高数据质量。这可确保微服务状态更新快速且可扩展。
3. 缓存 API
现代应用程序 API 非常繁忙,如果不考虑性能,就会导致大量延迟。缓存 API 可确保应用程序的响应始终是实时的。
让我们看一下将部分数据湖的数据采集到 Redis Enterprise的六种不同方式,这些方式可以转换您的数据层,以便您保持竞争优势并启用这些实时用例。
01 数据迁移:蓝绿部署

应用程序根本无法承担数据迁移的许多风险,例如意外(通常比预期更长)中断。企业通常依赖的风险较小的路线是蓝绿色部署来采集数据,其中应用程序继续使用“蓝色”遗留数据库,同时并行部署新的“绿色”云原生数据库以进行实时生产测试和在保证回滚的情况下切换这个新的数据管道。Redis Connect 是我们的数据采集工具,用于保持旧版和新的云原生数据库 (Redis Enterprise) 之间的一致性,直到对新部署达到一定程度的信心。
02 数据库迁移:多阶段平台重构

过于复杂和/或包含大量大数据的任务关键型应用程序不适合数据采集蓝绿部署。他们需要一个多阶段的数据采集迁移计划,该计划可以跨越数月甚至数年才能完成。通常,这些项目逐渐将小型工作负载迁移到新创建的模块化应用程序或最近迁移到微服务。该应用程序的遗留数据库通常在项目期间充当记录系统或数据仓库,这使得与支持微服务架构的新数据库的一致性成为挑战。Redis Connect 可用于单个或一小组表,以保持旧记录系统和新数据库之间的一致性,有时甚至是双向数据采集。
03 数据库只读副本:缓存预取

企业通常将其遗留数据库保留为记录系统以支持其现有操作,同时利用只读副本或缓存预取、采集数据以启用这些实时解决方案。Redis Connect 用于无限期地将数据从旧数据库流式传输到 Redis Enterprise。最终启用实时数据用例的一种非常简单且几乎零风险的方法。
04 混合云部署

传统企业架构、合规风险和运营问题通常会成为迁移到云的障碍。为了克服这些挑战,企业采用了混合云架构,在本地和公共云之间拆分部署。通常,无状态应用程序托管在云上,而操作数据保留在本地,充当旧的记录系统数据库。Redis Connect 可用于将数据从本地数据库流式传输到 Redis Enterprise,它支持其本地和公共云副本之间 的双边复制。
05 云爆发

许多行业的交易量空前增加,对速度和可用性的期望很高。企业需要弹性配置、突发到云、基础设施以处理季节性流量高峰、扩展数据仓库/分析、改进灾难恢复目标或在数据中心发生故障时保持运营业务连续性。常见的解决方案涉及将云用于地理分布式的按需基础设施。Redis Connect 可用于将来自多个源的数据流式传输到能够进行主动-主动地理分布式混合云部署的 Redis Enterprise。
06 微服务模式——命令查询职责分离(CQRS)

随着应用程序现代化和云迁移战略的加速,微服务架构的采用继续增长。最流行的微服务设计模式之一是 CQRS。在这种模式中,不同的数据结构(通常由不同的数据库支持)用于独立优化写入(命令)和读取(查询)。在微服务架构中实现这种模式可能很复杂,因为必须保持命令和查询之间的一致性。Redis Connect 可用于通过将命令数据库中的更改数据事件 (CDC) 流式传输和转换为查询数据库/缓存中的读取优化数据结构来实现 CQRS。
现代化您的数据层
上面讨论的通过数据采集转换数据层的六种方法提供了易于实施和企业强化的方法,可帮助您的企业保持高效和竞争力。Redis Enterprise 是一个让您的数据能够完成这些现代用例并提供亚毫秒级响应的好地方。除了我们今天介绍的缓存之外,还有更多可能的用例,例如排行榜、消息代理、欺诈检测等等。
原文标题:Data Ingestion: 6 Ways to Speed Up Your Application
原文作者:Talon Miller
原文地址:https://redis.com/blog/data-ingestion-speed-up-your-application/




