基于DRDS的千万级会员数据迁移方案设计

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
云原生数据库 PolarDB 分布式版,标准版 2核8GB
简介: 某集团进行数字化转型,围绕着新零售业务中台能力为核心,数据中台为底座,搭建统一会员中心体系,实现会员的统一管理与打标,精准营销,提升经营效率。 通过对各个域的会员数据进行清洗,并迁移到阿里云DRDS数据库中,从而完成对会员数据的初始化工作。

1 背景及目标

某集团进行数字化转型,围绕着新零售业务中台能力为核心,数据中台为底座,搭建统一会员中心体系,实现会员的统一管理与打标,精准营销,提升经营效率。

目前在数据中台现有的数据中,微商城系统、IOT系统、客服系统、CCPLAN、客道订单、富润订单存有九阳集团的会员数据信息,数据量共计89677179条,数据还需根据会员中心规则清洗加工得到最终的会员数据。

针对该集团会员历史数据,由数据中台割接迁移到会员中心,为保证数据平滑割接,需完成两个目标:

✓ 数据方面:完整、有序、及时准确的迁移到会员中心。

业务方面:在线化数据割接,平稳完成业务过渡。

 

2 割接对象及范围

本期割接迁移的数据主要是数据中台里微商城系统、IOT系统、客服系统、CCPLANKD订单、FR订单经过数据清洗融合后的会员数据,迁移到会员中心DRDS MySQL 数据库,版本号是5.7

3 数据清洗

3.1基础数据

针对该集团泛会员数据是集会员信息,消费者信息于一体,因此在汇总泛会员数据的情况下,进行数据清洗形成统一的会员信息。清洗中主要涉及的指标包括用户手机号、会员ID、生日、年龄、性别、星座、省、市、区等信息的清洗。

第一步:手机号筛选

各个系统会员数据合并的规则是选取用户最新的一条数据进行插入,其他会员属性字段如果为空,则根据有此记录的最新一条数据进行插入汇总。年龄、星座的数据根据会员生日计算得出,会员等级则是根据会员当前等级换算为成长值,对应会员中心最新的会员等级计算规则,得出会员等级数据。

3.2 积分数据

微商城的存量开卡会员数据和IOT的注册会员切换至会员中心私域线上运营组下,会员等级和积分转换为最新的成长值和积分,并将两个渠道的数据合并。

微商城会员等级和积分转换方案

1、会员等级折合成成长值

1)普卡:折合0成长值

2)金卡:折合1500成长值

3)白金:折合3000成长值

4)钻石:折合5000成长值

2、会员积分转换算法

当前微商城积分的价值100积分=1元,如新的积分价值为100积分=1元,如用户现在有2000积分。2000积分(旧)→2000积分(新)

IOT会员等级和积分转换方案

1、会员等级折合成成长值:原有所有等级都折合0成长值

2、会员积分转换算法

1)当前IOT小程序积分按照11转换为新的积分,如用户现在有2000积分。2000积分(旧)→2000积分(新)

2IOTAPP端的积分按照101转换为新的积分,如用户现在有2000积分。2000积分(旧)→200积分(新),转换完不足1的,向上取整到1

新的免费会员体系会员等级规则如下:

悦享普卡:0成长值

悦享金卡:500成长值

悦享铂金卡:1000成长值

 悦享钻石卡:2000成长值

4 总体设计

4.1割接原则

通过割接数据迁移演练确保迁移数据的完整与准确,需要控制割接时间

✓ 割接总体风险受控;

✓ 通过整体割接演练确保割接计划及割接步骤完整、准确与割接过程受控。

✓ 通过整体割接演练确保正式割接上线各步骤操作配合默契娴熟,执行脚本明确;

4.2 割接策略

本次割接采用的是全量方式进行数据割接:

✓ 全量割接:全量割接的方式主要对于历史数据、主数据采用全量割接策略,数据中台会员数据每个分区存储的全量数据,割接也将每天全量割接。

4.3 数据稽查

数据稽核是数据割接的最后一步,稽核的目的是保证数据中台和会员中心数据一致和会员中心数据可用。数据稽核主要分为统计稽核和测试稽核,统计稽核一是对表数据总量的稽核,二是结合业务指标需求的统计稽核,如当日新增会员数量;测试稽核是抽样性比对,在数据中台表中中随机抽样一部分数据,在会员中心表中进行比对。采用脚本进行稽核时,主要是统计脚本,计算过程中要尽量避免对大表进行全表扫描。

统计稽核,一次性/周期性统计待比对对象统一时间段内的数据量,然后进行比对分析。

