适应多种数据库类型的数据导入方法、系统及装置与流程

文档序号:21362975发布日期:2020-07-04 04:37阅读:346来源:国知局
适应多种数据库类型的数据导入方法、系统及装置与流程

本申请涉及调度系统技术领域,特别是涉及一种适应多种数据库类型的数据导入方法、系统及装置、计算机设备、可读存储介质。



背景技术:

在应急调度系统中,很多行为目标是指向人。人员作为动作执行者的主体,因而把他称之为数据源。调度系统可以对联系人(通讯录)进行呼叫,发送短信,发送传真,发送邮件,召开视频会议,召开语音会议,发起广播通知,进行即时消息等一些列操作。

所以,联系人在整个系统中非常重要。现有技术中系统的联系人数据从何而来呢。大致分为两大类:手工从调度客户端导入excel的方式和调度客户端页面中一个个添加联系人。

首先,excel导入,必须得符合导入规范,数据格式要求严格,稍有差池,将会导入失败。而且excel的数据都是手工输入的,必须首先将联系人信息都输入到excel表格中,才能进行导入。这样既费时费力又容易出现错误。

其次,调度界面的添加功能。这个新增功能,需要管理员在新增页面一个一个联系人添加。输入联系人信息(工号、姓名、性别、电话,职业等)。这里,需要注意工号必须上唯一的。当添加联系人过多时,管理员的压力就非常大,一边输入联系人信息,还得检查工号是否被其他人占用。这样的操作无疑是增加了管理员的工作量,既费时费力又容易出现错误。

现有技术的以上两种方式都是既费时费力又容易出现错误的工作,且无法满足其他平台的对接工作。

因此,现有技术有待改进。



技术实现要素:

本发明针对上述现有技术中的技术问题,提供一种适应多种数据库类型的数据导入方法、系统及装置、计算机设备、可读存储介质,本发明可适应多种数据库类型的数据导入,数据导入方便可靠,既可节省人力物力又可避免出现错误,并且实现简单,可靠性高。

本发明的技术方案如下:

一种适应多种数据库类型的数据导入方法,其中,所述方法包括:

数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;

数据同步插件将获取的数据源发送至临时库;

数据接收方对临时库发来的数据进行分炼,提取有效数据;

将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留;

将进行比较后的数据转化为同一种格式类型的数据;

调用调度服务的导入接口,导入所述指定格式的数据给数据接收方。

所述适应多种数据库类型的数据导入方法,其中,所述数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取的步骤之前包括:

预先设置依次通信连接的:数据提供方、数据同步插件、临时库、以及数据接收方;其中,数据提供方向临时库推送数据;数据接收方需要从临时库获取数据;临时库存储来自第三方的数据表,对已存在的数据表进行备份;数据同步插件用于对数据进行物理统一,逻辑上进行隔离。

所述适应多种数据库类型的数据导入方法,其中,所述数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取的步骤之前包括:

设置与数据库对应配置文件,所述配置文件包含数据库链接的参数;

根据配置文件的具备标签内容及数据库引用,创建数据库链接。

所述适应多种数据库类型的数据导入方法,其中,

所述调用调度服务的导入接口,导入所述指定格式的数据给数据接收方的步骤之后包括:

设置下次数据同步参数;所述同步参数包括同步的频率和时间段。

所述适应多种数据库类型的数据导入方法,其中,所述数据接收方对临时库发来的数据进行分炼,提取有效数据的步骤包括:

本步骤将同步来的数据进行分炼,提取有效的数据。因为业务系统需要的数据可能与数据提供方提取数据存在差异。同时,业务系统需要的数据,数据提供方不一定具备,就需要在程序里生成一部分数据,供系统使用。

所述适应多种数据库类型的数据导入方法,其中,所述将进行比较后的数据转化为同一种格式类型的数据的步骤包括:

过滤完需要的数据后,以组织架构的形式将数据转化为json格式。

一种适应多种数据库类型的数据导入系统,其中,所述系统包括:

依次通信连接的:数据提供方、数据同步插件、临时库、以及数据接收方;

数据提供方把表结构及数据通过数据同步插件将数据交换至临时库;数据接收方通过临时库获取数据;

其中,数据提供方向临时库推送数据;数据接收方需要从临时库获取数据;

临时库存储来自第三方的数据表,对已存在的数据表进行备份;

数据同步插件用于对数据进行物理统一,逻辑上进行隔离;

数据提供方提供基础表,并向数据接收方提供关联关系说明;

数据提供方负责维护临时库,即为数据接收方创建只读用户及表空间;

数据接收方需提供所需数据字段列表,得到客户审批后,交由数据提供方提供数据。

一种适应多种数据库类型的数据导入装置,其中,包括:

获取控制模块,用于控制数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;

发送控制模块,用于控制数据同步插件将获取的数据源发送至临时库;

提取控制模块,用于控制数据接收方对临时库发来的数据进行分炼,提取有效数据;

比对控制模块,用于控制将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留;

格式控制模块,用于控制将进行比较后的数据转化为同一种格式类型的数据;

导入控制模块,用于控制调用调度服务的导入接口,导入所述指定格式的数据给数据接收方。

一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其中,所述处理器执行所述计算机程序时实现任一项所述适应多种数据库类型的数据导入方法的步骤。

一种计算机可读存储介质,其上存储有计算机程序,其中,所述计算机程序被处理器执行时实现任一项所述的适应多种数据库类型的数据导入方法的步骤。

与现有技术相比,本发明实施例具有以下优点:

提供一种适应多种数据库类型的数据导入方法、系统及装置、计算机设备、可读存储介质,所述方法采用数据提供方把表结构及数据通过数据同步插件将数据交换至临时库。数据接收方通过临时库获取数据。本发明可适应多种数据库类型的数据导入,数据导入方便可靠,既可节省人力物力又可避免出现错误,并且实现简单,可靠性高。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明实施例的一种适应多种数据库类型的数据导入方法的数据分段处理结构示意图。

图2为本发明实施例的一种适应多种数据库类型的数据导入方法的流程示意图。

图3为本发明实施例的一种适应多种数据库类型的数据导入方法的数据同步流程图流程示意图。

图4为本发明实施例的一种适应多种数据库类型的数据导入方法的插件执行流程图。

图5为本发明实施例中一种适应多种数据库类型的数据导入装置的结构示意图。

图6为本发明实施例中计算机设备的内部结构图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

发明人经过研究发现,现有技术中联系人数据大致分为两大类:手工从调度客户端导入excel的方式和调度客户端页面中一个个添加联系人。首先,excel导入,必须得符合导入规范,数据格式要求严格,稍有差池,将会导入失败。而且excel的数据都是手工输入的,必须首先将联系人信息都输入到excel表格中,才能进行导入。这样既费时费力又容易出现错误。

其次,调度界面的添加功能。这个新增功能,需要管理员在新增页面一个一个联系人添加。输入联系人信息(工号、姓名、性别、电话,职业等)。这里,需要注意工号必须上唯一的。当添加联系人过多时,管理员的压力就非常大,一边输入联系人信息,还得检查工号是否被其他人占用。这样的操作无疑是增加了管理员的工作量,既费时费力又容易出现错误。

现有技术的以上两种方式都是既费时费力又容易出现错误的工作,且无法满足其他平台的对接工作的技术问题。

为了解决上述问题,在本发明实施例中,所述方法采用数据提供方把表结构及数据通过数据同步插件将数据交换至临时库。数据接收方通过临时库获取数据。本发明可适应多种数据库类型的数据导入,数据导入方便可靠,既可节省人力物力又可避免出现错误,并且实现简单,可靠性高。

下面结合附图,详细说明本发明的各种非限制性实施方式。

如图1所示,本发明实施例中,将处理数据的部分划分为依次通信连接的:数据提供方100、数据同步插件200、临时库(临时数据库)300、以及数据接收方;其中,数据提供方把表结构及数据通过数据同步插件将数据交换至临时库。数据接收方通过临时库获取数据。

其中,数据提供方需要向临时库推送数据。

数据接收方需要从临时库获取数据。

临时库存储来自第三方的数据表,对已存在的数据表进行备份。

数据同步插件用于对数据进行物理统一,逻辑上进行隔离。为了保证数据的一致性,避免触碰业务系统数据,数据同步插件不会直接向业务系统写入数据。

数据提供方提供基础表,并向数据接收方提供关联关系说明。

数据提供方负责维护临时库,即为数据接收方创建只读用户及表空间。

数据接收方需提供所需数据字段列表,得到客户审批后,交由数据提供方提供数据。

请参阅图1,图1示出了本发明实施例一种适应多种数据库类型的数据导入方法,所述方法包括以下步骤:

本发明实施例中数据同步插件步骤:

步骤s1:设置与数据库对应配置文件,所述配置文件包含数据库链接的参数;

本发明中设置配置文件,是因为配置文件里包含数据连接参数。例如,是否保存信息安全,数据库类型,要连接的数据库地址,数据库名称,数据库登录用户名,数据库登录密码,端口号,连接超时设置等。

数据库类型决定了,后台代码要引用哪种数据库引擎。配置文件里的其他参数,可以根据现场的实际情况进行填写。这样,部署到现场后,不用修改代码,只用修改配置文件。做到一处编译,多处运行。

配置文件里包含了数据库链接的参数,例如数据库ip,端口,数据库类型等。配置文件内容为后面的创建数据库链接创造先决条件。

步骤s2:根据配置文件的具备标签内容及数据库引用,创建数据库链接;

比如配置文件中,数据库类型为oracle数据库,那么就需要引用到oracle.manageddataaccess.dll或者oracle.dataaccess.dll。同样,端口号也会使用oracle的端口号。而如果连接的数据库类型为mysql数据库时,就需要引用mysql.data.dll,这是c#操作mysql的驱动文件,是c#连接mysql必要插件。相应的,端口号也会使用mysql的端口号。

这样以配置文件的形式,将数据库类型抽取出来,就是为了适应各种不同数据库类型。

当配置文件配好时,意味着知道了数据提供方是哪一种数据库。所以根据配置文件的具备标签内容,加上数据库引用,就可以迅速创建好数据库链接。

步骤s3:设置启动一定时器,通过定时器定时执行同步任务;

启动一个定时器(定时器任务有:1、从数据提供方获取数据,2、设置下次同步时间,3、从临时库中提取有效数据插入到业务库)。由于数据提供方的数据可能随时变化,一旦数据变动,数据接收方也需要实时更新。所以,利用定时器定时执行同步任务,这样就可以将双方数据统一起来。

步骤s4:数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;

前面已经建立了数据链接。插件程序从数据提供方获取数据,获取数据源时全表获取。

本发明中,数据同步插件从数据提供方获取多种数据库类型的数据源,全表获取是为了在网络获取中,尽量减少业务。将全表数据获取到本地后,再根据业务提取需要的数据。这样效率更高。比如,a的业务系统只需要获取工号,姓名,住址。而提供方不会专门为a设置一个这样的表。他只需要给a一个包含这些数据的一个表或者多个表。a通过同步插件将这个表或这些表的全部数据获取来,再从中提取个别字段。

本发明就是调度里面的数据从外部对接的。外部可能是各种类型的数据库,本发明后面的步骤会将这些从外部对接的数据变成同一种格式类型,然后同步到调度系统中。

步骤s5:数据同步插件将获取的数据源发送至临时库;

本步骤中将获取到的数据内容同步后全部插入到临时库中。在这一步操作时,没有对提供方的数据做任何改动。

本步骤中将获取到的数据内容同步到临时库中。因为临时库处于本地,操作更方便,且临时库既不会影响提供方的数据也不会影响本地系统库数据。只是作为一个数据存储仓存在。

步骤s6:数据接收方对临时库发来的数据进行分炼,提取有效数据。

本步骤将临时库发来来的数据进行分炼,提取有效的数据。

本步骤例如,调度系统只需要工号和姓名,可是通过提供方获取来的数据有很多,还包括工龄,部门,是否离职,离职时间等信息。对于调度系统不需要的字段,没必要同步到调度业务数据库中。所以从临时库中进行数据分炼,是为调度业务服务,也是各取所需的做法。

因为业务系统需要的数据可能与数据提供方提取数据存在差异。同时,业务系统需要的数据,数据提供方不一定具备,就需要在程序里生成一部分数据,供系统使用。

步骤s7:将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留。

本步骤中,读取业务库(数据接收方)中已存在的数据表。与临时库提取有效的数据进行比对,已存在的数据忽略,不存在的数据保留。

例如,每天凌晨对数据做一次同步。而提供方的数据可能并不是每天都发生变化。插件需要从临时库获取同步过来的数据,然后和接收方对应的数据表进行数据比对。如,一个叫张三的员工,基本信息没有改变,且处于在职状态。那么就没有必要更新张三的个人信息。而一个叫李四的员工,因为调换部门,从人事部门转为营销部门,那么就需要从接收方的数据表中找到李四,并更新李四的最新个人信息。这样的同步,可以使得提供方和接收方数据保存统一标准。而且数据永远是最新的。

