一种基于B\S架构实现数据管理与共享交换的平台的制作方法

文档序号:12748128阅读:408来源:国知局
一种基于B\S架构实现数据管理与共享交换的平台的制作方法与工艺

技术领域

本发明属于大数据的数据交换挖掘分析技术,具体涉及一种基于B\S架构实现数据管理与共享交换的平台。



背景技术:

在数据管理与共享交换领域,由于不同原始数据库中的数据的来源、格式不一样,大大提高了数据整合的难度,日前市面上较为流行的用于解决此类问题的技术主要有:基于C\S架构的ETL工具、实现多级的数据交换的方法。

市面上的ETL工具,实质上就是一种基于ETL技术、以实现快速开发为目的的开发工具,也可以将其视为提供辅助开发工具的技术平台,ETL分别是“Extract”、“Transform”、“Load”三个单词的首字母缩写,也就是“抽取”、“转换”、“装载”,我们通常简称其为数据抽取,主要负责将不同的数据源中的数据如关系数据、平面数据文件等抽取到临时中间层后进行清洗、转换、集成,最后加载到数据仓库或数据集市中,成为联机分析处理、数据挖掘的基础。

(一)ETL工具的不足之处:

ETL工具作为一种开发工具技术平台,重心放在数据交换的动作本身,缺乏对整个交换过程以及相关业务的辅助与管理。换句话说,大部分ETL工具没有管理功能,只能基于库表做数据交换工作。

1、安全性低。这种直接操作数据库的方式,给数据安全性埋下了极大的隐患。由于缺乏严格的加密过程,使用者可以直接导出数据库的数据给到第三方,存在数据外涉的风险。尽管可以采用如账户、口令和权限控制等访问控制方式来限制,但实际上这些策略的作用并不大。

2、操作性不佳。本质上,ETL本身是编程,ETL过程也是编程; ETL本身与数据库连接,ETL过程也是在与异构数据库连接。虽然ETL对异构数据源的支持和可拓展能力较为优良,但是如果操作者想要处理好这个过程,还是需要有比较好的综合编程能力,具备有一定的开发技术基础;而且整个配置过程的工作量比较大。

3、维护和升级成本高。ETL工具采用C\S架构,需要针对不同的操作系统开发不同版本的软件,很难适应百台电脑以上局域网用户同时使用,而且代价高、效率低; 如果需要进行升级,其过程的工作量也十分巨大。

(二)实现多级的数据交换的方法的不足之处:

目前,市面上也出现了一些关于数据交换领域的技术方法研究,针对数据交换的多级需求提出了有效的技术方法论,对ETL工具的数据整合能力进行了补充与拓展。但是,主要还是停留在技术平台的层面,缺乏从业务逻辑层面进行整体架构的设计与规划。



技术实现要素:

针对上述问题,本发明提出一种基于B\S架构实现数据管理与共享交换的平台,是在ETL工具的雏形基础上改进而来,主要以B\S架构体系为设计指导,实现数据的动态管理与共享交换,解决当前ETL工具存在的业务逻辑差、安全性低、操作性不佳、维护和升级成本高等问题,其具体技术内容如下:

一种基于B\S架构实现数据管理与共享交换的平台,其包括目录管理模块、数据交换模块、数据管理模块、数据应用模块、业务管理模块、审计管理模块、系统管理模块,以及信息资源库,该信息资源库包括基础库、交换库、运行库、治理库;

该目录管理模块用于提供对成员单元的注册登记管理功能,建立信息共享目录,提供共享资源定位服务;

该数据交换模块用于为成员单元提供高效、安全、可靠的数据交换服务,实现增量采集和按需分发,提供统一的数据交换接口,支持数据库、文件、Web Services、Excel导入导出、文件上传、数据查询、人工应答七种交换方式,实现交换管理以及交换运行监控;

该数据管理模块用于提供基于数据主题数据标准管理,实现对采集到平台的数据进行审核校验、基准关联、处理比对等数据处理功能;

该数据应用模块用于提供共享目录检索、共享数据查询、信息档案展现、基础信息统计分析功能以及数据治理服务;

该业务管理模块用于提供对成员单元接入和交换业务的管理功能,实现对信息共享申请、审核批准、授权确认等业务过程的信息管理和流程支持;

该审计管理模块用于对系统服务、数据提供和交换情况进行统计;

该系统管理模块用于提供用户管理、权限管理、日志管理和配置管理功能;

其中,该成员单元是指接入到平台的各个应用系统。

于本发明的一个或多个实施例当中,该业务库是由成员单元产生和管理的资源库,该交换库是成员单元提供或获取的交换数据的存储库。

于本发明的一个或多个实施例当中,该数据交换模块具有交换库、交换文件,对外的数据库接口和文件接口,以及对内的数据交换接口。

本发明的有益效果是:高度延续了ETL工具作为技术平台所具备的特点,又有效避开了ETL工具存在的不足,可以说是“源于ETL技术、高于ETL工具”,而且与市上其他数据交换技术\方法相比,也具有十分显著的优点与创新性。

1、采用B\S架构,实现了平台的升级与优化。本发明采用B\S分层架构体系来实现数据交换,将C\S架构下的服务器管理程序分为应用服务器和数据库服务器,在应用服务器实现发送、接收、WEB、MQ等系列服务,由数据库服务器进行数据读取和存储,减少了层与层之间的耦合作用,不仅可以简化应用系统的开发量,让开发人员能够更专注于核心业务逻辑的分析、设计和开发,还能保证数据的集中统一管理和存储安全。与C\S 架构相比,此架构下系统还具备以下优点:

一、数据安全性更高。分层结构将业务服务与数据存储相互独立和分离开,普通用户在进行业务操作时无法直接接触数据库,大大减少了数据外涉的风险。

二、配置要求更低。分层结构改变了C\S架构“胖客户端”的情况,缓解了前端的压力,从而降低了系统性能和配置的要求,节省了成本。

三、用户拓展性更强。只需管理员分配一个用户名和密码,用户只要在连接网络的情况下,不用安装任何专门的软件就可以随时随地进行操作。

四、维护和升级方式更简单。只需加强对服务器的管理,而且客户端零维护,在升级维护时只需要针对服务器进行操作而不需要考虑客户端,大大降低系统的运维成本。

五、数据共享性更强。数据可持久存储在云端,不用担心数据的丢失问题。

2、运用“可见可得”的页面操作管理思想,提高平台的操作便捷性。本发明在设计过程中,简化了数据的配置管理流程,实现了交换节点配置管理的可视化,无需技术基础,无需SQL语句,就可以在短时间内快速配置完一个交换任务,大大降低了平台对操作人员的技术要求,减少了繁琐的工作量。

3、采用“业务平台”和“好莱乌”式的框架模式,提高平台的可拓展性和灵活性。本发明采用“业务平台”的框架模式和模板方法模式(IOC,是Inversion of Control的简称)进行开发,以业务逻辑为核心,遵从“好莱乌原则”——我调用你,你不要调用我,控制权掌握在框架上,各业务组件相互独立,摆脱了你中有我,我中有他,要用他,就必须用到你、我的困局,保证了业务组件之间的相互独立。基于这种模式,所有的组件都是被动的,所有的组件初始化和调用都由容器负责,而且是可复用、可插拔的,大大降低了业务和框架的耦合,并且支持基于接口的编程,能够更灵活的满足平台与不同系统之间的对接和交换业务需求以及实现各类不同程度的变动与调整。

4、支持多种交换方式,满足不同场景下的数据交换需求。可以同时支持数据库、文件、Web Services、Excel导入导出、文件上传、数据查询、人工应答七种交换方式,并且实现交换管理以及交换进程的监控。

5、引入“对象”的新型表现形式,强化了数据关系的可视化能力。突破了传统的业务数据中采用“数据库表”的表现形式,引入“对象”的表现形式,实现基于“对象”的数据关系的可视化,改变单一的表格形式,方便用户更直观全面地掌握数据的交换轨迹。

6、采用XML作为数据的描述语言,解决了不同数据源之间数据标准不统一的问题。以XML作为联接具有不同格式的数据的中间语,以基于XML的消息处理作为基本的数据通讯方式,实现数据交换标准与内部数据结构的映射管理,解决了不同数据源之间数据格式不一致的问题,大大提高数据应用的效率。

附图说明

图1为本发明的总体架构示意图。

图2为本发明的各模块关系示意图。

图3为本发明的数据交换运行架构示意图。

具体实施方式

如下结合附图,对本申请方案作进一步描述:

参见附图1和2,一种基于B\S架构实现数据管理与共享交换的平台,其包括目录管理模块、数据交换模块、数据管理模块、数据应用模块、业务管理模块、审计管理模块、系统管理模块,以及信息资源库,该信息资源库包括基础库、交换库、运行库、治理库;

该目录管理模块用于提供对成员单元的注册登记管理功能,建立信息共享目录,提供共享资源定位服务;

该数据交换模块用于为成员单元提供高效、安全、可靠的数据交换服务,实现增量采集和按需分发,提供统一的数据交换接口,支持交换库、文件、Web Services、Excel导入导出、文件上传、数据查询、人工应答七种交换方式,实现交换管理以及交换运行监控;

该数据管理模块用于提供基于数据主题数据标准管理,实现对采集到平台的数据进行审核校验、基准关联、处理比对等数据处理功能;

该数据应用模块用于提供共享目录检索、共享数据查询、信息档案展现、基础信息统计分析功能以及数据治理服务;

该业务管理模块用于提供对成员单元接入和交换业务的管理功能,实现对信息共享申请、审核批准、授权确认等业务过程的信息管理和流程支持;

该审计管理模块用于对系统服务、数据提供和交换情况进行统计;

该系统管理模块用于提供用户管理、权限管理、日志管理和配置管理功能;

其中,该成员单元是指接入到平台的各个应用系统。

该业务库是由成员单元产生和管理的资源库,该交换库是成员单元提供或获取的交换数据的存储库。

参见附图3,数据交换实例,本发明的平台归结为中心交换节点与端交换节点,其中端交换节点对应该数据交换模块,其具有交换库、交换文件,对外的数据库接口和文件接口,以及对内的数据交换接口;中心交换节点提供交换数据的采集、分发服务,实现交换节点之间的数据路由和传送功能;各成员单元与端交换节点之间通过交换桥接进行交换数据的提供和获取,并实现业务数据和交换数据之间的转换。

端交换节点是交换平台中数据交换的起点或终点。数据交换过程可分为数据提供、数据采集、数据分发和数据获取四个阶段:

1)数据提供:数据从提供方的业务系统转换并传输到提供方的前置机;

2)数据采集:数据从提供方的前置机传输到中心节点的交换库;

3)数据分发:数据从中心节点的交换库传输到使用方的前置机;

4)数据获取:数据从使用方的前置机传输并转换到使用方的业务系统。

其中,数据提供和数据获取流程由交换桥接负责。

对于面向信息共享的交换,采取集中式的交换模式。即各成员单元通过前置机与数据中心互联,向数据中心提供数据,并从数据中心获取所需数据。数据中心负责从各成员单元增量采集数据,并按需分发数据到各成员单元的前置机交换库。成员单元只需面向数据中心交换平台开发实施一套数据交换接口。

对于面向业务协同的交换,采取集中与分布相结合的交换模式。交换双方分别是业务服务提供者(Service Provider)和业务服务使用者(Service Consumer),信息交换表现为交换双方业务服务的交互调用。市数据中心交换平台作为服务中介,提供统一的UDDI目录服务以及Web服务代理。在遵循SOA体系架构和Web Service技术规范的前提下,交换双方可以使用交换平台通用的交换服务接口,也可以自行协商确定业务服务接口,按要求注册到UDDI目录。

本发明可能涉及的专业术语解释:

1)交换节点(ExchangeNode)

交换节点是实现跨系统、跨区域信息传送、存储和处理的系统单元,分为中心节点和端节点两类。中心节点和端节点都可以作为信息交换的源点(ISource)或者目标点(IDestination),信息交换路由形式包括:一对一、一对多、多对一、多对多。中心节点负责信息交换路由规则的控制管理。

交换节点一般使用节点信息资源库即节点数据源(广义的数据源包括JDBC、WebService等)进行信息存储和共享访问。端节点数据源包含:前置交换库、多个业务库。中心节点数据源包含:中心交换库、多个成员交换库(对应端节点的前置交换库)、多个业务库。

