掌桥专利:专业的专利平台
掌桥专利
首页

基于数据仓库工具的跨平台数据共享方法

文献发布时间:2023-06-19 10:48:02


基于数据仓库工具的跨平台数据共享方法

技术领域

本发明涉及数据库技术领域,更具体地,涉及一种基于数据仓库工具的跨平台数据共享方法。

背景技术

随着共享概念的提出,税务共享也应运而生,为了实现税务共享,需要对不同的子系统进行集成,从而实现税务共享。但是在集成过程中会遇到子系统之间数据库不匹配的情况,通过java代码的方式来处理如果遇到数据库改动则需要改动代码,灵活性不高。

目前,一些企业应用了单独税务管理系统平台,但是和财务共享服务平台没有实现对接与融合,系统间数据无法实现共享,导致一些数据在两个或多个系统中要进行分别录入,增加了重复性的低效率劳动,增加了税务管理成本。同时由于系统庞大功能繁多,需要同步的数据复杂繁多。常用的普通接口(如:webservice数据同步接口)同步数据会过多占用系统资源,导致系统响应时间过长,因此,合理地利用和优化现有的财务共享服务平台,减少信息化的重复投入,实现多平台共享数据,对税务、财务进行一体化的管理是目前财务共享服务中心转型的必然选择。

发明内容

本发明的目的是提出一种基于数据仓库工具的跨平台数据共享方法,实现税务管理系统平台和财务共享服务平台之间的数据共享,且不占用各个系统的运行资源,大大降低各个系统的运行压力。

为实现上述目的,本发明提出了一种基于数据仓库工具的跨平台数据共享方法,包括:

配置转换数据源,建立需要转换的来源数据库与目标数据库之间的连接,所述来源数据库为税务管理系统平台的数据库,所述目标数据库为财务共享服务平台的数据库;

建立表输入脚本,用于从所述来源库抽取出表信息;

创建java脚本,用于对所述来源数据库中的数据进行抽取和处理;

建立插入更新脚本,配置表字段和装载目标表信息,用于将抽取并完成处理的数据装载入所述目标数据库对应的表中;

建立SQL脚本,编写删除语句,用于实现所述来源数据库与所述目标数据库的同步删除功能;

将所述SQL脚本、所述表输入脚本、所述java脚本、所述插入更新脚本依次顺序连接,以完成转换脚本文件的建立;

建立运行所述转换的作业脚本文件,并设定作业时间。

可选地,所述配置转换数据源包括:

分别创建来源库数据源和目标库数据源,以建立所述来源数据库与所述目标数据库之间的连接。

可选地,所述建立表输入脚本包括:

新建表输入脚本,并在新建的表输入脚本中编写用于从所述来源数据库抽取出表信息的sql语句。

可选地,所述建立插入更新脚本包括:

新建插入更新脚本,配置表字段和装载目标表信息,以实现将抽取并完成处理的数据装载入所述目标数据库对应的表中。

可选地,所述java脚本具体用于:

通过java代码将抽取出的数据中的部分字段进行非空处理。

可选地,所述插入更新脚本具体用于:

将所述来源数据库和所述目标数据库中的表字段对应,设置主键比较,根据所述主键,判断每条数据应是新增更新或删除。

可选地,所述新建作业脚本文件,并设定作业时间包括:

新建作业脚本文件,将建立完成的所有转换按顺序摆放,并设定作业脚本文件的定时调度时间。

可选地,在建立所述作业脚本文件之后还包括:

连接资源库,并根据需求创建角色信息和角色权限信息,所述资源库用于保存创建的所述转换和所述作业脚本文件。

可选地,所述数据仓库工具为Kettle工具,所述Kettle工具包括转换脚本、作业脚本文件脚本和多种资源库。

可选地,在建立运行所述转换的作业脚本文件之前,还包括:

运行建立的所述转换脚本文件,以测试是否能够正确运行。

本发明的有益效果在于:

