CRM基于分布式数据存储事务处理方案.docx

CRM基于分布式数据存储事务处理方案.docx

  1. 1、本文档共6页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

?

?

CRM基于分布式数据存储事务处理方案

?

?

吴宇星

【摘要】借鉴优秀互联网经验,大型企业CRM系统引入分布式数据存储架构,采用分布式数据架构,将传统的单节点数据存储分布存放到多个数据节点,上层的应用如何保障事务一致性,对应用的建设提出很大的挑战。本文主要就CRM采用分布式数据存储,列举了分布式事务一致性的技术解决方案,并提出CRM的关键场景的分布式存储情况下的事务处理方案。

【关键词】分布式事务事务一致性幂等性

一、引言

CRM是企业的核心生产运营系统,在大型企业中数据量巨大,为提升系统的性能引入分布式数据存储架构,采用分布式数据架构,将传统的单节点数据存储分布存放到多个数据节点,上层的应用如何保障事务一致性,对应用的建设提出很大的挑战。

二、关键业务场景实现方案

目前对于一个分布式系统的事务处理有三种方式:分布式事务两阶段提交、基于BestEfforts1PC模式的事务以及事务补偿机制。

综合比较分布式事务一致性技术特性,集中系统采用事务补偿机制进行分布式事务处理。

2.1事务一致性场景

从事务完成后,跨库数据同步达到数据最终一致时间,需要考虑时效要求类型如下:

立即生效

快速生效

允许时延:秒级(正常要1秒内,最长1分钟?)

较长时间时延

允许时延:分时级别(分钟、小时及以上)

时间要求低

允许时延,小时级别,如:数据同步给ODS

典型业务场景要求数据最终一致的时效如下:

2.2关键业务场景实现方案

事务实现方案:(表2)

2.2.1订单提交

调整数据保存方案,将一次订单提交涉及的订单数据、客户资料数据保存到同一数据节点,将跨数据节点事务调整为单数据节点事务,规避分布式事务。

场景说明:

客户订单提交,作为一个整体提交

按现有数据存储模式,订单提交需保存的数据涉及订单中心、客户资料中心,存在跨数据节点事务

按现有模式处理,订单提交需要作为一个整体,涉及的数据,最少考虑也涉及订单表、档案表的数据更新或状态变化

提交数据的下级信息较丰富,可能做为后续的查询、展示关键信息。如:订单下级的订单项等数据,可能做为后续展示的部分数据。

方案说明:

在订单库建立订单过程表,将提交的数据都保存在订单库,并且以订单ID分库,规避为单库内事务。如:

受理直接保存订单及档案库,需要保持的数据及分片:

订单,保存在订单数据中心订单表,根据订单ID散列的切片;

客户,保存在客户数据中心客户表,根据客户ID散列的切片;

产品实例,保存在客户数据中心产品实例表,根据客户ID散列的切片

一次订单提交,需要保持不同的数据库节点。

在订单库中建立过程表,将提交的过程数据存放到订单中心,并以订单ID作为分片标识:

订单,保存在订单数据中心订单表,根据订单ID散列的切片;

客户,保存在订单数据中心过程客户表,根据订单ID散列的切片;

产品实例,保存在订单数据中心过程产品实例表,根据订单ID散列的切片

达到一次订单提交,数据保存在同一分片中,将多数据库事务,规避为单数据库事务。

2.2.2订单竣工、归档

事务拆解,将事务分解为具有幂等性子执行服务,通过应用进行异常补偿,保证最终一致。

场景说明:

按现有的数据分片模式,订单数据、客户资料数据存储的分片不同

订单竣工,作为一个整体业务,需要保证该场景的订单状态、流程状态、客户资料数据一起更改

方案说明:

将订单竣工服务,分解为:订单节点服务、客户节点服务、产品档案节点服务,进行按顺序处理,最终达到整个订单竣工的完成。

对订单表增加一些事务ID、事务状态等控制字段,进行处理过程标记。

有单独的队列,对出现异常的订单进行重复执行,达到最后数据一致性。

2.2.3数据同步

较长时间时延,允许12小时及以上,并且不具有事务性数据,可以采用时间戳方式进行数据同步。

场景说明

如:数据同步给ODS,可以采用时间戳方式。每次数据更新,同时更新时间戳,定期通过轮询等方式将数据抽取。

三、结束语

分布式事务是一个大话题,本文就CRM的关键场景的分布式存储情况下的事务处理方案进行初步设计,对解决分布式事务一致性提供了参考方案,后续需要不断的进行细化。

参考文献

[1]:Laurence.关于分布式事务、两阶段提交、一阶段提交、BestEfforts1PC模式和事务补偿机制的研究[EB/OL].http:///bluishglc/article/details/7612811

中国新通信2016年22期

中国新通信的其它文章

EPON网络故障原因分析及处理研究

CSFB全程呼叫成功率提升

信息与计算机科学技术的综合分析

浅谈超市管理系统的设计与开发

基于ASP.NET的人事考评系统的设计与实现

无线定位系统在车-车通信中的应用

?

-全文完-

文档评论(0)

151****6160 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档