CN104615637A - 数据交换方法及数据交换中间装置 - Google Patents
数据交换方法及数据交换中间装置 Download PDFInfo
- Publication number
- CN104615637A CN104615637A CN201410675395.5A CN201410675395A CN104615637A CN 104615637 A CN104615637 A CN 104615637A CN 201410675395 A CN201410675395 A CN 201410675395A CN 104615637 A CN104615637 A CN 104615637A
- Authority
- CN
- China
- Prior art keywords
- database
- different application
- data
- description file
- rule description
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种数据交换方法,包括:加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件;解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件;查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据;将过滤完的数据分别存入不同应用中的所述数据库目标表。本发明还提供了一种数据交换中间装置。本发明可使多个不同应用使用统一的业务逻辑访问数据库并生成不同应用所需的数据,实现功能复用,减少开发工作的复杂度,可以解除不同应用及其业务逻辑与数据源的耦合关系,令***更具扩展性,能适应多变的应用需求。
Description
技术领域
本发明涉及计算机通信领域,尤其涉及集成多应用***的数据交换方法及数据交换中间装置。
背景技术
目前的集成多应用***,将部署的各现场设备采集的数据汇集到***后台数据库,应用软件根据应用的业务逻辑访问数据库并向用户端推送信息。随着应用需求的变化,业务逻辑逐渐丰富、复杂,单一应用软件处理多个业务的方式缺乏灵活性,难以适应应用的发展;多个应用运行各自的业务逻辑并访问数据库的方式,又面临很多功能重复开发的投入。
综上所述,现有技术中至少存在如下问题:多个应用运行各自的业务逻辑并访问数据库,导致重复开发,不同应用无法使用统一的业务逻辑访问数据库,无法实现功能复用、减少开发工作。
发明内容
为克服现有技术中多个应用运行各自的业务逻辑并访问数据库,导致重复开发,不同应用无法使用统一的业务逻辑访问数据库,无法实现功能复用、减少开发工作的问题,本发明实施例一方面提供了一种数据交换方法,包括:
加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据;
将过滤完的数据分别存入不同应用中的所述数据库目标表。
另一方面,本发明实施例提供了一种数据交换中间装置,包括:
加载模块,用于加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
解析模块,用于解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
查询过滤模块,用于查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据;
分存模块,用于将过滤完的数据分别存入不同应用中的所述数据库目标表。
本发明实施例通过数据交换中间装置,加载、解析所有不同应用的规则描述文件,并执行数据查询、过滤及分存的操作,使多个不同应用可以通过该数据交换中间装置使用统一的业务逻辑即上述数据交换方法访问数据库并生成不同应用所需的数据,实现功能复用,减少开发工作的复杂度,可以解除不同应用及其业务逻辑与数据源的耦合关系,令***更具扩展性,能适应多变的应用需求。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的数据交换方法的第一实施例的流程示意图;
图2为本发明的数据交换方法的第二实施例的流程示意图;
图3为本发明的数据交换中间装置的第一实施例的结构示意图;
图4为本发明的解析模块的实施例的结构示意图;
图5为本发明的数据交换中间装置的第二实施例的结构示意图。
具体实施方式
为了使本发明所解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
请参照图1,是本发明的数据交换方法的第一实施例的流程示意图,本发明的数据交换方法包括:
步骤S101,加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
本步骤中,所述不同应用,如果是校园内的应用,可以是学生是否正常到校的考勤查询应用、学生成绩查询应用、留言应用等多种具有不同需求的不同应用;如果是企业内的应用,可以是办公OA应用、考勤应用、客户信息化应用、供应链应用等;还可以是其他行业的一些类似应用。
本步骤中,由主进程统一加载所有不同应用的规则描述文件,根据不同应用的规则描述文件剥离出不同规则描述文件需要操作的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
本步骤中,规则描述文件可动态加载,规则描述文件使用json(英文全称为JavaScript Object Notation,是一种轻量级的数据交换格式。它是基于JavaScript(Standard ECMA-2623rd Edition-December 1999)的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。)语言描述,对人与计算机的阅读同样友好,可由外部进行增加、删除和修改操作。
步骤S102,解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
具体地,本步骤包括:
解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码。本步骤中,所述数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。
解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名。
解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名。本步骤中,如果数据库目标表不存在,则根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表,即根据数据库源表复制出一个数据结构完全一样的数据库目标表。
解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。本步骤中,所述数据过滤条件,可以根据应用的不同需求而不同,可以是时间、数字、内容等过滤条件。另外,本步骤中建立的条件数据结构,是由数据过滤条件转换成的程序所能识别的条件数据结构,一般由哈希表、数组、数值、字符串、布尔值组成。
步骤S103,查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据。
本步骤具体包括:查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
步骤S104,将过滤完的数据分别存入不同应用中的所述数据库目标表。
本发明方法实施例通过加载、解析所有不同应用的规则描述文件,并执行数据查询、过滤及分存的操作,使多个不同应用可以通过本方法使用统一的业务逻辑访问数据库并生成不同应用所需的数据,实现功能复用,减少开发工作的复杂度,可以解除不同应用及其业务逻辑与数据源的耦合关系,令***更具扩展性,能适应多变的应用需求。
请参照图2,是本发明的数据交换方法的第二实施例的流程示意图,本发明的数据交换方法包括:
步骤S201,根据不同应用的需求,接收通过任一款文本编辑器对不同应用的规则描述文件的直接修改、保存操作。
本步骤中,所述不同应用的规则描述文件使用json(英文全称为JavaScript Object Notation,是一种轻量级的数据交换格式。它是基于JavaScript(Standard ECMA-2623rd Edition-December 1999)的一个子集。JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C,C++,C#,Java,JavaScript,Perl,Python等)。这些特性使JSON成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成。)语言描述,对人与计算机的阅读同样友好,可由外部通过任一款文本编辑器对其进行增加、删除或修改操作。
步骤S202,根据上述修改、保存操作,在规则描述文件的属性中生成更新的时间戳信息。
本步骤中,只要规则描述文件有修改,则在规则描述文件的属性中生成更新的时间戳信息,为识别规则描述文件是否有被修改提供判断依据。
步骤S203,接收重启指令。
本步骤中,重启指令可由操作人员或监控平台通过终端控制台程序实现。
步骤S204,根据重启指令,读取规则描述文件的属性中的时间戳信息。
本步骤中,读取规则描述文件的属性中的时间戳信息,是为了识别规则描述文件是否有被修改。
步骤S205,若读取的时间戳信息为更新的时间戳信息,则动态加载修改后的规则描述文件,该修改后的规则描述文件同样包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
本步骤中,所述不同应用,如果是校园内的应用,可以是学生是否正常到校的考勤查询应用、学生成绩查询应用、留言应用等多种具有不同需求的不同应用;如果是企业内的应用,可以是办公OA应用、考勤应用、客户信息化应用、供应链应用等;还可以是其他行业的一些类似应用。
本步骤中,由主进程统一加载所有不同应用的规则描述文件,根据不同应用的规则描述文件剥离出不同规则描述文件需要操作的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
步骤S206,解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
具体地,本步骤包括:
解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码。本步骤中,所述数据库连接是一种关键的有限的昂贵的资源,这一点在多用户的网页应用程序中体现得尤为突出。对数据库连接的管理能显著影响到整个应用程序的伸缩性和健壮性,影响到程序的性能指标。数据库连接池正是针对这个问题提出来的。数据库连接池负责分配、管理和释放数据库连接,它允许应用程序重复使用一个现有的数据库连接,而再不是重新建立一个;释放空闲时间超过最大空闲时间的数据库连接来避免因为没有释放数据库连接而引起的数据库连接遗漏。这项技术能明显提高对数据库操作的性能。数据库连接池在初始化时将创建一定数量的数据库连接放到连接池中,这些数据库连接的数量是由最小数据库连接数来设定的。无论这些数据库连接是否被使用,连接池都将一直保证至少拥有这么多的连接数量。连接池的最大数据库连接数量限定了这个连接池能占有的最大连接数,当应用程序向连接池请求的连接数超过最大连接数量时,这些请求将被加入到等待队列中。
解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名。
解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名。本步骤中,如果数据库目标表不存在,则根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表,即根据数据库源表复制出一个数据结构完全一样的数据库目标表。
解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。本步骤中,所述数据过滤条件,可以根据应用的不同需求而不同,可以是时间、数字、内容等过滤条件。另外,本步骤中建立的条件数据结构,是由数据过滤条件转换成的程序所能识别的条件数据结构,一般由哈希表、数组、数值、字符串、布尔值组成。
步骤S207,查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据。
本步骤具体包括:查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
步骤S208,将过滤完的数据分别存入不同应用中的所述数据库目标表。
本发明实施例的不同应用的规则描述文件使用json语言描述,可随时修改并动态加载,动态加载、解析后,即可实现规则描述文件修改后的新的数据查询、过滤及分存的操作,与现有单一应用在遇到功能改变或拓展时,需先修改代码、然后重新编译、再部署应用的技术相比,本发明可由外部通过任一文本编辑器直接对规则描述文件进行修改操作,功能改变或拓展时,修改操作更加简单、便捷,无需再次编译和部署,令***更具扩展性,能适应多变的应用需求。
图1、图2对本发明的数据交换方法的实施例进行了详细阐述,下面将继续结合附图,对相应于上述方法流程的装置(即数据交换中间装置)进行说明。
请参照图3,是本发明的数据交换中间装置的第一实施例的结构示意图,该数据交换中间装置100包括加载模块110、解析模块120、查询过滤模块130、以及分存模块140。
加载模块110,用于加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件。所述不同应用,可以是学生是否正常到校的考勤查询应用、学生成绩查询应用、留言应用等多种具有不同学校管理需求的不同应用,也可以是企业内部不同管理需求的应用,如办公OA应用、考勤应用、客户信息化应用、供应链应用等,还可以是其他行业的一些类似应用。加载模块1001统一加载所有不同应用的规则描述文件,根据不同应用的规则描述文件剥离出不同规则描述文件需要操作的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
解析模块120,用于解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
查询过滤模块130,用于查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据。
分存模块140,用于将过滤完的数据分别存入不同应用中的所述数据库目标表。
进一步地,请参照图4,是本发明的解析模块的实施例的结构示意图,所述解析模块120包括:
数据库信息解析单元121,用于解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码。
数据库源表解析单元122,用于解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名。
数据库目标表解析单元123,用于解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名。
数据过滤条件解析单元124,用于解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。所述数据过滤条件,可以根据应用的不同需求而不同,可以是时间、数字、内容等过滤条件。所述条件数据结构,是由数据过滤条件转换成的程序所能识别的条件数据结构,一般由哈希表、数组、数值、字符串、布尔值组成。
更进一步地,所述查询过滤模块130包括:
查询过滤单元,用于查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
又进一步地,所述数据库目标表解析单元123还包括数据库目标表新建子单元,该数据库目标表新建子单元用于在解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表的过程中,数据库目标表不存在时,根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表。
本数据交换中间装置可以独立部署在一台服务器上,通过集群服务器网络访问数据库服务器,通过读取不同应用的业务规则描述文件获取数据交换逻辑,可以动态调整业务逻辑,支撑新的应用业务。该数据交换中间装置的启动、重启、终止可由操作人员或监控平台通过终端控制台程序实现。数据交换中间装置可以并发运行,业务扩展时,可通过运行多个数据交换中间装置来实现。
本发明实施例通过数据交换中间装置加载、解析所有不同应用的规则描述文件,并执行数据查询、过滤及分存的操作,使多个不同应用可以通过该数据交换中间装置使用统一的业务逻辑即上述数据交换方法访问数据库并生成不同应用所需的数据,实现功能复用,减少开发工作的复杂度,可以解除不同应用及其业务逻辑与数据源的耦合关系,令***更具扩展性,能适应多变的应用需求。
请参照图5,是本发明的数据交换中间装置的第二实施例的结构示意图,该数据交换中间装置200包括加载模块210、解析模块220、查询过滤模块230、以及分存模块240。
加载模块210,用于加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件。所述不同应用,可以是学生是否正常到校的考勤查询应用、学生成绩查询应用、留言应用等多种具有不同学校管理需求的不同应用,也可以是企业内部不同管理需求的应用,如办公OA应用、考勤应用、客户信息化应用、供应链应用等,还可以是其他行业的一些类似应用。加载模块210统一加载所有不同应用的规则描述文件,根据不同应用的规则描述文件剥离出不同规则描述文件需要操作的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。所述加载模块210加载的不同应用的规则描述文件使用json语言描述,可随时修改并动态加载,该加载模块210进一步包括:
修改保存操作接收单元211,用于根据不同应用的需求,接收通过任一款文本编辑器对不同应用的规则描述文件的直接修改、保存操作。
时间戳信息生成单元212,用于根据上述修改、保存操作,在规则描述文件的属性中生成更新的时间戳信息。
重启指令接收单元213,用于接收重启指令。
时间戳信息读取单元214,用于根据重启指令,读取规则描述文件的属性中的时间戳信息。
动态加载单元215,用于在读取的时间戳信息为更新的时间戳信息时,则动态加载修改后的规则描述文件。
解析模块220,用于解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件。
查询过滤模块230,用于查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据。
分存模块240,用于将过滤完的数据分别存入不同应用中的所述数据库目标表。
进一步地,所述解析模块220包括:
数据库信息解析单元,用于解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码。
数据库源表解析单元,用于解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名。
数据库目标表解析单元,用于解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名。
数据过滤条件解析单元,用于解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。所述数据过滤条件,可以根据应用的不同需求而不同,可以是时间、数字、内容等过滤条件。所述条件数据结构,是由数据过滤条件转换成的程序所能识别的条件数据结构,一般由哈希表、数组、数值、字符串、布尔值组成。
更进一步地,所述查询过滤模块230包括:
查询过滤单元,用于查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
又进一步地,所述数据库目标表解析单元还包括数据库目标表新建子单元,该数据库目标表新建子单元用于在解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表的过程中,数据库目标表不存在时,根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表。
本数据交换中间装置可以独立部署在一台服务器上,通过集群服务器网络访问数据库服务器,通过读取不同应用的业务规则描述文件获取数据交换逻辑,可以动态调整业务逻辑,支撑新的应用业务。该数据交换中间装置的启动、重启、终止可由操作人员或监控平台通过终端控制台程序实现。数据交换中间装置可以并发运行,业务扩展时,可通过运行多个数据交换中间装置来实现。
本发明实施例的不同应用的规则描述文件使用json语言描述,可随时修改并动态加载,动态加载、解析后,即可实现规则描述文件修改后的新的数据查询、过滤及分存的操作,与现有单一应用在遇到功能改变或拓展时,需先修改代码、然后重新编译、再部署应用的技术相比,本发明可由外部通过任一文本编辑器直接对规则描述文件进行修改操作,功能改变或拓展时,修改操作更加简单、便捷,无需再次编译和部署,令***更具扩展性,能适应多变的应用需求。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
如上所述是结合具体内容提供的一种或多种实施方式,并不认定本发明的具体实施只局限于这些说明。凡与本发明的方法、结构等近似、雷同,或是对于本发明构思前提下做出若干技术推演或替换,都应当视为本发明的保护范围。
Claims (10)
1.一种数据交换方法,其特征在于,包括:
加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据;
将过滤完的数据分别存入不同应用中的所述数据库目标表。
2.根据权利要求1所述的数据交换方法,其特征在于,所述加载不同应用的规则描述文件的步骤中,不同应用的规则描述文件使用json语言描述,可随时修改并动态加载,本步骤进一步包括:
根据不同应用的需求,接收通过任一款文本编辑器对不同应用的规则描述文件的直接修改、保存操作;
根据上述修改、保存操作,在规则描述文件的属性中生成更新的时间戳信息;
接收重启指令;
根据重启指令,读取规则描述文件的属性中的时间戳信息;
若读取的时间戳信息为更新的时间戳信息,则动态加载修改后的规则描述文件。
3.根据权利要求1或2所述的数据交换方法,其特征在于,所述解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件的步骤包括:
解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码;
解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名;
解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名;
解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。
4.根据权利要求3所述的数据交换方法,其特征在于,所述查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据的步骤,包括:
查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
5.根据权利要求4所述的数据交换方法,其特征在于,在解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表的步骤中,如果数据库目标表不存在,则根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表。
6.一种数据交换中间装置,其特征在于,包括:
加载模块,用于加载不同应用的规则描述文件,该规则描述文件包括数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
解析模块,用于解析所述不同应用的规则描述文件中的数据库信息、数据库源表、数据库目标表、以及数据过滤条件;
查询过滤模块,用于查询不同应用的数据库源表,并根据不同应用的数据过滤条件过滤不同应用的数据库源表中的数据;
分存模块,用于将过滤完的数据分别存入不同应用中的所述数据库目标表。
7.根据权利要求6所述的数据交换中间装置,其特征在于,所述加载模块加载的不同应用的规则描述文件使用json语言描述,可随时修改并动态加载,该加载模块进一步包括:
修改保存操作接收单元,用于根据不同应用的需求,接收通过任一款文本编辑器对不同应用的规则描述文件的直接修改、保存操作;
时间戳信息生成单元,用于根据上述修改、保存操作,在规则描述文件的属性中生成更新的时间戳信息;
重启指令接收单元,用于接收重启指令;
时间戳信息读取单元,用于根据重启指令,读取规则描述文件的属性中的时间戳信息;
动态加载单元,用于在读取的时间戳信息为更新的时间戳信息时,则动态加载修改后的规则描述文件。
8.根据权利要求6或7所述的数据交换中间装置,其特征在于,所述解析模块包括:
数据库信息解析单元,用于解析不同应用的规则描述文件中的数据库信息,并针对每一个数据库建立相应的数据库连接池,该数据库连接池用于分配、管理和释放数据库连接;所述数据库信息包括数据库地址、数据库端口、数据库名、数据库用户名、以及数据库密码;
数据库源表解析单元,用于解析不同应用的规则描述文件中的数据库源表,确定所有数据库源表,所述数据库源表包括所属数据库、以及表名;
数据库目标表解析单元,用于解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表,所述数据目标表包括所属数据库、以及表名;
数据过滤条件解析单元,用于解析不同应用的规则描述文件中的数据过滤条件,并建立条件数据结构。
9.根据权利要求8所述的数据交换中间装置,其特征在于,所述查询过滤模块包括:
查询过滤单元,用于查询不同应用的数据库源表,并根据建立的所述条件数据结构过滤不同应用的数据库源表中的数据。
10.根据权利要求9所述的数据交换中间装置,其特征在于,所述数据库目标表解析单元还包括数据库目标表新建子单元,该数据库目标表新建子单元用于在解析不同应用的规则描述文件中的数据库目标表,确定所有数据库目标表的过程中,数据库目标表不存在时,根据不同应用的规则描述文件中的数据库源表的数据结构新建数据库目标表。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410675395.5A CN104615637A (zh) | 2014-11-20 | 2014-11-20 | 数据交换方法及数据交换中间装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410675395.5A CN104615637A (zh) | 2014-11-20 | 2014-11-20 | 数据交换方法及数据交换中间装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN104615637A true CN104615637A (zh) | 2015-05-13 |
Family
ID=53150081
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410675395.5A Pending CN104615637A (zh) | 2014-11-20 | 2014-11-20 | 数据交换方法及数据交换中间装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104615637A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512168A (zh) * | 2015-11-16 | 2016-04-20 | 天津南大通用数据技术股份有限公司 | 一种集群数据库复合加载数据的方法及装置 |
CN106484800A (zh) * | 2016-09-22 | 2017-03-08 | 济南浪潮高新科技投资发展有限公司 | 一种高效归集多***大数据的实现方法 |
CN107145540A (zh) * | 2017-04-24 | 2017-09-08 | 北京邮电大学 | 类uml图的版本控制功能的图表文件文本化转换装置和方法 |
CN108255623A (zh) * | 2018-01-22 | 2018-07-06 | 深圳市卓讯信息技术有限公司 | 实现线程内外双重对账机制的数据交换监控方法及装置 |
CN109359093A (zh) * | 2018-12-19 | 2019-02-19 | 杭州安恒信息技术股份有限公司 | 一种规则文件更新方法和*** |
CN110019442A (zh) * | 2017-09-04 | 2019-07-16 | 华为技术有限公司 | 取数方法及装置 |
CN111124548A (zh) * | 2019-12-31 | 2020-05-08 | 科大国创软件股份有限公司 | 一种基于yaml文件的规则解析方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100337235C (zh) * | 2003-06-23 | 2007-09-12 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN101930469B (zh) * | 2010-09-02 | 2012-05-30 | 江西省电力公司超高压分公司 | 调度数据服务平台中跨平台多异构数据库的通用数据访问方法 |
CN102323945B (zh) * | 2011-09-02 | 2013-05-01 | 南京中兴力维软件有限公司 | 一种基于sql的数据库管理方法和装置 |
-
2014
- 2014-11-20 CN CN201410675395.5A patent/CN104615637A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100337235C (zh) * | 2003-06-23 | 2007-09-12 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN101930469B (zh) * | 2010-09-02 | 2012-05-30 | 江西省电力公司超高压分公司 | 调度数据服务平台中跨平台多异构数据库的通用数据访问方法 |
CN102323945B (zh) * | 2011-09-02 | 2013-05-01 | 南京中兴力维软件有限公司 | 一种基于sql的数据库管理方法和装置 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105512168A (zh) * | 2015-11-16 | 2016-04-20 | 天津南大通用数据技术股份有限公司 | 一种集群数据库复合加载数据的方法及装置 |
CN106484800A (zh) * | 2016-09-22 | 2017-03-08 | 济南浪潮高新科技投资发展有限公司 | 一种高效归集多***大数据的实现方法 |
CN107145540A (zh) * | 2017-04-24 | 2017-09-08 | 北京邮电大学 | 类uml图的版本控制功能的图表文件文本化转换装置和方法 |
CN110019442A (zh) * | 2017-09-04 | 2019-07-16 | 华为技术有限公司 | 取数方法及装置 |
CN110019442B (zh) * | 2017-09-04 | 2023-10-13 | 华为技术有限公司 | 取数方法及装置 |
CN108255623A (zh) * | 2018-01-22 | 2018-07-06 | 深圳市卓讯信息技术有限公司 | 实现线程内外双重对账机制的数据交换监控方法及装置 |
CN108255623B (zh) * | 2018-01-22 | 2022-03-15 | 深圳市卓讯信息技术有限公司 | 实现线程内外双重对账机制的数据交换监控方法及装置 |
CN109359093A (zh) * | 2018-12-19 | 2019-02-19 | 杭州安恒信息技术股份有限公司 | 一种规则文件更新方法和*** |
CN111124548A (zh) * | 2019-12-31 | 2020-05-08 | 科大国创软件股份有限公司 | 一种基于yaml文件的规则解析方法及*** |
CN111124548B (zh) * | 2019-12-31 | 2023-10-27 | 科大国创软件股份有限公司 | 一种基于yaml文件的规则解析方法及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104615637A (zh) | 数据交换方法及数据交换中间装置 | |
CN101504672B (zh) | 一种动态配置实体数据表的方法和*** | |
US9372880B2 (en) | Reclamation of empty pages in database tables | |
US20090063562A1 (en) | Importing and Reconciling Resources From Disjoint Name Spaces to a Common Namespace | |
CN103377336A (zh) | 一种计算机***用户权限的控制方法和*** | |
CN103890709A (zh) | 基于缓存的键值数据库映射和复制 | |
CN105550270B (zh) | 数据库查询方法和装置 | |
CN110019111B (zh) | 数据处理方法、装置、存储介质以及处理器 | |
CN102760096A (zh) | 测试用数据的生成方法、单元测试方法以及单元测试*** | |
CN101320388A (zh) | 一种依据单据状态过滤单据的方法和装置 | |
CN102567399A (zh) | 一种访问数据库的方法和装置 | |
CN110162429A (zh) | ***修复方法、服务器及存储介质 | |
CN115803725A (zh) | 存档仅限加速器的数据库表 | |
CN109885642A (zh) | 面向全文检索的分级存储方法及装置 | |
CN103049546B (zh) | 一种管理、访问***日志的方法和装置 | |
US20200278988A1 (en) | Merging search indexes of a search service | |
US9111114B1 (en) | Method of transforming database system privileges to object privileges | |
CN101261639B (zh) | 数据库对象的共享 | |
CN103809915B (zh) | 一种磁盘文件的读写方法和装置 | |
CN110109866A (zh) | 一种文件***目录的管理方法及设备 | |
US20230409235A1 (en) | File system improvements for zoned storage device operations | |
CN103514185B (zh) | 导航地图多个更新区域的数据库文件访问管理方法及装置 | |
CN111680069B (zh) | 数据库访问方法及装置 | |
CN109343928B (zh) | 虚拟化集群中虚拟机的虚拟内存文件重定向方法及其*** | |
CN107851127A (zh) | 利用不同数据存储器类型来存储主用和复制数据库目录的装置和方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20150513 |
|
RJ01 | Rejection of invention patent application after publication |