测试稽核,在数据中台中随机抽样 10000 条数据,在新系统中进行查询比对;

稽核保障,为保证数据稽核结果的准确可信,需要对稽核脚本和稽核过程进行记录分析,要保证有据可查。数据稽核不仅仅是发现问题,数据稽核要包含数据修复,对稽核出的问题数据进行修复

5 实施方案

5.1 割接环境准备

DRDS MySQL 数据库的读写权限

配置源端数据库和目标数据库访问参数

✓ 添加白名单授权

5.2 开发任务

5.2.1 配置管道任务

5.2.2配置源表、目标表参数

5.2.3配置调度任务

5.3 稽查过程

目标库稽核是对源数据库与目标库的比对,目标库与源数据库的表对象一致,数据从源数据库迁移至目标库。在该环节稽核做源数据库与目标数据表对象间的一致性和完整性验证。

◼ 验证目标库表结构上与源数据库表结构是否一致

◼ 验证目标库列属性值与源数据库表字段列属性值映射是否一致

◼ 验证目标库和源数据库表对象数据量是否相同

◼ 在旧系统中随机抽样 10000 条数据在新系统进行查询比对

◼ 一致性主要通过人工比对的方式进行验证

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
相关文章
|
SQL 分布式计算 关系型数据库
PolarDB-X 1.0-用户指南-数据导入导出-数据迁移或同步方案概览
本文汇总了PolarDB-X 1.0支持的数据迁移或同步的方案。
331 0
|
分布式计算 关系型数据库 分布式数据库
DRDS到ODPS数据迁移指南
数据同步节点任务是阿里云大数据平台对外提供的稳定高效、弹性伸缩的数据同步云服务。DRDS到ODPS数据迁移采用CDP的方式同步数据。 开始DRDS到ODPS数据迁移 1.     创建源和目标库表结构 初次在同步数据前需要在源库和目标库创建好相应的表结构。
6836 0
|
运维 大数据 关系型数据库
DRDS向ADS数据迁移指南
1 CDP简介 数据同步节点任务是阿里云大数据平台对外提供的稳定高效、弹性伸缩的数据同步云服务。用户利用数据同步节点可以轻松地实现DRDS到ADS的数据同步。使用CDP将DRDS数据同步至ADS前需要在目标端创建相应的表结构,同步数据的具体操作如下: 2 配置数据源 2.1 增加DRDS数据源 1.登录Base管控台,单击顶部菜单栏中的项目管理,并选择相应的项目。
5485 0
|
6月前
|
关系型数据库 分布式数据库 数据库
【PolarDB开源】PolarDB-X源码解读:分布式事务处理机制揭秘
【5月更文挑战第20天】PolarDB-X,PolarDB家族的一员,专注于大规模分布式事务处理,采用2PC协议保证ACID特性。源码解析揭示其通过预提交、一致性快照隔离和乐观锁优化事务性能,以及利用事务日志进行故障恢复。深入理解其事务处理机制对开发者掌握分布式数据库核心技术至关重要。随着开源社区的发展,更多优化方案将涌现,助力构建更强大的分布式数据库系统。
219 6
|
4月前
|
关系型数据库 分布式数据库 PolarDB
PolarDB产品使用问题之如何基于Docker进行PolarDB-X单机模拟部署
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
PolarDB产品使用问题之如何基于Docker进行PolarDB-X单机模拟部署
|
4月前
|
Oracle 关系型数据库 分布式数据库
PolarDB产品使用问题之使用pxd安装PolarDB-X出现报错,该怎么办
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
Kubernetes 关系型数据库 分布式数据库
PolarDB产品使用问题之PolarDB-X的架构形态有什么区别
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
关系型数据库 分布式数据库 PolarDB
PolarDB产品使用问题之原PolarDB-X集群无法连接且Docker容器已经被删除,如何恢复数据
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
运维 关系型数据库 MySQL
PolarDB产品使用问题之PolarDB MySQL版和PolarDB-X的区别是什么
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。
|
4月前
|
关系型数据库 分布式数据库 数据库
PolarDB产品使用问题之将RDS切换到PolarDB-X 2.0时,代码层的SQL该如何改动
PolarDB产品使用合集涵盖了从创建与管理、数据管理、性能优化与诊断、安全与合规到生态与集成、运维与支持等全方位的功能和服务,旨在帮助企业轻松构建高可用、高性能且易于管理的数据库环境,满足不同业务场景的需求。用户可以通过阿里云控制台、API、SDK等方式便捷地使用这些功能,实现数据库的高效运维与持续优化。