一种saas模式的系统中海量数据变更日志的采集方法
【技术领域】
[0001] 本发明涉及数据处理技术领域,具体地说是一种实用性强、SAAS模式的系统中海 量数据变更日志的采集方法。
【背景技术】
[0002] 随着互联网技术的发展和应用软件的成熟,企业管理软件厂商将应用软件统一 部署在自己的服务器上,客户可以根据自己实际需求,通过互联网向厂商定购所需的应 用软件服务,按定购的服务多少和时间长短向厂商支付费用。这种应用模式称之为SaaS (Software-as-a-Service,软件即服务)。目前,尤其是对于许多小型企业来说,SaaS模式 是采用先进技术的最好途径,它消除了企业购买、构建和维护基础设施和应用系统的繁琐, 可有效降低采购及运营成本和风险。
[0003] 在企业管理软件系统的应用过程中,其交易数据和部分主数据,在业务处理过程 中会频繁的发生数据状态的变化。企业客户希望系统能够自动的记录这些数据变化情况, 在需要时可以方便的查看到特定数据的变化情况(人、时间、操作、数据变化);此外,这也通 常是一种行业业务审计要求(例如医药GSP行业规定)。最后,基于数据变化情况,可做针对 性的统计、分析,对系统数据的变化规律性有更深刻和清晰的认识,反过来用于企业及应用 系统的改进、优化。
[0004] 而企业管理软件系统中需要记录数据状态变更的数据种类繁多,分布广。为了提 高开发及维护效率,系统通常会提供可复用的实现机制和框架,尽量减少具体的业务为了 实现业务变更日志带来较多的开发及维护的开销。
[0005] 在SaaS的应用模式下,由于众多的客户应用系统是集中部署的,会造成这种数据 状态变更记录并发集中且会产生海量的数据存储,如何能够高效、可靠、低消耗的采集变更 数据,是一个很有价值的问题。基于此,现提供一种SAAS模式的系统中海量数据变更日志 的采集方法。
【发明内容】
[0006] 本发明的技术任务是针对以上不足之处,提供一种实用性强、SAAS模式的系统中 海量数据变更日志的采集方法。
[0007] -种SAAS模式的系统中海量数据变更日志的采集方法,其具体实现过程为: 定义变更数据的实体步骤,该变更数据的实体结构包含以下实体:变更主体、行为、变 更数据环境信息、变更数据详细信息,该步骤中的实体均支持属性的扩展,并且支持按变更 主体实体中的租户标识,提供不同的属性扩展设置; 定义变更数据采集的步骤,即定义变更数据采集的应用拓扑,该拓扑的架构包括一个 数据采集客户机、服务器,该数据采集客户机的客户端部署到需要记录数据变更的各个服 务器节点上,数据采集的服务器提供数据采集数据的接收和持久化存储。
[0008] 变更主体实体包含以下信息:租户标识、执行者标识;行为实体包括:功能标识、 操作标识;变更数据环境信息包括:客户端信息、服务器信息、变更时间、说明信息;变更数 据详细信息包括:变更数据分类标识、变更数据标识、变更数据内容集合。
[0009] 所述变更数据内容集合包含一条或多条变更数据内容记录,该变更数据内容记录 包括:实体标识、变更数据标识、属性标识、动作、原值、新值;上述动作内置三个枚举值:C、 U、D,分别表示创建、更新、删除三个动作。
[0010] 所述数据采集客户机和服务器之间采用异步消息通信机制进行通信。
[0011] 所述数据采集客户机中包含三个模块:数据采集服务接口模块、数据缓存模块、数 据发送模块,其中数据采集服务接口模块提供外部应用程序调用;数据缓存模块,提供数据 变更数据的客户机缓存功能,当外部数据变更数据输入时,可快速的将输入的变更数据信 息写入到本地缓存中;数据发送模块,负责定时扫描数据缓存模块中缓存的变更数据,批量 的发送给服务器。
[0012] 本发明的一种SAAS模式的系统中海量数据变更日志的采集方法,具有以下优点: 本发明提出的一种SAAS模式的系统中海量数据变更日志的采集方法,提供了一种通 用的变更数据记录标准,并提供了良好的扩展性;通过在数据采集客户机建立记录、发送分 离的机制,可保证数据采集的可靠性、性能,并有效的降低数据采集服务器的并发压力,实 用性强,易于推广。
【附图说明】
[0013] 附图1是本发明的变更数据的实体结构图。
[0014] 附图2是本发明的变更数据采集架构图。
【具体实施方式】
[0015] 下面结合附图和具体实施例对本发明作进一步说明。
[0016] 本发明公开了一种SAAS模式的系统中海量数据变更日志的采集方法,如附图1、 图2所示,其具体实现过程包括: 定义变更数据的实体步骤,该变更数据的实体结构包含以下实体:变更主体、行为、变 更数据环境信息、变更数据详细信息,该步骤中的实体均支持属性的扩展,并且支持按变更 主体实体中的租户标识,提供不同的属性扩展设置; 定义变更数据采集的步骤,即定义变更数据采集的应用拓扑,该拓扑的架构包括一个 数据采集客户机、服务器,该数据采集客户机的客户端部署到需要记录数据变更的各个服 务器节点上,数据采集的服务器提供数据采集数据的接收和持久化存储。
[0017] 变更主体实体包含以下信息:租户标识、执行者标识;行为实体包括:功能标识、 操作标识;变更数据环境信息包括:客户端信息、服务器信息、变更时间、说明信息;变更数 据详细信息包括:变更数据分类标识、变更数据标识、变更数据内容集合。
[0018] 所述变更数据内容集合包含一条或多条变更数据内容记录,该变更数据内容记录 包括:实体标识、变更数据标识、属性标识、动作、原值、新值;上述动作内置三个枚举值:C、 U、D,分别表示创建、更新、删除三个动作。此外动作枚举值可自定义扩展。
[0019] 所述数据采集客户机和服务器之间采用异步消息通信机制进行通信。
[0020] 所述数据采集客户机中包含三个模块:数据采集服务接口模块、数据缓存模块、数 据发送模块,其中数据采集服务接口模块提供外部应用程序调用;数据缓存模块,提供数据 变更数据的客户机缓存功能,当外部数据变更数据输入时,可快速的将输入的变更数据信 息写入到本地缓存中;数据发送模块,负责定时扫描数据缓存模块中缓存的变更数据,批量 的发送给服务器。其中,定时扫描的时间间隔、每批次发送的数据量可通过程序参数设置。 在服务器发送成功后,会同时在本地缓存中将相应缓存数据删除。
[0021] 进一步的,数据采集服务接口,提供的接口定义的伪代码如下: void RecChangeData(Principal actor,Operation op>Environment evn、DetailData detailData); 其中Principal为变更主体;Operation行为实体;Environment为变更数据环境信 息;DetailData为变更数据详细信息。
[0022] 实施例: 首先设定在同一个软件产品的SaaS应用中有两个租户,Tl、T2。
[0023] 在软件产品中,当登录用户信息变化时,都会记录变更数据。用户实体的主要属性 如下:RowID、UID、UName、UPassword、Note。此外用户实体包含一个用户所属角色的子实 体,包含RowID、HD、RID三个属性。
[0024] 当系统管理员admin打开"用户维护"(标识为F001)功能,对某个特定用户UOl 进行修改时,修改Note字段值,由空值变为"兼职人员",删除了原有的1个角色R1,添加了 另外1个角色R3。并点击保存。保持对应的动作为"Save"。
[0025] 用户保存逻辑中,提取到的数据变更实体信息如下: 主实体信息:
【主权项】
1. 一种SAAS模式的系统中海量数据变更日志的采集方法,其特征在于,其具体实现过 程为: 定义变更数据的实体步骤,该变更数据的实体结构包含以下实体:变更主体、行为、变 更数据环境信息、变更数据详细信息,该步骤中的实体均支持属性的扩展,并且支持按变更 主体实体中的租户标识,提供不同的属性扩展设置; 定义变更数据采集的步骤,即定义变更数据采集的应用拓扑,该拓扑的架构包括一个 数据采集客户机、服务器,该数据采集客户机的客户端部署到需要记录数据变更的各个服 务器节点上,数据采集的服务器提供数据采集数据的接收和持久化存储。
2. 根据权利要求1所述的一种SAAS模式的系统中海量数据变更日志的采集方法,其特 征在于,变更主体实体包含以下信息:租户标识、执行者标识;行为实体包括:功能标识、操 作标识;变更数据环境信息包括:客户端信息、服务器信息、变更时间、说明信息;变更数据 详细信息包括:变更数据分类标识、变更数据标识、变更数据内容集合。
3. 根据权利要求2所述的一种SAAS模式的系统中海量数据变更日志的采集方法,其特 征在于,所述变更数据内容集合包含一条或多条变更数据内容记录,该变更数据内容记录 包括:实体标识、变更数据标识、属性标识、动作、原值、新值;上述动作内置三个枚举值:C、 U、D,分别表示创建、更新、删除三个动作。
4. 根据权利要求1所述的一种SAAS模式的系统中海量数据变更日志的采集方法,其特 征在于,所述数据采集客户机和服务器之间采用异步消息通信机制进行通信。
5. 根据权利要求4所述的一种SAAS模式的系统中海量数据变更日志的采集方法,其特 征在于,所述数据采集客户机中包含三个模块:数据采集服务接口模块、数据缓存模块、数 据发送模块,其中数据采集服务接口模块提供外部应用程序调用;数据缓存模块,提供数据 变更数据的客户机缓存功能,当外部数据变更数据输入时,可快速的将输入的变更数据信 息写入到本地缓存中;数据发送模块,负责定时扫描数据缓存模块中缓存的变更数据,批量 的发送给服务器。
【专利摘要】本发明公开了一种SAAS模式的系统中海量数据变更日志的采集方法,其具体实现过程为:定义变更数据的实体步骤,该变更数据的实体结构包含以下实体:变更主体、行为、变更数据环境信息、变更数据详细信息;定义变更数据采集的步骤,即定义变更数据采集的应用拓扑,该拓扑的架构包括一个数据采集客户机、服务器,该数据采集客户机的客户端部署到需要记录数据变更的各个服务器节点上,数据采集的服务器提供数据采集数据的接收和持久化存储。该一种SAAS模式的系统中海量数据变更日志的采集方法与现有技术相比,定义了一种通用的变更数据记录标准,并可保证在SaaS应用环境海量变更数据采集的可靠性、性能,实用性强。
【IPC分类】G06Q10-06
【公开号】CN104700221
【申请号】CN201510118348
【发明人】孙立新, 王延东, 魏亮
【申请人】浪潮集团有限公司
【公开日】2015年6月10日
【申请日】2015年3月18日