CN108121718B - 一种数据处理方法及同步设备 - Google Patents
一种数据处理方法及同步设备 Download PDFInfo
- Publication number
- CN108121718B CN108121718B CN201611071752.2A CN201611071752A CN108121718B CN 108121718 B CN108121718 B CN 108121718B CN 201611071752 A CN201611071752 A CN 201611071752A CN 108121718 B CN108121718 B CN 108121718B
- Authority
- CN
- China
- Prior art keywords
- data
- database
- key
- updated
- synchronization
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明实施例公开了一种数据处理方法及同步设备,用于不同的数据库之间同步数据时节约时间成本。本发明实施例方法包括:同步设备对第一数据库中的数据进行监控;当第一数据库的数据发生更新后,再获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,其中第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;同步设备根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据后,将更新的数据导入第二数据库。本发明实施例还提供了一种同步设备,能够使不同的数据库之间同步数据时节约时间成本。
Description
技术领域
本发明涉及计算机领域,尤其涉及一种数据处理方法及同步设备。
背景技术
目前对数据的存储,一般都采用关系型数据库,关系型数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库里,这样就增加了速度并提高了灵活性。然而,随着业务发展,一方面为了适应新业务而采用非关系型数据库作为存储和管理数据的工具,另一方面为了兼容旧有系统而必须采用关系型数据库。同时,在从传统的关系型数据库到非关系型数据库同步数据的过程中,会遇到关系型数据库存在修改的情况,然而非关系型数据库不允许对于已有的数据库进行修改,而导致非关系型数据库增量数据重复的问题。
现有技术中,为避免数据库增量数据重复,在每次更新数据时,将非关系型数据库的数据全部清空掉,然后全部重新从关系型数据库加载进来。
然而,现有技术中,由于数据动辄百万,千万甚至亿级计算,如果每次更新数据都需要全部加载,而实际上只有少量的数据进行更新,全部重现加载则会对于大部分以前的没有变化的数据重导,耗费了极大的时间资源。
发明内容
本发明实施例提供了一种数据处理方法及同步设备,用于在关系型数据库向非关系数据库同步数据时节约时间成本。
本发明实施例一方面提供了一种数据处理方法,具体包括:
同步设备对第一数据库中的数据进行监控;
当所述第一数据库的数据发生更新后,所述同步设备获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,所述第一表格为包含于所述第一数据库中的二维表,所述第二数据库的数值与更新前的所述第一数据库的数值相同,所述第一主键包括时间戳或自增长序列号,所述第二主键与所述第一主键对应;
所述同步设备根据所述第一主键所在列中的键值和所述第二主键对应的属性数据确定更新的数据;
所述同步设备将所述更新的数据导入所述第二数据库。
本发明实施例另一方面提供了一种同步设备,具体包括:
监控单元,用于对第一数据库中的数据进行监控;
获取单元,当所述第一数据库的数据发生更新后,用于获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,所述第一表格为包含于所述第一数据库中的二维表,所述第二数据库的数值与更新前的所述第一数据库的数值相同,所述第一主键包括时间戳或自增长序列号,所述第二主键与所述第一主键对应;
第一确定单元,根据所述第一主键所在列中的键值和所述第二主键对应的属性数据确定更新的数据;
导入单元,用于将所述更新的数据导入所述第二数据库。
从以上技术方案可以看出,本发明实施例具有以下优点:同步设备对第一数据库中的数据进行监控;当第一数据库的数据发生更新后,同步设备获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,其中第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;同步设备根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;同步设备再将更新的数据导入第二数据库。本发明实施例中,同步设备确定了更新的数据,并将其导入第二数据库中,节省了时间成本。
附图说明
图1为本发明实施例中数据处理方法一个实施例示意图;
图2为本发明实施例中数据处理方法另一实施例示意图;
图3为发明实施例中同步设备一个实施例示意图;
图4为本发明实施例中同步设备另一实施例示意图;
图5为本发明实施例中同步设备另一实施例示意图。
具体实施方式
本发明实施例提供了一种数据处理方法及同步设备,用于在关系型数据库向非关系数据库同步数据时节约时间成本。
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”或“具有”及其任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例适用于关系型数据库向非关系型数据库同步数据,其中关系型数据库是指采用了关系模型来组织数据的数据库,关系模型指二维表格模型,即关系型数据库就是由二维表及其之间的联系所组成的一个数据组织,通过外键关联来建立表与表之间的关系。非关系型数据库是一种数据结构化存储方法的集合,通常指数据以对象的形式存储在数据库中,而对象之间的关系通过每个对象自身的属性来决定。关系型数据库与非关系型数据库的对比如表1所示。
表1
当关系型数据库将数据同步至非关系型数据库时,关系型数据库可以更改,然而非关系型数据库不允许对于已有数据进行更改。现有技术中,关系型数据库更改数据时,将非关系型数据库的数据全部清空掉,然后全部重新从关系型数据库加载进来,若只有少量的数据有更新时,全部加载相当于将大部分数据进行重导,导致时间成本极高。
有鉴于此,本发明实施例中,当第一数据库发生更新后,同步设备确定更新的数据,并将更新的数据导入第二数据库。其中第一数据库为关系型数据库,第二数据库为非关系型数据库,第二数据库的数值与更新前的第一数据库的数值相同。
为便于理解,下面对本发明实施例中的具体流程进行描述,请参阅图1,本发明实施例中数据处理方法一个实施例包括:
101、同步设备对第一数据库中的数据进行监控;
该同步设备适用于第一数据库和第二数据库同步数据,其中,在本发明实施例中,第一数据库为关系型数据库,第二数据库为非关系型数据库,在第一数据库未进行更新前,第一数据库中的数值与第二数据库中的数值相同。同步设备对第一数据库中的数据进行监控,以实时得知第一数据库中的数据是否发生变化。
102、同步设备获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据;
当同步设备监控第一数据时,监控到第一数据库中的数据发生更新后,同步设备获取第一表格中第一主键所在列中的键值,以及第二数据库中第二主键对应的属性数据,其中第一表格是包含于第一数据库中的二维表,第二数据库的数值与发生更新前的第一数据库的数值相同,且第一主键包括时间戳或自增长序列号,即第一主键的键值随着时间推移而增长,很显然,第二主键与该第一主键对应,即当第一主键代表时间戳时,第二主键也代表时间戳。
103、同步设备根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;
同步设备得到第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据后,根据该第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据,其中数据的更新包括,将第一数据库中的原有的数据进行修改和在第一数据中插入新数据,即同步设备确定哪些数据是修改后的数据以及新插入的数据。
104、同步设备将更新的数据导入第二数据库。
同步设备确定了更新的数据后,将更新的数据从第一数据库中导入到第二数据库中,以完成第一数据库到第二数据库的数据的同步。
从以上技术方案可以看出,本发明实施例中,同步设备对第一数据库中的数据进行监控;当第一数据库的数据发生更新后,同步设备获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,其中第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;同步设备根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;同步设备再将更新的数据导入第二数据库。本发明实施例中,同步设备确定了更新的数据,并将其导入第二数据库中,节省了时间成本。
为便于理解,下面将对本发明实施例的数据处理方法进行详细描述,具体如图2所示,请参阅图2,本发明实施例中另一种数据处理方法包括:
201、同步设备对第一数据库中的数据进行监控;
本实施例中的步骤201与前述图1所示实施例中的步骤101类似,具体此处不再赘述。
202、同步设备将第一数据修改为第二数据;
第一数据库中的数据进行更新时,包括修改数据和添加新数据。故数据更新时,同步设备将第一数据修改为第二数据,其中第一数据为第一数据库更新前包括的数据,且更新的数据中包括第二数据。
203、同步设备向第一数据库中添加第四数据;
第一数据库中的数据进行更新时,包括修改数据和添加新数据。故数据更新时,同步设备将第四数据添加到第一数据中,更新的数据中包括第四数据。
需要注意的是,本实施例中,控制器通过步骤202修改第一数据库中的已有数据,通过步骤203在第二数据库中添加新数据,而这两个过程之间并不存在步骤的先后顺序,可以先执行步骤101以及102,也可以先执行步骤103以及104,或者同时执行,具体此处不做限定。
204、同步设备获取第一表格中第一主键所在列中的键值;
由于第一数据库是关系型数据库,因此在第一数据库中,数据以表格的形式存储。为了确定哪些数据是更新的数据,同步设备通过第一数据库中的第一表格,找出第一表格中第一主键所在列中的键值,其中,该第一表格为二维表格,包括行和列。第一主键包括时间戳或自增长序列号,因此第一主键所在列中的键值随着时间的推移而逐渐变大,在第一主键所在列中,每个键值都是互不相同的,可以作为唯一的标识。
205、同步设备获取第二数据库中第二主键对应的属性数据中的最新键值;
由于第二数据库是非关系型数据库,在第二数据库中,数据以对象的形式存储,而对象之间的关系通过每个对象自身的属性来决定。同步设备找到第二数据库中第二主键对应的属性数据,其中,第二主键与第一主键对应,第二主键对应的属性数据也随着时间的推移而逐渐变大,因此在第二主键对应的属性数据中,找出其中最大的数据即最新键值。例如,当第二主键为时间戳时,第二主键所对应的属性数据即为一个个时刻,而最新键值即为其中的最晚时刻,在数值上为属性数据中的最大值。
206、同步设备判断是否存在第一键值大于最新键值,若是,则执行步骤207;若否,则执行步骤208;
同步设备获取得到第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据中的最新键值后,将第一主键所在列中的键值与最新键值进行比较,判断第一主键所在列中的键值是否存在第一键值比最新键值大,若是,则执行步骤207;若否,则执行步骤208。
207、同步设备确定第一键值所在行中的数据为更新的数据;
当同步设备判断第一键值大于最新键值时,由于最新键值为第二数据库中最新的数据,而第二数据库中的数据与更新前的第一数据库中的数据相同,且第一数据库中第一主键所在列的第一键值随时间的推移而递增,因此,大于最新键值的第一键值,其所在行的数据可以确定为是更新的数据。例如,如表2所示,更新前的第一数据库中的第一主键所在列的第一键值和第二数据库中第二主键对应的属性数据均为1,2,3,4,第一数据库更新后,第一键值中的2所对应的行的数据被修改,由于第一键值随时间递增,则序列号2变为了序列号5,且增加了一组数据,故第一数值中也增加了序列号6,在第二数据库中,最新键值为4,将更新后的第一数据库中的第一键值与最新键值4进行逐一比较,找到了序列号5和序列号6,则序列号5和序列号6所在行中的数据为更新的数据。
表2
更新前的第一数据库 | 第二数据库 | 更新后的第一数据库 |
1 | 1 | 1 |
2 | 2 | 3 |
3 | 3 | 4 |
4 | 4 | 5 |
6 |
需要说明的是,本发明实施例中,同步设备通过步骤204至步骤207确定了更新的数据,在实际应用中,确定更新的数据的方式有多种,例如同步设备获取第二数据库中第二主键对应的属性数据中的最新键值,所述最新键值为所述第二主键对应的属性数据中最新的数据;再在第一数据库中的第一表格中第一主键所在列中的键值是否包括最新键值,与本发明实施例类似,第一主键与第二主键相同。如果包括,则同步设备确定第一主键所在列中晚于最新键值的键值为第一目标键值,第一目标键值所在行中的数据为更新的数据;如果不包括,同步设备找出第一主键所在列中早于最新键值且与最新键值最接近的键值为第三键值,进而确定第一主键所在列中晚于第三键值的键值为第二目标键值,第二目标键值所在行中的数据为更新的数据。具体处理方式为,例如,在表2中,最新键值为4,第一数据库中的第一表格中第一主键所在列中的键值为1,2,3,4,5和6,包括最新键值4,则晚于最新键值4的键值为第一目标键值5和6,因此5和6所在行的数据为更新的数据。若其中不包括最新键值4,则同步设备找出第一主键所在列中早于最新键值且与最新键值最接近的键值为第三键值,即键值3,进而确定第一主键所在列中晚于第三键值的键值为5和6,即第二目标键值,因此同样确定5和6所在行的数据为更新的数据。因此,确定更新的数据的方式具体此处不做限定。
208、执行其他步骤;
当同步设备判断第一键值不大于第二键值后,则同步设备确定该第一键值不是更新的数据。
209、同步设备确定在更新的数据中,目标维度对应的属性数据为目标维度数据;
同步设备确定了更新的数据后,要从第二数据库中找出第一数据,即同步设备将更新的数据导入第二数据库后,第二数据库中同时存在第一数据和修改后的第一数据即第二数据,因此针对导入后的第二数据库,第一数据为重复且无意义的数据。同步设备在更新的数据中,将目标维度对应的属性数据作为目标维度数据以找出第一数据,其中维度数据互不重复,目标维度为所述第二数据库中的数据的属性。例如,表3所示为华南地区某销售列表,在销售列表中,维度包括地区、月份和销售品种,度量包括数量、单价和销售额,由于维度数据互不重复且唯一存在,因此,将地区、月份和销售品种三个维度结合成目标维度,则目标维度所对应的列的数据互不重复且唯一存在,如广东1月分销售的电视机数据。目标维度可以由1个维度或者多个维度构成,具体此处不做限定。
表3
地区 | 月份 | 销售品种 | 数量 | 单价 | 销售额 |
广东 | 1 | 电视机 | 5 | 1000 | 5000 |
广东 | 2 | 电视机 | 3 | 1000 | 3000 |
广西 | 1 | 电冰箱 | 2 | 2000 | 4000 |
福建 | 1 | 吸尘器 | 3 | 1200 | 3600 |
210、同步设备根据最新键值确定已有数据;
同步设备获得了目标维度数据后,确定第二数据库的第二主键对应的属性数据中,时间不晚于最新键值的键值所对应的对象数据,即为已有数据,其中已有数据是第二数据库在导入之前所包括的数据。
211、同步设备判断已有数据中,第二主键对应的属性数据中的键值是否包括第三目标键值,若包括,则执行步骤212;若不包括,则执行步骤213;
同步设备确认了已有数据和目标维度数据后,再判断已有数据中目标维度对应的属性数据是否包括目标维度数据,若包括,则执行步骤212;若不包括,则执行步骤213。
212、同步设备确定已有数据中的目标维度数据所对应的数据为第一数据;
若同步设备判断已有数据中目标维度对应的属性数据包括目标维度数据,由于目标维度数据互不重复且唯一存在,因此已有数据中的目标维度数据所对应的数据为重复的,且该数据对应的已在第一数据库中被修改为第二数据,故同步设备确定已有数据中的目标维度对应的数据为第一数据。
213、执行其他步骤;
若同步设备判断已有数据中目标维度对应的属性数据不包括目标维度数据,则同步设备确定第一数据库的更新不包括对数据进行修改,即第一数据不存在。
214、同步设备将第一数据添加至第二表格;
同步设备确定第一数据后,将第一数据添加到第二表格,其中,第二表格包含于第二数据库中。需要说明的是,实际应用中,第二表格可以是表格的形式,也可以为文档的格式或者列的格式,具体此处不做限定。
215、同步设备在第二数据库中将第二表格中的数据进行隐藏处理;
同步设备将第一数据添加到第二表格后,在向用户显示数据时不包括第一数据,即对第二表格中的数据进行隐藏处理。通过在第二数据库中,使用SQL语句中的select*语句,若第二表格中没有数据能与第二数据库的待显示数据一样,则第二数据库的待显示数据是可以显示的数据,因此使第二数据库中的第二表格的数据不进行显示。
216、同步设备通过视图显示第三数据。
视图为数据库中一种虚拟的表,视图所对应的数据不进行实际存储,是存储在数据库中的查询的SQL语句,视图可以隐藏一些数据,如在社会保险基金表中,可以用视图只显示姓名和地址,而不显示社会保险号和工资数等。因此,利用视图的功能,同步设备显示第三数据,其中第三数据为第二数据库中不包括第一数据的其他数据,即第三数据与更新后的第一数据库的数据相同,因此达到了将关系型数据库的数据同步到非关系型数据库的目的。
本发明实施例中,当第一数据库发生更新后,同步设备确定更新的数据,并将更新的数据导入第二数据库。其中第一数据库为关系型数据库,第二数据库为非关系型数据库,第一数据库与第二数据的的数据相同,同步设备再从更新的数据中找出哪些是对已有数据的修改,并将第二数据库中存在的已有数据即第一数据添加到第二表格中,进行隐藏处理,最后同步设备通过视图显示除第一数据以外的第二数据库中的其他数据。本发明实施例中,通过确定更新的数据,导入更新的数据,再找出被修改的数据,进而通过视图显示第三数据,在非关系型数据库中,体现出了关系型数据库修改数据的能力。
上面对本发明实施例中的数据处理方法进行了描述,下面对本发明实施例中的同步设备进行描述,请参阅图3,本发明实施例中同步设备包括:
监控单元301,用于对第一数据库中的数据进行监控;
获取单元302,当第一数据库的数据发生更新后,用于获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;
第一确定单元303,根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;
导入单元304,用于将更新的数据导入第二数据库。
本发明实施例中,监控单元对第一数据库中的数据进行监控;当第一数据库的数据发生更新后,获取单元获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,其中第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;第一确定单元根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;导入单元再将更新的数据导入第二数据库。本发明实施例中,同步设备确定了更新的数据,并将其导入第二数据库中,节省了时间成本。
为便于理解,下面对本发明实施例中的同步设备进行详细描述,请参阅4,本发明实施例中同步设备另一实施例包括:
监控单元401,用于对第一数据库中的数据进行监控;
获取单元402,当第一数据库的数据发生更新后,用于获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;
第一确定单元403,根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;
导入单元404,用于将更新的数据导入第二数据库。
本发明实施例中,第一确定单元403可以进一步包括:
获取模块4031,用于获取第二主键对应的属性数据中的最新键值,最新键值为第二主键对应的属性数据中最新的数据;
第一判断模块4032,用于判断是否存在第一键值大于最新键值,第一键值包含于第一主键所在列中的键值;
第一确定模块4033,若是,则用于确定第一键值所在行中的数据为更新的数据。
本发明实施例中,同步设备还包括:
第二确定单元405,用于根据更新的数据,确定第二数据库中的第一数据,第一数据为第一数据库发生更新时被修改的数据;
添加单元406,用于将第一数据添加至第二表格,第二表格包含于第二数据库中。
本发明实施例中,第二确定单元405还可以进一步包括:
第二确定模块4051,用于确定在更新的数据中,目标维度对应的属性数据为目标维度数据,目标维度为第二数据库中的数据的属性,目标维度数据互不重复且唯一存在;
第三确定模块4052,用于根据最新键值确定已有数据,已有数据为第二数据库导入更新的数据之前的数据;
第二判断模块4053,用于判断已有数据中目标维度对应的属性数据,是否包括目标维度数据;
第四确定模块4054,若包括,则用于确定已有数据中的目标维度数据所对应的数据为第一数据。
本发明实施例中,同步设备还包括:
隐藏单元407,用于在第二数据库中将第二表格中的数据进行隐藏处理;
显示单元408,用于通过视图显示第三数据,第三数据与第一数据库的数据相同。
上面从模块化功能实体的角度对本发明实施例中的同步设备进行描述,下面从硬件处理的角度对本发明实施例中的同步设备进行描述,请参阅图5,本发明实施例中的同步设备500一个实施例,适用于第一数据库和第二数据库同步数据,第一数据库为关系型数据库,第二数据库为非关系型数据库,第一数据库的数据与第二数据库的数据相同,包括:
输入装置501、输出装置502、处理器503和存储器504(其中第一交换机500中的处理器503的数量可以一个或多个,图5中以一个处理器503为例)。在本发明的一些实施例中,输入装置501、输出装置502、处理器503和存储器504可通过总线或其它方式连接,其中,图5中以通过总线连接为例。
其中,通过调用存储器504存储的操作指令,处理器503,用于执行如下步骤:
对第一数据库中的数据进行监控;
当第一数据库的数据发生更新后,获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,第一表格为包含于第一数据库中的二维表,第二数据库的数值与更新前的第一数据库的数值相同,第一主键包括时间戳或自增长序列号,第二主键与第一主键对应;
根据第一主键所在列中的键值和第二主键对应的属性数据确定更新的数据;
将更新的数据导入第二数据库。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (8)
1.一种数据处理方法,其特征在于,包括:
同步设备对第一数据库中的数据进行监控;
当所述第一数据库的数据发生更新后,所述同步设备获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,所述第一表格为包含于所述第一数据库中的二维表,所述第二数据库的数值与更新前的所述第一数据库的数值相同,所述第一主键包括时间戳或自增长序列号,所述第二主键与所述第一主键对应;
所述同步设备根据所述第一主键所在列中的键值和所述第二主键对应的属性数据确定更新的数据;所述同步设备根据所述第一主键所在列中的键值和所述第二主键对应的属性数据确定更新的数据包括:
所述同步设备获取所述第二主键对应的属性数据中的最新键值,所述最新键值为所述第二主键对应的属性数据中最新的数据;所述同步设备判断是否存在第一键值大于所述最新键值,所述第一键值包含于所述第一主键所在列中的键值;若是,则所述同步设备确定所述第一键值所在行中的数据为所述更新的数据;
所述同步设备将所述更新的数据导入所述第二数据库。
2.根据权利要求1所述的数据处理方法,其特征在于,所述同步设备将所述更新的数据导入所述第二数据库后,所述方法还包括:
所述同步设备根据所述更新的数据,确定所述第二数据库中的第一数据,所述第一数据为所述第一数据库发生更新时被修改的数据;
所述同步设备将所述第一数据添加至第二表格,所述第二表格包含于所述第二数据库中。
3.根据权利要求2所述的数据处理方法,其特征在于,所述同步设备根据所述更新的数据,确定所述第二数据库中的所述第一数据包括:
所述同步设备确定在所述更新的数据中,目标维度对应的属性数据为目标维度数据,所述目标维度为所述第二数据库中的数据的属性,所述目标维度数据互不重复且唯一存在;
所述同步设备根据所述最新键值确定已有数据,所述已有数据为所述第二数据库导入所述更新的数据之前的数据;
所述同步设备判断所述已有数据中所述目标维度对应的属性数据,是否包括所述目标维度数据;
若包括,则所述同步设备确定所述已有数据中的所述目标维度数据所对应的数据为所述第一数据。
4.根据权利要求3所述的数据处理方法,其特征在于,所述同步设备将所述第一数据添加至第二表格之后,所述方法还包括:
所述同步设备在所述第二数据库中将所述第二表格中的数据进行隐藏处理;
所述同步设备通过视图显示第三数据,所述第三数据与所述第一数据库的数据相同。
5.一种同步设备,其特征在于,包括:
监控单元,用于对第一数据库中的数据进行监控;
获取单元,当所述第一数据库的数据发生更新后,用于获取第一表格中第一主键所在列中的键值和第二数据库中第二主键对应的属性数据,所述第一表格为包含于所述第一数据库中的二维表,所述第二数据库的数值与更新前的所述第一数据库的数值相同,所述第一主键包括时间戳或自增长序列号,所述第二主键与所述第一主键对应;
第一确定单元,根据所述第一主键所在列中的键值和所述第二主键对应的属性数据确定更新的数据;述第一确定单元包括:
获取模块,用于获取所述第二主键对应的属性数据中的最新键值,所述最新键值为所述第二主键对应的属性数据中最新的数据;
第一判断模块,用于判断是否存在第一键值大于所述最新键值,所述第一键值包含于所述第一主键所在列中的键值;
第一确定模块,若是,则用于确定所述第一键值所在行中的数据为所述更新的数据;
导入单元,用于将所述更新的数据导入所述第二数据库。
6.根据权利要求5所述的同步设备,其特征在于,所述同步设备还包括:
第二确定单元,用于根据所述更新的数据,确定所述第二数据库中的第一数据,所述第一数据为所述第一数据库发生更新时被修改的数据;
添加单元,用于将所述第一数据添加至第二表格,所述第二表格包含于所述第二数据库中。
7.根据权利要求6所述的同步设备,其特征在于,所述第二确定单元包括:
第二确定模块,用于确定在所述更新的数据中,目标维度对应的属性数据为目标维度数据,所述目标维度为所述第二数据库中的数据的属性,所述目标维度数据互不重复且唯一存在;
第三确定模块,用于根据所述最新键值确定已有数据,所述已有数据为所述第二数据库导入所述更新的数据之前的数据;
第二判断模块,用于判断所述已有数据中所述目标维度对应的属性数据,是否包括所述目标维度数据;
第四确定模块,若包括,则用于确定所述已有数据中的所述目标维度数据所对应的数据为所述第一数据。
8.根据权利要求7所述的同步设备,其特征在于,所述同步设备还包括:
隐藏单元,用于在所述第二数据库中将所述第二表格中的数据进行隐藏处理;
显示单元,用于通过视图显示第三数据,所述第三数据与所述第一数据库的数据相同。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611071752.2A CN108121718B (zh) | 2016-11-28 | 2016-11-28 | 一种数据处理方法及同步设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201611071752.2A CN108121718B (zh) | 2016-11-28 | 2016-11-28 | 一种数据处理方法及同步设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108121718A CN108121718A (zh) | 2018-06-05 |
CN108121718B true CN108121718B (zh) | 2021-12-24 |
Family
ID=62224317
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201611071752.2A Active CN108121718B (zh) | 2016-11-28 | 2016-11-28 | 一种数据处理方法及同步设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108121718B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111782673A (zh) * | 2020-07-13 | 2020-10-16 | 中国工商银行股份有限公司 | 数据的处理方法、装置、计算设备和介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106200A (zh) * | 2011-11-09 | 2013-05-15 | 上海盛霄云计算技术有限公司 | 非关系型数据库同步系统及双写同步方法 |
CN103473239A (zh) * | 2012-06-08 | 2013-12-25 | 腾讯科技(深圳)有限公司 | 一种非关系型数据库数据更新方法和装置 |
EP2778984A1 (en) * | 2013-03-15 | 2014-09-17 | Wal-Mart Stores, Inc. | Incrementally updating a large key-value store |
CN104850611A (zh) * | 2015-05-12 | 2015-08-19 | 浪潮集团有限公司 | 一种使用kettle从关系型数据库向非关系型数据库定时增量更新数据的方法 |
CN105279285A (zh) * | 2015-11-23 | 2016-01-27 | 上海斐讯数据通信技术有限公司 | 一种关系型数据库与非关系型数据库的同步系统及方法 |
CN105574026A (zh) * | 2014-10-15 | 2016-05-11 | 腾讯科技(深圳)有限公司 | 非关系型数据库支持事务的方法及装置 |
CN106960007A (zh) * | 2017-02-28 | 2017-07-18 | 北京京东尚科信息技术有限公司 | 一种数据更新方法、装置及电子设备 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8495034B2 (en) * | 2010-12-30 | 2013-07-23 | Teradata Us, Inc. | Numeric, decimal and date field compression |
-
2016
- 2016-11-28 CN CN201611071752.2A patent/CN108121718B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103106200A (zh) * | 2011-11-09 | 2013-05-15 | 上海盛霄云计算技术有限公司 | 非关系型数据库同步系统及双写同步方法 |
CN103473239A (zh) * | 2012-06-08 | 2013-12-25 | 腾讯科技(深圳)有限公司 | 一种非关系型数据库数据更新方法和装置 |
EP2778984A1 (en) * | 2013-03-15 | 2014-09-17 | Wal-Mart Stores, Inc. | Incrementally updating a large key-value store |
CN105574026A (zh) * | 2014-10-15 | 2016-05-11 | 腾讯科技(深圳)有限公司 | 非关系型数据库支持事务的方法及装置 |
CN104850611A (zh) * | 2015-05-12 | 2015-08-19 | 浪潮集团有限公司 | 一种使用kettle从关系型数据库向非关系型数据库定时增量更新数据的方法 |
CN105279285A (zh) * | 2015-11-23 | 2016-01-27 | 上海斐讯数据通信技术有限公司 | 一种关系型数据库与非关系型数据库的同步系统及方法 |
CN106960007A (zh) * | 2017-02-28 | 2017-07-18 | 北京京东尚科信息技术有限公司 | 一种数据更新方法、装置及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108121718A (zh) | 2018-06-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11093553B2 (en) | Graph database visualization by node and edge type | |
US8515897B2 (en) | Automatically generating reports matching user interests represented in a dynamically adjusted user interest analytic model | |
US20160239553A1 (en) | User readability improvement for dynamic updating of search results | |
CN107870927B (zh) | 文件评估方法和装置 | |
CN107729399B (zh) | 数据处理的方法和装置 | |
US20140052695A1 (en) | Systems and methods for capturing data refinement actions based on visualized search of information | |
US20150186352A1 (en) | Representing and manipulating hierarchical data | |
CN109446205B (zh) | 判断数据状态的装置和方法以及数据更新的装置和方法 | |
CN110990372A (zh) | 一种维度数据的处理方法及装置、数据查询方法及装置 | |
EP2526479A1 (en) | Accessing large collection object tables in a database | |
WO2018039772A8 (en) | SYSTEMS AND METHODS FOR FILTERING DOCUMENTS IN REAL TIME | |
CN103220204B (zh) | 营销邮件的生成方法和装置 | |
CN112559513A (zh) | 链路数据存取方法、装置、存储介质、处理器及电子装置 | |
CN115081414B (zh) | 基于数据模型的电子表格生成方法、装置、设备及介质 | |
CN111737364A (zh) | 安全多方数据融合与联邦共享方法、装置、设备及介质 | |
CN112307264A (zh) | 数据查询方法和装置、以及存储介质和电子设备 | |
CN108121718B (zh) | 一种数据处理方法及同步设备 | |
AU2009280854A1 (en) | Method to send a short message service (SMS) campaign to a related object by selecting the base object | |
CN106933880B (zh) | 一种标签数据泄漏渠道检测方法及装置 | |
CN110008395A (zh) | 评论内容的呈现方法、装置、存储介质及终端 | |
US9501205B2 (en) | Nature inspired interaction paradigm | |
CN103809915B (zh) | 一种磁盘文件的读写方法和装置 | |
WO2014164081A2 (en) | Detection and visualization of schema-less data | |
CN112597358B (zh) | 一种数据展示方法、装置及电子设备 | |
US9898493B2 (en) | Runtime generation of a mapping table for uploading data into structured data marts |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 100080 No. 401, 4th Floor, Haitai Building, 229 North Fourth Ring Road, Haidian District, Beijing Applicant after: Beijing Guoshuang Technology Co.,Ltd. Address before: 100086 Cuigong Hotel, 76 Zhichun Road, Shuangyushu District, Haidian District, Beijing Applicant before: Beijing Guoshuang Technology Co.,Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |