当前位置: 首页 > news >正文

昆明网站建设方案策划曲麻菜公司网站建设

昆明网站建设方案策划,曲麻菜公司网站建设,wordpress 分享后可见,南京 微网站 建站目录 1 背景介绍 2 CDC的实现原理 3 DRS的CDC实现方式 4 DRS的CDC使用介绍 5 总结 1 背景介绍 随着国内各大行业数字化转型的加速#xff0c;客户的数据同步需求越来越复杂。特别是当需要将一个源数据库的数据同时迁移到不同的目标库场景时#xff0c;华为云通常会创建…目录 1 背景介绍 2 CDC的实现原理 3 DRS的CDC实现方式 4 DRS的CDC使用介绍 5 总结 1 背景介绍 随着国内各大行业数字化转型的加速客户的数据同步需求越来越复杂。特别是当需要将一个源数据库的数据同时迁移到不同的目标库场景时华为云通常会创建一个或多个DRSData Replication Service任务来进行数据同步。 但是随着源库数据量的增大DRS任务数量也越来越多会造成源库性能下降甚至影响源库正常业务。 为了解决这一问题华为云采用了DRS支持CDCChange Data Capture变更数据捕获的数据迁移方案。本文将详细介绍其实现原理、实现方式及使用方法。 2 CDC的实现原理 CDC的核心思想是监测并捕获数据库的变动包括插入、更新和删除操作并将这些变更按发生的顺序完整记录下来以供其他服务进行订阅及消费。 CDC主流的实现机制有2种基于查询和基于日志。 第一种基于查询 实现方式通过SQL语句查询数据库中的变更记录。 优点实现简单。通过简单SQL命令即可完成数据查询无需额外适配。 缺点 1高延迟依赖查询效率。 2影响源库性能。 第二种基于日志 实现方式通过解析日志获取数据库的变动记录。 优点 1低时延。数据变化快速记录到日志中解析识别速度快。 2高保真。日志中包含完整的DDL和DML变更可以精确捕捉源库的各种变动。 3不会增加源库压力。 缺点灵活性有限。各个引擎的日志机制不同需要深入了解后适配开发。 3 DRS的CDC实现方式 DRS的CDC功能主要借鉴了CDC的思想采用基于日志的方式并提出了1N的架构创新如图1所示。该架构通过一个CDC任务连接源库进行日志抽取和解析而下游的多个DRS任务则直接通过CDC获取数据进行增量同步不再连接源库。因此也不会对源库产生压力。 图1 DRS的CDC实现架构 图1中CDC负责日志下载、日志解析和增量数据的发布DRS负责全量迁移、日志下载、日志解析(过滤)和增量数据回放。 在新架构中需要2个任务来完成数据迁移相对于单任务完成迁移操作低时延和高可靠成为该架构的主要技术挑战。 3.1 低时延 3.1.1 NIO网络通信 为了保证低时延需要CDC和DRS任务之间的数据高效传输。NIO技术成为华为云的优选这种面向缓冲区、基于通道的I/O处理方式能够高效地处理大量数据和高并发请求。 NIO的核心组件 缓冲区(Buffer) 用于存储和处理CDC和DRS任务各自的数据确保数据传输的高效性。 通道 (Channel) 实现CDC和DRS任务之间的数据传输支持双向和异步操作提高数据传输的效率和可靠性。 选择器(Selector) 管理多个通道的IO事件确保一个线程可以同时监控多个通道的IO操作实现非阻塞IO提高系统的并发处理能力。 典型NIO模型的处理方式如图2所示一个线程可以管理多个网络连接。 图2 典型NIO模型的处理方式 回到我们业务本身CDC(RFS-Server)和DRS(RFS-Client)进行数据传递时我们采用多路复用IO模型交互方式如图3所示 图3 CDC和DRS组件交互 SocketListener线程实时监听来自RFS-Client发送的连接请求 SocketReader线程负责校验请求是否有效读取下游任务发送的命令并进行分发处理 RequestProcesser线程执行具体操作如读取文件长度、读取文件属性等。 传输性能测试结果 测试项客户端数量 平均速度(MB/s) 最小(MB/s) 最大(MB/s) 1 268.2 129.1 622.9 5 112.9 29.1 833.9 测试环境 类型 规格 ECS实例 c3.xlarge.2 3.1.2 数据压缩 对已解析的日志文件进行压缩以减少磁盘占用降低存储成本并进一步提高数据的读写性能。 压缩算法 在数据迁移过程中如果进行压缩那么无损压缩算法成为我们的必选。当前选用LZ4压缩算法尽管压缩率不是最优接近2.0但是压缩和解压缩速度极快。 LZ4 的主要算法思想是将重复的字符串替换为对已识别字符串的引用。具体工作原理是在数据流中使用滑动窗口识别出现在一定范围内的数据序列。找到匹配项后算法会将第二次出现的匹配项替换为对第一次出现的引用从而减少数据的大小。 LZ4专注于查找固定长度的序列简化了匹配过程。同时使用哈希表存储和快速检索固定长度序列的位置以实现快速引用。 从源库抽取的日志文件统一解析为THL文件。存储格式如下 字符串使用一个字节表示是否存在实际内容使用UTF格式 基本数据类型使用固定长度。 THL文件是序列化和反序列严格对称。这种紧凑性设计占用更少的存储空间。 数据剪枝 从实际业务需求出发在CDC任务中提供2种对象选择方式整库和部分表选择。通过对象选择过滤冗余的源库日志数据减少磁盘空间占用。 3.2 高可靠 3.2.1 数据安全 在数据迁移过程中下游的所有DRS任务都依赖CDC从中拉取日志数据。除了性能外如何可靠地传输数据并保证传输过程中数据不丢失成为衡量可靠性的关键因素。 文件完整性校验 由于网络环境的复杂性数据在传输时有可能会出错。因此针对传输的每条数据将校验其序列号和长度是否一致。传输完成后再次校验文件长度来保证文件的一致性。 加密传输 针对安全极度敏感客户可以启动SSL传输加密。SSL通过使用数字证书和加密算法建立加密连接保证数据传输过程的机密性。然而启用 SSL 传输会导致性能下降约三倍建议按需使用。 安全位点 CDC任务从源库拉取日志时受限于源库日志的保留时间。如果日志被清理则无法继续从源库拉取。对于DRS任务从CDC拉取日志时不再受限源库日志的清理可以持续拉取使用。 但是用户可以调整放大CDC任务的同步对象范围。在这种情况下调整前产生的数据即没有新增对象的日志数据将不再可用。故引入“安全位点”概念确保之前的数据不再支持拉取使用且从安全位点之后的数据都是完整有效。 3.2.2 故障恢复 DRS任务自身已具备断点续传和故障恢复等功能针对CDC任务和DRS任务之间因为网络闪断等原因导致通信断开时DRS任务失败如果通信条件恢复那么DRS任务也需要快速恢复。 文件异常快速识别 通信中断后为了保证THL文件数据的完整性会清理本地文件并重新拉取。 DRS任务在生成本地THL文件时会标记文件的UUID通过UUID的变动可以快速识别文件变化如图4所示。 图4 文件异常快速识别  4 DRS的CDC使用介绍 DRS的CDC使用介绍以MySQL为例 1创建CDC任务 步骤一 创建CDC实例 设置数据流动方向、源库引擎、源库实例 步骤二 源库配置 填写源库用户名和密码进行测试连接。 步骤三 任务配置 设置同步对象的范围支持不同库配置不同规则。 步骤四 预检查 检查源库是否满足迁移条件权限、表结构、源库参数等校验。 2创建同步任务 步骤一 创建同步实例 配置数据流动方向、源库引擎、同步模式。 步骤二 源库及目标库 源库信息中开启CDC开关可以选择CDC任务后续从CDC中拉取日志。 步骤三 设置同步 在“编辑同步任务”页面默认的同步对象是CDC中已选择的对象范围选择后支持映射。 步骤四 数据加工 针对已选择的对象配置数据过滤列加工等。 步骤五 预检查 检验CDC任务连通性、对象选择范围是否合理等。 3 CDC任务运行 发布列表 DRS任务启动后即可再发布列表中查看下游的所有DRS任务。 5 总结 DRS支持CDC的数据迁移方案即CDC通过拉取源库日志解析成标准的THL格式文件进行增量数据发布。DRS直接拉取THL文件进行解析和过滤实现增量数据回放有效的降低了多个DRS任务直连源库对源库性能的影响。针对源库数据量级大需要拆分任务迁移一对多场景以及对源库性能敏感客户优先推荐使用该方案。
http://www.zqtcl.cn/news/44529/

相关文章:

  • 定制软件的网站电商运营工作内容
  • 网站发帖功能怎么做网站怎么做分享链接
  • 如何有效提高网站排名邦派巴洛特网站是谁做的呀
  • 中信建设有限责任公司客户廊坊视频优化展现
  • 做网站一般都是那些人 会做广州企业推广网站建设
  • 百度推广移动端网站推荐5家知名
  • 外贸网站建设 深圳扬州哪里做网站
  • 智慧校园信息门户网站建设优秀英文企业网站
  • 个人网站用凡科建站好吗最新网页版传奇
  • 网站营销方式有哪些内容视觉传达设计主要学什么
  • 网站建设需要了解的信息苏州信息造价网
  • 佛山企业设计网站建设三里河网站建设公司
  • 去网站做dnf代练要押金吗淄博乐达网站建设
  • 设计师品牌 网站简单的网站建设怎么做
  • 公司的网站推广怎么做怎样自己做网页设计网站
  • 打电话沟通做网站话术建网站有什么好处
  • 中国制造网外贸平台网址扬州百度seo公司
  • 力网站票网站开发网站备案怎么更改吗
  • 麻涌手机网站设计湖南建设厅官方网站
  • 深圳做网站的好公司有哪些企业即时通讯平台
  • 常用的网站流量统计软件有哪些wordpress新建页面404
  • 站长工具seo综合查询方法wordpress电商爬虫批量上产品
  • 专业设计服务网站营销策略制定
  • 法律咨询东莞网站建设怎么制作网页调查问卷
  • 做网站 设备建设环评备案登记网站
  • 丽水专业做网站批量爆破wordpress
  • 各大房产网站成都app定制开发
  • 钱币网站建设wordpress用户筛选
  • 新媒体运营培训课程郑州互联网seo使用教程
  • 国外网站模板简单的网站后台管理系统