【虹科分享】什么是Redis数据集成(RDI)?

大量的应用程序、日益增长的用户规模、不断扩展的技术需求,以及对即时响应的持续追求。想想这些是否正是你在经历的。也许你尝试过自己构建工具来应对这些需求,但是大量的编码和集成工作使你焦头烂额。那你是否知道,有这样一个工具可以帮助你实现从缓存中执行所有查询?

一、推出Redis数据集成(RDI)的背景
企业面临着大量的应用程序、日益增长的用户规模、不断扩展的技术需求,以及对即时响应的持续追求。Redis Enterprise提供对数据的实时访问,并且可以水平扩展,但是如何使 Redis 缓存与数据库保持一致,以便所有查询都可以从缓存执行?

有些组织决定自己承担,只是发现构建缓存预取(或有时称为提前刷新)非常困难。 他们需要自己构建一个可靠的流传输管道。首先捕获源数据库中发生的所有数据更改,然后将数据转换为 Redis 数据类型以允许应用程序获取它。此过程通常涉及数据转换和去规范化。他们需要集成多个组件(变更数据捕获 (Change Data Capture, CDC)、流式传输和 Redis 连接器)、编码转换、错误处理和许多其他企业基本要求,而这些用于工具构建的时间可以去做更有成效的工作。

在用户面临着种种问题的情况下, Redis 数据集成 (RDI) 的公开预览版在万众期待下诞生了。RDI 允许开发人员将数据库转移到 Redis Enterprise、镜像应用程序数据并以内存中的速度运行,而且不需要投入编码或集成工作。

二、进入Redis数据集成
Redis 数据集成(RDI) 是在 Redis Enterprise 内部运行的工具。它可以帮助用户近乎实时地将数据从现有关系数据库同步到 Redis,以便应用程序读取查询完全从关系数据库转移到 Redis。
数据转换过程

                     数据转换过程
RDI 管道有两个阶段:
  • 捕获数据库更改并将其流式传输到 RDI 转换任务中
  • 使用声明性指令对数据进行转换和去规范化,然后将其写入目标Redis 缓存
数据转换过程:
  • Debezium是一个开源 CDC 平台,捕获源数据库中数据的更改并将其流式传输到 RDI。在 Redis 内,数据可以被进一步过滤、转换并映射到一个或多个 Redis 键。RDI 支持多种Redis 数据类型(Hash、JSON、Set 和 Stream)。RDI 将数据写入目标 Redis 数据库。它承担了繁重的工作,因此开发人员可以专注于应用程序代码,而不是集成琐事和数据转换代码。
  • RDI可以与其他CDC工具和数据流连接,借助这样的集成解决方案,开发人员可以使用 RDI 作为核心,以简单的方式将各种数据库的更改流式传输到 Redis Enterprise 和其他数据平台。

使用Debezium服务器提取

                  使用 Debezium 服务器提取

三、无代码数据过滤和转换
从源数据库捕获更改并将数据从一个地方传输到另一个地方已经很困难了。然而,流动数据还存在另一个挑战:转换部分,这意味着过滤数据并将数据映射到 Redis 数据模型。

1)RDI 提供了一个选项来指定每个源表所需的所有过滤和转换步骤。用 RDI 术语来说,这称为作业;每个作业都是一个 YAML 文件。
数据转换管道

                      数据转换管道
过滤:

RDI 无需编码即可完成过滤,而不需要开发人员编写自定义代码。开发人员可以使用SQL 表达式或Jmespath 函数的声明式过滤器。RDI 附带了额外的自定义 Jmespath 函数,以方便作业创建者使用。

RDI 有几个级别的数据转换:
  • 基本转换: 这是由 RDI 引擎自动完成的。
  • 结构化: RDI 引擎有一种默认的结构方式,可以通过无代码转换的功能将其构造为哈希或JSON 。您可以选择转换键和字段,甚至重新计算这些字段中的值。
  • 去规范化: RDI 将源数据转换为 JSON 文档,其中文档中的父级详细信息被转换为 JSON 对象的映射。
故障排除:

RDI 包含一个跟踪工具,可帮助开发人员无需编写自定义代码,就可以创建复杂的数据管道并对其进行故障排除。这加快了流程并减少了所需的工作量和技能。 故障排除后,通过简单的部署命令即可修改管道,无需停机。

四、公开预览版中的附加功能:

  • 至少保证一次交付

  • Debezium 服务器和 RDI 的高可用性

  • 死信队列 (Dead Letter Queue, DLQ) 中的硬拒绝条目处理

  • 支持的源数据库:Oracle、Postgres、MySQL、MariaDB、Percona XtraDB、Microsoft SQL Server 和 Cassandra(包括 DataStax DSE)

  • 数据提取模式:初始快照和CDC(流更改)

  • 声明式转换:过滤条件、Redis 键模式、更改字段名称、添加字段、删除字段、嵌套

  • 支持的 Redis 数据类型:Hash、JSON、Set、Stream

  • 开发人员工具:RDI 命令行界面脚手架和跟踪命令

  • 操作员工具:RDI 命令行界面、Grafana 仪表板(通过 Prometheus 导出器进行指标)

五、什么情况下可以使用RDI ?

  • 应用数据来自关系型数据库,不可替换 。
  • 关系数据库可以适应数据写入的速度,但无法扩展和执行以满足读取查询的负载。从关系数据库中转移读取查询是必要的。
  • 缓存中的数据必须近乎实时地反映关系数据库中的数据,这一点至关重要。
  • 关系数据库的更改率为中高水平,批量插入更改不能满足要求。
  • 源数据库和Redis之间的数据映射需要一些数据操作。

六、Redis数据集成(RDI)的发展
RDI的目前版本是公开预览,以相反方向集成 Redis 的功能正在研究中:将对 Redis 数据的更改应用到下游数据库。

  • Write-behind: CDC 源是用户的 Redis 数据库,用户的目标是下游关系数据库或 NoSQL 数据库。此流程将让用户享受 Redis Enterprise 的实时写入和读取速度,同时保留应用程序生态系统和下游服务。
  • Write-through: 对 Redis 的每次写入也会应用于关系数据库。
  • 通读:如果发生缓存未命中,RDI 会自动从下游数据库获取丢失的数据,并将其作为键写回 Redis,以便将其返回给请求的应用程序。

七、如何开始使用 RDI?
RDI 目前仅适用于自我管理的 Redis Enterprise 集群。

  • 如果您是 Redis Enterprise 的现有客户,请下载 RDI CLI软件包并按照快速入门指南中的步骤操作。安装指南将引导您完成 Debezium 服务器的安装和配置。运行一些 RDI CLI 命令后,您的管道会将数据从源数据库转移到 Redis。
  • 如果您不是Redis Enterprise 的现有客户,则需要首先安装适用于 Kubernetes 的 Redis Enterprise Software。然后下载 RDI CLI 软件包并按照快速入门指南中的步骤操作。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/151782.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

计算机竞赛 题目:基于深度学习的中文汉字识别 - 深度学习 卷积神经网络 机器视觉 OCR

文章目录 0 简介1 数据集合2 网络构建3 模型训练4 模型性能评估5 文字预测6 最后 0 简介 🔥 优质竞赛项目系列,今天要分享的是 基于深度学习的中文汉字识别 该项目较为新颖,适合作为竞赛课题方向,学长非常推荐! &a…

从入门到精通,30天带你学会C++【第七天:for循环和while循环以及数组的学习】(学不会你找我)

目录 Everyday English 前言 数组 数组的概念 数组的定义 数组的下标 for循环 循环是什么 基本格式 多重循环 while循环 do-while循环 总结 Everyday English To shine , not be illuminated. 去发光,而不是被照亮。 前言 好久不见&#xff0c…

kafka初体验基础认知部署

kafka 基础介绍 Apache Kafka是一个分布式流处理平台,最初由LinkedIn开发并于2011年开源。它主要用于解决大规模数据的实时流式处理和数据管道问题。 Kafka是一个分布式的发布-订阅消息系统,可以快速地处理高吞吐量的数据流,并将数据实时地分…

图片素材免费下载,高清无水印,无需担心版权问题。

找图片素材就上这8个网站,免费可商用,建议收藏起来~ 1、菜鸟图库 https://www.sucai999.com/pic.html?vNTYwNDUx 网站主要为新手设计师提供免费素材,这些素材的质量都很高,类别也很多,像平面、UI、电商、视频、图片…

【1++的Linux】之进程(五)

👍作者主页:进击的1 🤩 专栏链接:【1的Linux】 文章目录 一,什么是进程替换二,替换函数三,实现我们自己的shell 一,什么是进程替换 我们创建出来进程是要其做事情的,它可…

掌握 BERT:自然语言处理 (NLP) 从初级到高级的综合指南(1)

简介 BERT(来自 Transformers 的双向编码器表示)是 Google 开发的革命性自然语言处理 (NLP) 模型。它改变了语言理解任务的格局,使机器能够理解语言的上下文和细微差别。在本文[1]中,我们将带您踏上从 BERT 基础知识到高级概念的旅…

民族民俗景区3d智慧旅游系统提升游客旅游体验和质量

随着科技的不断发展,传统的旅游方式正在逐渐被新的技术和系统所取代。网上3D沉浸式旅游体验凭借其身临其境的沉浸式体验优势,正成为旅游业的新宠。 网上3D沉浸式旅游体验是将旅游景区、度假区、休闲街区、科博馆等场所空间,利用VR全景制作、w…