2)交换服务(ExchangeService)

交换服务负责把交换数据由一个节点交换到另一个节点。交换服务包括三要素:来源节点(数据源)、目的节点(数据源)、交换内容(数据主题)。

3)交换桥接(Bridge)

交换桥接主要包括两方面功能,一是由业务系统向交换节点(端节点)提供数据,二是从前置机获取数据到业务系统。交换桥接包括三要素:来源(业务系统数据源)、目的(端节点数据源)、交换内容(业务表——主题)。

4)批次(BatchInfo)

批次是进行数据交换的最少单位,具有事务性,要么整个批次交换成功,要么整个失败。批次的产生有两种方式,一种是由交换桥接提供数据时,明确调用API划分成若干个业务批次,另一种是交换桥接没有划分批次,在交换时由交换引擎按系统默认值自动划分。批次记录数有上限,避免因记录数过大而无法交换或获取。

一个完整的批次包括:1、批次编号:唯一标识某个批次。2、来源节点。3、交换内容:数据主题。4、范围:开始版本戳、结束版本戳。5、数据记录基准修改时间。6、数据量(数据量属于这个批次的数据摘要,对运行没影响)

批次在数据提供的时候已经产生,此时写入业务库的时间版本戳及前置机交换库时间版本戳;在数据采集时,统一标记S_LAST_UPDATED为中心的基准修改时间(中心交换库时间),数据分发时使用中心的基准修改时间写入使用方的S_LAST_UPDATED。经过交换平台的数据,最终到使用方前置机交换库上,都采用中心的基准修改时间。

完整的批次信息保存在中心端。端节点的批次信息是中心端批次信息的一个子集。部门业务库时间版本戳可能为空。数据采集到中心交换库后,提供方前置机交换库时间版本戳及中心基准修改时间不为空。

5)分段(SegmentInfo)

在交换的传输过程,采用分段传输。例如一个批次的数据量为10万条记录,但在传输过程只每次可能只传输5000条记录。分段主要目的是缩小交换过程中的执行粒度,提高服务器资源的使用效率(例如在通过消息队列进行交换时,如果不分段,消息队列要能容纳整个批次的数据,分段后只需要容纳最大的分段数据即可)。分段信息属于过程信息,生命周期不超过一个批次的一次执行过程。分段信息不进行持久化操作,当一个批次数据交换过程被中止,下次执行时必须重头开始,暂不考虑对分段数据的重用。

6)交换任务(ExchangeTask)

交换任务是一次交换过程的工作单。描述从哪个节点(源节点)将何种交换内容(批次)交换哪个节点(目标节点);交换的发起方是谁(交换平台发起还是部门发起),任务开始时间结束时间,任务执行结果,实际传输的数据量。

一次交换任务负责运送一个批次的数据。一次交换服务执行负责交换一次交换任务。交换任务由交换服务产生。

7)服务上下文(ServiceContext)

服务上下文包括了服务定义信息以及运行时信息,它的生命周期与服务一致,随着服务的创建而创建,当服务删除时才消亡。每个交换服务有且仅有一个服务上下文对应。

8)服务工作者(ServiceWorker)

服务工作者是交换服务的执行对象,它的生命周期与服务一致,每个交换服务有且仅有一个服务上下文对应,但在实际上服务工作者的实例可以是按需创建的。

服务工作者执行一个交换服务有三个主要步骤:E-T-L。

(一)extractFromSource

服务工作者按批次读取源节点的批次数据集到工作空间。

(二)transform

服务工作者在工作空间处理批次数据集。

(三)loadToDestination

服务工作者把批次数据集从工作空间写入目标节点。

9)工作空间(Workspace)

工作空间可考虑可有多种形式:内存、临时表等。

(一)initWorkspace

初始化工作空间。

(二)transformBatch(预留)

在工作空间转换批次数据集。考虑可插拔方式,嵌入专业数据集成工具或者XML工具实现源数据集à目标数据集。

(三)clearWorkspace

清空工作空间。

上述优选实施方式应视为本申请方案实施方式的举例说明,凡与本申请方案雷同、近似或以此为基础作出的技术推演、替换、改进等,均应视为本专利的保护范围。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1