网站首页  词典首页

请输入您要查询的论文:

 

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

    吴宇星

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

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

    一、引言

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

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

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

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

    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.关于分布式事务、两阶段提交、一阶段提交、Best Efforts 1PC模式和事务补偿机制的研究[EB/OL].http://blog.csdn.net/bluishglc/article/details/7612811

随便看

 

科学优质学术资源、百科知识分享平台,免费提供知识科普、生活经验分享、中外学术论文、各类范文、学术文献、教学资料、学术期刊、会议、报纸、杂志、工具书等各类资源检索、在线阅读和软件app下载服务。

 

Copyright © 2004-2023 puapp.net All Rights Reserved
更新时间:2025/2/6 0:54:04