vscode刷leetcode使用Cookie登录

1、安装插件 打开vscode,选择扩展,搜索leetcode,选择第一个,带有中文力扣字样,安装后重启 2、切换 选择这个小球,切换中文版本,切换后,会显示一个打勾 3、 选择小球旁边的有箭…

需求放缓、价格战升级、利润率持续恶化对小鹏汽车造成了严重影响

来源:猛兽财经 作者:猛兽财经 收入和每股收益不及预期,亏损创记录 财报显示,小鹏汽车(XPEV)2023年第二季度收入为50.6亿元人民币(合7亿美元),略低于预期,而且还产生了比预期更大的亏…

【C++设计模式之建造者模式:创建型】分析及示例

简介 建造者模式(Builder Pattern)是一种创建型设计模式,它将复杂对象的构建过程与其表示分离,使得同样的构建过程可以创建不同的表示。 描述 建造者模式通过将一个复杂对象的构建过程拆分成多个简单的部分,并由不同…

2023年DDoS攻击发展趋势的分析和推断

DDoS是一种非常“古老”的网络攻击技术,随着近年来地缘政治冲突对数字经济格局的影响,DDoS攻击数量不断创下新高,其攻击的规模也越来越大。日前,安全网站Latest Hacking News根据DDoS攻击防护服务商Link11的统计数据,对…

Jenkin 添加节点报错No Known Hosts file was found

/var/lib/jenkins/.ssh/known_hosts [SSH] No Known Hosts file was found at /var/lib/jenkins/.ssh/known_hosts. Please ensure one is created at this path and that Jenkins can read it. /var/lib/jenkins/.ssh/known_hosts 存了是已经接受SSH key认证的目标节点&#x…

2023年【A特种设备相关管理(锅炉压力容器压力管道)】新版试题及A特种设备相关管理(锅炉压力容器压力管道)试题及解析

题库来源:安全生产模拟考试一点通公众号小程序 A特种设备相关管理(锅炉压力容器压力管道)新版试题是安全生产模拟考试一点通生成的,A特种设备相关管理(锅炉压力容器压力管道)证模拟考试题库是根据A特种设备…

7344-2015 交流伺服电动机通用技术条件

声明 本文是学习GB-T 7344-2015 交流伺服电动机通用技术条件.pdf而整理的学习笔记,分享出来希望更多人受益,如果存在侵权请及时联系我们 1 范围 本标准规定了交流伺服电动机的分类、技术要求和试验方法、检验规则、交付准备。 本标准适用于两相交流伺服电动机(以下简称电机…

Decorator

Decorator 动机 在某些情况下我们可能会“过度地使用继承来扩展对象的功能”, 由于继承为类型引入的静态特质,使得这种扩展方式缺乏灵活性; 并且随着子类的增多(扩展功能的增多),各种子类的组合&#xff…

[Machine Learning]pytorch手搓一个神经网络模型

因为之前虽然写过一点点关于pytorch的东西,但是用的还是他太少了。 这次从头开始,尝试着搓出一个神经网络模型 (因为没有什么训练数据,所以最后的训练部分使用可能不太好跑起来的代码作为演示,如果有需要自己连上数据…

Java常见设计模式

单例模式:程序自始至终只创建一个对象。 应用场景:1.整个程序运行中只允许一个类的实例时 2.需要频繁实例化然后销毁的对象 3.创建对象时耗时过多但又经常用到的对象 4.方便资源相互通信的环境 懒汉式线程不安全问题解决方案: 双重检查加锁机…

手机切换ip地址的几种方法详解

在某些情况下,我们可能需要切换手机的IP地址来实现一些特定的需求,如解决某些应用程序的限制、绕过IP封禁等。本文将为大家分享几种切换手机IP地址的方法,让您能够轻松应对各种需求。 一、使用动态服务器 使用动态服务器是一种常见的切换手机…

STM32 CubeMX ADC采集(HAL库)

STM32 CubeMX ADC采集(HAL库) STM32 CubeMX STM32 CubeMX ADC采集(HAL库)ADC介绍ADC主要特征最小识别电压值:2.4/4096≈0.6mv(不考虑误差)一、STM32 CubeMX设置二、代码部分三,单通道…

【Leetcode】 51. N 皇后

按照国际象棋的规则,皇后可以攻击与之处在同一行或同一列或同一斜线上的棋子。 n 皇后问题 研究的是如何将 n 个皇后放置在 nn 的棋盘上,并且使皇后彼此之间不能相互攻击。 给你一个整数 n ,返回所有不同的 n 皇后问题 的解决方案。 每一种…