基于数据仓库工具通过:配置转换数据源建立需要转换的来源数据库与目标数据库之间的连接,建立表输入脚本从所述来源库抽取出表信息,创建java脚本对所述来源数据库中的数据进行抽取和处理,建立插入更新脚本配置表字段和装载目标表信息,将抽取并完成处理的数据装载入所述目标数据库对应的表中,建立SQL脚本并编写删除语句,用于实现来源数据库与目标数据库的同步删除功能,然后将所述SQL脚本、所述表输入脚本、所述java脚本、所述插入更新脚本依次顺序连接,以完成转换脚本文件的建立,最后建立运行所述转换的作业脚本文件,并设定作业时间,实现了实现税务管理系统平台和财务共享服务平台之间数据跨平台共享,在多个系统不同平台之间实现数据共享统一管理,只需要确定所需要共享的数据来源及目标,其可快速实现共享,无需大量代码编写,且不占用各个系统的运行资源,大大降低了各个系统的运行压力,而且做到了实时同步共享,降低了因数据变更而未及时同步所带来的风险。

进一步地,基于资源库,系统操作员可根据操作实际情况,在权限集中管理的系统中实时地创建新的角色、用户等权限信息,或者录入新数据信息。

本发明的装置具有其它的特性和优点,这些特性和优点从并入本文中的附图和随后的具体实施方式中将是显而易见的,或者将在并入本文中的附图和随后的具体实施方式中进行详细陈述,这些附图和具体实施方式共同用于解释本发明的特定原理。

附图说明

通过结合附图对本发明示例性实施例进行更详细的描述,本发明的上述以及其它目的、特征和优势将变得更加明显,在本发明示例性实施例中,相同的参考标号通常代表相同部件。

图1示出了根据本发明的一种基于数据仓库工具的跨平台数据共享方法的步骤图。

图2示出了根据本发明的一个实施例的一种基于数据仓库工具的跨平台数据共享方法中插入更新脚本的配置数据源的配置界面图。

图3示出了根据本发明的一个实施例的一种基于数据仓库工具的跨平台数据共享方法中插入更新脚本的配置界面图。

图4示出了根据本发明的一个实施例的一种基于数据仓库工具的跨平台数据共享方法中作业脚本文件界面中转换顺序的示意图。

具体实施方式

下面将参照附图更详细地描述本发明。虽然附图中显示了本发明的优选实施例,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了使本发明更加透彻和完整,并且能够将本发明的范围完整地传达给本领域的技术人员。

图1示出了根据本发明的一种基于数据仓库工具的跨平台数据共享方法的步骤图。

如图1所示,一种基于数据仓库工具的跨平台数据共享方法,包括:

步骤S101:配置转换数据源,建立需要转换的来源数据库与目标数据库之间的连接,来源数据库为税务管理系统平台的数据库,目标数据库为财务共享服务平台的数据库;

在一个具体应用场景中,本发明的方法应用于税务管理系统与财务服务平台的共享服务模式的系统中,本步骤中,参考图2,通过数据仓库工具配置转换文件数据源,分别创建来源库数据源和目标库数据源,以建立来源数据库与目标数据库之间的连接。

其中,数据仓库工具为Kettle工具,Kettle工具包括转换脚本、作业脚本文件脚本和多种资源库。

具体地,数据仓库技术(ETL:Extract-Transform-load,即数据抽取、转换、装载的过程)是数据抽取(Extract)、清洗(Cleaning)、转换(Transform)、装载(Load)的过程。是构建数据仓库的重要一环,用户从数据源抽取出所需的数据,经过数据清洗,最终按照预先定义好的数据仓库模型,将数据加载到数据仓库中去。数据转换(Data transfer)是将数据从一种表示形式变为另一种表现形式的过程,数据从一种系统转移到另一种系统的时候,需要将数据转换到系统能够识别的格式。

Kettle是一个现有的ETL工具,ETL工具在数据仓库项目使用非常频繁,kettle也可以应用在以下一些场景:在不同应用或数据库之间整合数据、把数据库中的数据导出到文本文件、大批量数据装载入数据库、数据清洗、集成应用相关项目使用。kettle使用非常简单,通过图形界面设计实现做什么业务,无需写代码去实现,因此,kettle是以面向元数据来设计。kettle支持很多种输入和输出格式,包括文本文件,数据表,以及数据库引擎。另外,kettle强大的转换功能非常方便操纵数据。Kettle中有两种脚本文件,转换(transformation)和工作(job),transformation完成针对数据的基础转换,job则完成整个工作流的控制。

步骤S102:建立表输入脚本,用于从来源库抽取出表信息,创建java脚本,用于对来源数据库中的数据进行抽取和处理;

在上述具体应用场景中,新建表输入脚本,在脚本中编写sql语句,创建java脚本对抽取数据进行处理。

后台处理为:通过sql语句抽取出表信息,通过java代码将抽取出的数据进行处理,主要将部分字段进行非空处理,排除空字段对系统造成的影响。

步骤S103:建立插入更新脚本,配置表字段和装载目标表信息,用于将抽取并完成处理的数据装载入目标数据库对应的表中;

在上述具体应用场景中,参考图3,新建插入更新脚本,配置表字段和装载目标表信息,以实现将抽取并完成处理的数据装载入目标数据库对应的表中。

包括:将不同平台的表字段对应,设置主键比较,根据主键判断该条数据是新增更新还是删除。

步骤S104:建立SQL脚本,编写删除语句,用于实现来源数据库与目标数据库的同步删除功能;并将SQL脚本、表输入脚本、java脚本、插入更新脚本依次顺序连接,以完成转换脚本文件的建立;

在上述具体应用场景中,新建SQL脚本,编写删除语句。并且将所有脚本按SQL、表输入、java、插入更新顺序连接。然后运行建立的所述转换脚本文件,以测试是否能够正确运行。

步骤S105:建立运行转换的作业脚本文件,并设定作业时间。

在上述具体应用场景中,参考图4,新建作业,将所有转换按顺序摆放,例如将多个转换分别为转换1、转换2、转换3和转换4依次顺序摆放在作业脚本文件界面张,然后设定作业定时调度时间,例如设置间隔时间为5分钟,即每5分钟进行一次数据抽取、转换和载入,然后运行配置的作业。

本实施例中,在建立作业脚本文件之后还包括:

步骤S106:连接资源库,并根据需求创建角色信息和角色权限信息,资源库用于保存创建的转换和作业脚本文件。

在上述具体应用场景中,Kettle的资源库正可以将转换、作业等存储下来,构成一种协作平台。转换任务在资源库中是以文件夹形式分组管理的,用户可以自定义文件夹名称。具体地,选择Kettle支持Database Repository,然后配置数据库连接,配置完成并选择连接后,根据需求输入用户名密码,即可连接到指定的资源库,通过资源库系统操作员可根据操作实际情况在权限集中管理的系统中实时地创建新的角色、用户等权限信息,或者录入新数据信息,以便在多个系统不同平台之间实现数据共享统一管理。

综上,本发明通过ETL技术实现了数据跨平台共享,在多个系统不同平台之间实现数据共享统一管理,只需要确定所需要共享的数据来源及目标,其可快速实现共享,无需大量代码编写。系统操作员可根据操作实际情况,在权限集中管理的系统中实时地创建新的角色、用户等权限信息,或者录入新数据信息,然后数据由ETL同步方法在不同系统下的不同数据库之间进行同步共享,此方法不占用各个系统的运行资源,大大降低了各个系统的运行压力,而且做到了税务管理系统与财务共享服务平台数据的实时同步共享,降低了因数据变更而未及时同步所带来的风险。

以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。

相关技术
  • 基于数据仓库工具的跨平台数据共享方法
  • 一种基于数据仓库工具Hive组件的测试方法及系统
技术分类

06120112685688