步骤s8:将进行比较后的数据转化为同一种格式类型的数据。

过滤完需要的数据后,以组织架构的形式将数据转化为json格式。

json(javascriptobjectnotation,js对象简谱)是一种轻量级的数据交换格式。它基于ecmascript(欧洲计算机协会制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。

本发明中同步成调度需要的格式,比如现在调度系统需要json格式,就把数据转成json格式。

步骤s9:调用调度服务的导入接口,导入所述指定格式的数据给数据接收方。

服务端代码有专门的导入方法,调用此方法,传入正确格式的数据,可以将数据插入到业务库,也就是提供给数据接收方。

在进一步地实施例中,所述方法还包括步骤:

步骤s10:设置下次数据同步参数。

本发明实施例中设置下次数据同步参数,包括:同步的频率和时间段,其中,同步的频率和时间段可根据地方的特殊要求,在配置文件里进行设定。设定完成后,程序会根据本次同步时间自动计算下次同步的时间。做到数据实时更新,数据源统一。

具体地,如图3所示,本发明实施例所述方法,在实现数据同步时具体包括以下步骤:

步骤11、开始;

步骤12、服务器插件从第三方数据库获取联系人数据;并进入步骤13;

步骤13、连接数据库读取数据,并创建类存储读取数据,进入步骤14;

步骤14、将提供方数据库符合要求数据转换为json格式,并进入步骤15;

步骤15、调度服务器端服务接口,进入步骤16;

步骤16、将数据插入到业务库(数据接收方);

本发明中,调用调度服务的导入接口。服务端代码有专门的导入方法,调用此方法,传入正确格式的数据,可以将数据插入到业务库,也就是提供给数据接收方。

步骤17、结束;

具体地,如图4所示,本发明实施例所述方法,数据同步插件执行具体包括以下步骤:

步骤21、开始;

步骤22、加载配置信息;

本步骤中先要封装数据库连接对象,添加数据库连接引用;当配置文件配好时,意味着知道了数据提供方是哪一种数据库。所以,加载配置信息,根据配置文件的具备标签内容,加上数据库引用,就可以迅速创建好数据库链接。

步骤23、判断数据库类型;

步骤24、创建连接;

步骤25、启动定时器;

本发明中,启动定时器执行:1、从数据提供方(第三方数据库)获取数据,2、数据集合转换为json,3、调用服务导入方法。

步骤26、同步结束,关闭定时器;

步骤27、结束。

在一个实施例中,本发明提供了一种适应多种数据库类型的数据导入系统,如图5所示,所述系统包括:

获取控制模块41,用于控制数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;

发送控制模块42,用于控制数据同步插件将获取的数据源发送至临时库;

提取控制模块43,用于控制数据接收方对临时库发来的数据进行分炼,提取有效数据;

比对控制模块44,用于控制将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留;

格式控制模块45,用于控制将进行比较后的数据转化为同一种格式类型的数据;

导入控制模块46,用于控制调用调度服务的导入接口,导入所述指定格式的数据给数据接收方,具体如上所述。

在一个实施例中,本发明提供了一种计算机设备,该设备可以是终端,内部结构如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口、显示屏和输入系统。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种自然语言模型的生成方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入系统可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。

本领域技术人员可以理解,图6所示的仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。

本发明实施例提供了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其中,所述处理器执行所述计算机程序时实现以下步骤:

数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;

数据同步插件将获取的数据源发送至临时库;

数据接收方对临时库发来的数据进行分炼,提取有效数据;

将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留;

将进行比较后的数据转化为同一种格式类型的数据;

调用调度服务的导入接口,导入所述指定格式的数据给数据接收方;具体如上所述。

综上所述,与现有技术相比,本发明实施例具有以下优点:

提供一种适应多种数据库类型的数据导入方法、系统及装置、计算机设备、可读存储介质,所述方法包括:数据同步插件从数据提供方获取多种数据库类型的数据源,获取数据源时全表获取;数据同步插件将获取的数据源发送至临时库;数据接收方对临时库发来的数据进行分炼,提取有效数据;将数据接收方中已存在的数据表与临时库提取有效的数据进行比对,如果已存在的数据则忽略,不存在的数据保留;将进行比较后的数据转化为同一种格式类型的数据;调用调度服务的导入接口,导入所述指定格式的数据给数据接收方。本发明可适应多种数据库类型的数据导入,数据导入方便可靠,既可节省人力物力又可避免出现错误,并且实现简单,可靠性高。

以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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