分布式大数据迁移工具 (一)

一 、 背景介绍 :

        P2P公司不断的发展,系统不断的迭代,业务越来越多,系统也越来越多,最终整个公司技术部分根据业务划分成:借款端、理财端、和移动端 ,目前公司的数据库也拆成了三大块,基于诸多历史原因,表结构不明确、各个端表设计冗余、数据冗余,为业务部门梳理公司业务和制作有效报表带来了极大的困难。 

二 、 需求与设计:

     基于之上的历史原因,公司要求创建一个数仓,专门用来进行数据分析和智能报表研发。为此需要作出一款工具,将线上数据根据一定的规则,分发到对应的数据库所对应的表中, 并能进行数据更新同步

     需求用例:

user.user_info
id 主键
u_id 用户id
u_name 姓名
u_sex 性别
u_age 年龄
u_id_card 身份证

 

uinfo.user_detail
id 主键
u_id 用户id
u_role 自然人   或   企业
u_type 借款方  或   投资方
register_time 创建时间
status 状态

user_info 和 user_detail 一对多的关系,同一个用户可以同时是  借款方 和 投资方,角色可以是自然人或 企业 。

此时需要将用户只具备一个类型   (只能是借款人 或者  投资人 )的数据集合到数据库 report下的user_manager表中,并去掉u_id

report.user_manager
id 主键
u_name 姓名
sex 性别
age 年龄
id_card 身份证
role 角色
type 类型
register_time 注册时间
status 状态

  结合上图能看到几个需求点

           源来自不同的库 ( user 、 uinfo ),不同的表(user_info、user_detail)

           目标于不同的库 、 不同的表  、 不同的字段

           字段名称可以不一致

           字段可丢失 (u_id)

           对应一对一的数据,才能迁移,否则不参与同步 

 另外:还要能做到不定时地将源表中产生了更新的数据,同步更新到对应的目标表中

三、设计预期

       能满足   对数据迁移自定义规则、 能处理大量数据 、 能高效处理 

     

未完待续,欢迎关注,如无意外,次日更新

 

欢迎互粉交流     春叁十娘

分布式大数据迁移工具 (一)