CN108073584B - 一种数据处理方法及服务器 - Google Patents

一种数据处理方法及服务器 Download PDF

Info

Publication number
CN108073584B
CN108073584B CN201610983549.6A CN201610983549A CN108073584B CN 108073584 B CN108073584 B CN 108073584B CN 201610983549 A CN201610983549 A CN 201610983549A CN 108073584 B CN108073584 B CN 108073584B
Authority
CN
China
Prior art keywords
data
target
target data
server
database
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
Application number
CN201610983549.6A
Other languages
English (en)
Other versions
CN108073584A (zh
Inventor
左思图
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Gridsum Technology Co Ltd
Original Assignee
Beijing Gridsum Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Beijing Gridsum Technology Co Ltd filed Critical Beijing Gridsum Technology Co Ltd
Priority to CN201610983549.6A priority Critical patent/CN108073584B/zh
Publication of CN108073584A publication Critical patent/CN108073584A/zh
Application granted granted Critical
Publication of CN108073584B publication Critical patent/CN108073584B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/25Integrating or interfacing systems involving database management systems
    • G06F16/258Data format conversion from or to a database
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明实施例公开了一种数据处理方法及服务器,用于增加服务器的效率以及减少服务器的性能开销。本发明实施例方法包括:服务器获取目标数据,目标数据为需要导入服务器的数据库的数据;服务器判断目标数据是否是首次导入数据库;若服务器确定目标数据为首次导入数据库,则服务器为目标数据构建目标数据结构父表;服务器根据目标数据结构父表创建目标子表;服务器将目标数据写入目标子表;服务器判断目标数据是否正确完全写入所述目标子表;若服务器确定目标数据正确完全写入目标子表,则服务器更新元数据表的批次信息,元数据表为数据库中所有数据结构父表的索引。

Description

一种数据处理方法及服务器
技术领域
本发明涉及通信领域,尤其涉及一种数据处理方法及服务器。
背景技术
有些业务中的数据量是一个慢慢积累的过程。服务器会周期性的将一批数据从客户数据库拉取过来,或者用户一段时间上传一批数据到服务器。
这些批次的数据在业务上需要满足如下需求:存储格式统一,相同业务的所有批次数据在数据库中的列名称和列的类型都是一致的;每个批次的数据有相关的信息记录(如导入时间、导入方式等);可以单独删除或修改某个批次的数据,并且不影响其他数据;可以选择某几个批次为一个集合,针对这个集合进行条件查询或导出。
服务器端数据库针对每个业务建立一个数据表,每个业务的所有批次都存放在各自的数据表里。当向服务器导入一批数据的时候,首先建立一张和数据表结构一样的临时表,将数据先导入临时表内,当所有数据导入临时表完毕,再把临时表的数据复制到正式的数据表中,成功后再删除临时表。最后更新元数据表相关操作结果信息。
但是,在导入数据时需要先导入临时表,再导入正式表,且导入正式表会后需要删除临时表,这样会降低效率和增加服务器的性能开销。
发明内容
本发明实施例提供了一种数据处理方法及服务器,用于增加服务器的效率以及减少服务器的性能开销。
本发明实施例第一方面提供了一种数据处理方法,具体包括:
服务器获取目标数据,所述目标数据为需要导入所述服务器的数据库的数据;
所述服务器判断所述目标数据是否是首次导入所述数据库;
若所述服务器确定所述目标数据为首次导入所述数据库,则所述服务器为所述目标数据构建目标数据结构父表;
所述服务器根据所述目标数据结构父表创建目标子表;
所述服务器将所述目标数据写入所述目标子表;
所述服务器判断所述目标数据是否正确完全写入所述目标子表;
若所述服务器确定所述目标数据正确完全写入所述目标子表,则所述服务器更新元数据表的批次信息,所述元数据表为所述数据库中所有数据结构父表的索引。
本发明实施例第二方面提供了一种服务器,具体包括:
获取模块,用于获取目标数据,所述目标数据为需要导入所述服务器的数据库的数据;
第一判断模块,用于判断所述目标数据是否是首次导入所述数据库;
构建模块,用于在确定所述目标数据为首次导入所述数据库,为所述目标数据构建目标数据结构父表;
第一创建模块,用于根据所述目标数据结构父表创建目标子表;
第一写入模块,用于将所述目标数据写入所述目标子表;
第二判断模块,用于判断所述目标数据是否正确完全写入所述目标子表;
更新模块,用于在确定所述目标数据正确完全写入所述目标子表,更新元数据表的批次信息,所述元数据表为所述数据库中所有数据结构父表的索引。
本发明实施例第三方面提供了一种服务器,具体包括:
中央处理器、存储器、存储介质、电源、无线网络接口以及输入输出接口;
通过调用所述存储器或存储介质上存储的操作指令,所述中央处理器,用于执行如下步骤:
获取目标数据,所述目标数据为需要导入所述服务器的数据库的数据;
判断所述目标数据是否是首次导入所述数据库;
确定所述目标数据为首次导入所述数据库时,为所述目标数据构建目标数据结构父表;
根据所述目标数据结构父表创建目标子表;
将所述目标数据写入所述目标子表;
判断所述目标数据是否正确完全写入所述目标子表;
确定所述目标数据正确完全写入所述目标子表时,更新元数据表的批次信息,所述元数据表为所述数据库中所有数据结构父表的索引。
从以上技术方案可以看出,本发明实施例具有以下优点:当有数据需要导入服务器数据库时,服务器会判断该数据是否是首次导入服务器数据库,若是,则服务器为该数据创建父表,并根据父表创建子表,将该数据导入到该子表中,当服务器判断该数据正确完整写入子表后,则服务器更改元数据表的批次信息。综上所述,服务器在需要导入数据时,无需重新建立临时表,导入数据完成时,也不需要删除临时表,这样可以增加服务器的效率以及减少服务器的性能开销。
附图说明
图1为本发明实施例中数据处理方法的一个实施例示意图;
图2为本发明实施例中数据处理方法的另一实施例示意图;
图3为本发明实施例中服务器的一个结构示意图;
图4为本发明实施例中服务器的另一结构示意图;
图5为本发明实施例中服务器的结构示意图。
具体实施方式
本发明实施例提供了一种数据处理方法及服务器,用于增加服务器的效率以及减少服务器的性能开销。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
事务性:指作为单个逻辑工作单元执行的一系列操作,要么完全地执行,要么完全地不执行。事务处理可以确保除非事务性单元内的所有操作都成功完成,否则不会永久更新面向数据的资源。
数据导入:将客户端的不同存储格式或文件类型的数据按格式统一存储到服务器。
请参阅图1,本发明实施例中数据处理方法的一个实施例包括:
101、服务器获取目标数据。
本实施例中,当有目标数据需要进行处理的时候,服务器会先获取该目标数据,该目标数据是需要导入服务器的数据库的数据。
102、服务器判断目标数据是否是首次导入数据库,若是,则执行步骤104,若否,则执行步骤103。
本实施例中,服务器在收到目标数据之后,可以判断该目标数据是否是首次导入数据库,若是,则执行步骤104,若否,则执行步骤103。
103、执行其他操作。
本实施例中,当服务器判断目标数据不是首次导入数据库时,可以执行其他操作。
104、服务器为目标数据构建目标数据结构父表。
本实施例中,服务器在确定目标数据是首次导入数据库时,服务器可以为该目标数据构建目标数据结构父表,该目标数据结构父表与该目标数据相对应。
105、服务器根据目标数据结构父表创建目标子表。
本实施例中,当服务器创建目标数据结构父表之后,可以根据该目标数据结构父表创建与其对应的目标子表。
106、服务器将目标数据写入目标子表。
本实施例中,服务器在创建目标子表之后,可以将目标数据写入目标子表。
107、服务器判断目标数据是否正确完全写入目标子表,若是,则执行步骤109,若否,则执行步骤108。
本实施例中,服务器在将目标数据写入目标子表后,可以判断该目标数据是否正确完全写入目标子表,若是,则执行步骤109,若否,则执行步骤108。
108、执行其他步骤。
本实施例中,当服务器判断该目标数据没有正确完全写入目标子表,则执行其他步骤。
109、服务器更新元数据表的批次信息。
本实施例中,当服务器确定该目标数据完全正确写入目标子表之后,服务器会更新元数据表的批次信息,该元数据表为数据库中所有数据结构父表的索引。
综上所述,当有数据需要更新至服务器的数据库时,服务器可以获取该数据,并判断该数据是否是首次导入,若该数据是首次导入,则服务器为该数据构建与其对应的数据结构父表,根据该数据结构父表创建目标子表,且将该数据写入到目标子表里,服务器判断是否完全正确写入该目标子表,若该数据正确完成写入该目标子表,则服务器更新元数据表的批次信息。由此可以看出,服务器在导入数据前,不需要创建临时表,将数据导入该临时表,然后再从临时表中将数据导入正式表,这样可以增加服务器的效率以及减少服务器的性能开销。
请参阅图2,本发明实施例中数据处理方法的另一实施例包括:
201、服务器获取目标数据。
本实施例中,当有目标数据需要进行处理的时候,服务器会先获取该目标数据,该目标数据是需要导入服务器的数据库的数据。
202、服务器判断数据库中是否存在有与目标数据对应的数据结构父表,若存在,则执行步骤203,若不存在,则执行步骤204。
本实施例中,当服务器获取到目标数据之后,服务器可以判断数据库中是否存在有与目标数据对应的数据结构父表,若存在,则执行步骤203,若不存在,则执行步骤204。
203、确定目标数据不是首次导入数据库。
本实施例中,服务器确定数据库中存在有与目标数据对应的数据结构父表,则确定目标数据不是首次导入数据库,服务器可以为该目标数据对应的数据结构父表创建第一子表,且将该目标数据写入第一子表。
需要说明的是,创建子表可以使用结构化查询语言(Structured QueryLanguage,sql)语句创建,由程序自动执行,具体sql为:
Figure BDA0001148136370000061
也可以使用其他方式创建,具体此处不作限定。
204、确定目标数据为首次导入数据库。
本实施例中,服务器确定数据库中不存在有与目标数据对应的数据结构父表时,则确定目标数据为首次导入数据。
205、服务器为目标数据构建目标数据结构父表。
本实施例中,当服务器确定目标数据为首次导入数据库时,则服务器为该目标数据创建与其对应的目标数据结构父表。
需要说明的是,导入的数据可能是不同的数据结构,例如一个文本文件,有3列数据A、B、C,需要为这个数据创建一个统一的数据结构(父表),规定有nameA、nameB、nameC三列,在第二次导入的数据中可能这个文本文件存储的数据为B、A、C这种顺序,由于之前已经有父表的存在于是可以参照父表结构以统一的结构导入。
206、服务器根据目标数据结构父表创建目标子表。
本实施例中,服务器在建立目标数据结构父表之后,可以根据该目标数据结构父表创建目标子表,具体创建方式如上述所示,此处不再赘述。
207、服务器将目标数据写入目标子表。
本实施例中,当服务器完成目标子表的创建之后,可以将该目标数据写入目标子表。
208、服务器判断目标数据是否正确完全写入目标子表,若正确完全写入,则执行步骤210,若未正确完全写入,则执行步骤209。
本实施例中,服务器可以判断目标数据是否正确完全的写入目标子表,若正确完全写入,则执行步骤210,若未正确完全写入,则执行步骤209。
其中,服务器可以通过如下方式来进行判断目标数据是否正确完全的写入目标子表:
服务器判断目标数据的数据结构是否能够成功转换成与目标结构父表对应的数据结构,若能够转换成功(数据有四类基本结构:集合结构、线性结构、树形结构、图状结构,假如目标数据的为集合结构,而目标结构父表对应的数据结构为线性结构,则如果该目标数据的集合结构能够完全转换为目标结构父表对应的线性结构,则确定转换成功),则服务器确定将目标数据写入目标子表。服务器获取目标数据写入目标子表之前的第一数据量以及写入目标子表之后的第二数据量,判断第一数据量与第二数据量是否匹配,若匹配(即写入前的数据总和与写入后的数据总和相同则认为匹配或第一数据量与第二数据量相差在预设阈值内,比如0.1%,也可以是其他数值,具体此处不做限定),则确定该目标数据正确完全写入目标子表,若不匹配,则确定该目标数据未正确完全写入目标子表。
需要说明的是,若目标数据的数据结构转换成目标结构父表对应的数据结构失败(比如数据里某列定义的结构是数字型,但是实际无法对数据转换成数字型会导致失败),则服务器删除目标子表。
209、删除目标子表。
本实施例中,当服务器确定目标数据没有正确完全的写入目标子表,则删除目标子表。
210、服务器更新元数据表的批次信息。
本实施例中,当服务器确定目标数据正确完全写入目标子表后,可以更新元数据表的批次信息,该批次信息包括执行时间、导入数量和操作结果等。
综上所述,当有数据需要更新至服务器的数据库时,服务器可以获取该数据,并判断该数据是否是首次导入,若该数据是首次导入,则服务器为该数据构建与其对应的数据结构父表,根据该数据结构父表创建目标子表,且将该数据写入到目标子表里,服务器判断是否完全正确写入该目标子表,若该数据正确完成写入该目标子表,则服务器更新元数据表的批次信息。由此可以看出,服务器在导入数据前,不需要创建临时表,将数据导入该临时表,然后再从临时表中将数据导入正式表,这样可以增加服务器的效率以及减少服务器的性能开销。
上面从数据处理方法的角度对本发明进行详细描述,下面从服务器的角度,对本发明进行详细描述,请参阅图3,本发明实施例中服务器的一个实施例包括:
获取模块301,用于获取目标数据,目标数据为需要导入服务器的数据库的数据;
第一判断模块302,用于判断目标数据是否是首次导入数据库;
构建模块303,用于在确定目标数据为首次导入所述数据库,为目标数据构建目标数据结构父表;
第一创建模块304,用于根据目标数据结构父表创建目标子表;
第一写入模块305,用于将目标数据写入目标子表;
第二判断模块306,用于判断目标数据是否正确完全写入目标子表;
更新模块307,用于在确定目标数据正确完全写入目标子表,更新元数据表的批次信息,元数据表为数据库中所有数据结构父表的索引。
为了便于理解,下面结合图4进行说明,本发明实施例的一种服务器,包括:
获取模块401,用于获取目标数据,目标数据为需要导入服务器的数据库的数据;
第一判断模块402,用于判断目标数据是否是首次导入数据库;
第二创建模块403,用于确定目标数据不是首次导入所述数据库时,为目标数据对应的数据结构父表创建第一子表;
第二写入模块404,用于将目标数据写入所述第一子表。
构建模块405,用于在确定目标数据为首次导入数据库,为目标数据构建目标数据结构父表;
第一创建模块406,用于根据目标数据结构父表创建目标子表;
第一写入模块407,用于将目标数据写入目标子表;
第二判断模块408,用于判断目标数据是否正确完全写入目标子表;
删除模块409,用于在确定目标数据未正确完全写入目标子表时,删除目标子表。
更新模块410,用于在确定目标数据正确完全写入目标子表,更新元数据表的批次信息,元数据表为数据库中所有数据结构父表的索引。
其中,第一判断模块402可以进一步包括:
第一判断单元4021,用于判断数据库中是否存在有与目标数据对应的数据结构父表;
第一确定单元4022,用于在数据库中存在有与目标数据对应的数据结构父表时,确定目标数据不是首次导入数据库;
第二确定单元4023,用于在数据库中不存在有与目标数据对应的数据结构父表时,确定目标数据为首次导入数据库。
其中,第二判断模块408可以进一步包括:
第二判断单元4081,用于判断目标数据的数据结构是否能够成功转换成与目标结构父表对应的数据结构;
写入单元4082,用于在第二判断单元确定目标数据结构成功转换成与目标结构父表对应的数据结构时,将目标数据写入目标子表;
第一获取单元4083,用于获取目标数据的第一数据量;
第二获取单元4084,用于获取目标数据导入目标子表后的第二数据量;
第三判断单元4085,用于判断第一数据量与第二数据量是否匹配;
第三确定单元4086,用于在第一数据量与第二数据量匹配时,确定目标数据正确完全写入目标子表;
第四确定单元4087,用于在第一数据量与第二数据量不匹配时,确定目标数据未正确完全写入目标子表。
本实施例中的服务器的各模块与单元之间的交互方式如前述图3所示数据处理方法实施例中的描述类似,具体此处不再赘述。
本实施例中,服务器通过获取模块401可以获取到目标数据,通过第一判断模块402可以判断目标数据是否是首次导入数据库,通过构建模块405在确定目标数据为首次导入数据库时,为目标数据构建目标数据结构父表,通过第一创建模块406根据目标数据结构父表创建子表,通过第一写入模块407将目标数据写入目标子表,通过第二判断模块408判断目标数据是否正确完全写入目标子表,通过删除模块409在确定目标数据未正确完全写入目标子表时,删除目标子表,通过更新模块410在确定目标数据正确完成写入目标子表时,更新元数据表的批次信息。可以看出,服务器在导入数据前,不需要创建临时表,将数据导入该临时表,然后再从临时表中将数据导入正式表,这样可以增加服务器的效率以及减少服务器的性能开销。另外,在确定目标数据未正确完全导入目标子表的时候,删除目标子表,保证了数据的事务性。
请参阅图5,图5是本发明实施例提供的一种服务器的结构示意图,该服务器500可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(centralprocessing units,CPU)522(例如,一个或一个以上处理器)和存储器32,一个或一个以上存储应用程序542或数据544的存储介质530(例如一个或一个以上海量存储设备)。其中,存储器532和存储介质530可以是短暂存储或持久存储。存储在存储介质530的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器522可以设置为与存储介质530通信,在服务器500上执行存储介质530中的一系列指令操作。
服务器500还可以包括一个或一个以上电源526,一个或一个以上有线或无线网络接口550,一个或一个以上输入输出接口558,和/或,一个或一个以上操作系统541,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (8)

1.一种数据处理方法,其特征在于,包括:
服务器获取目标数据,所述目标数据为需要导入所述服务器的数据库的数据;
所述服务器判断所述目标数据是否是首次导入所述数据库;
若所述服务器确定所述目标数据为首次导入所述数据库,则所述服务器为所述目标数据构建目标数据结构父表;
所述服务器根据所述目标数据结构父表创建目标子表;
所述服务器将所述目标数据写入所述目标子表;
所述服务器判断所述目标数据是否正确完全写入所述目标子表;
若所述服务器确定所述目标数据正确完全写入所述目标子表,则所述服务器更新元数据表的批次信息,所述元数据表为所述数据库中所有数据结构父表的索引;
所述服务器判断所述目标数据是否正确完全写入所述目标子表包括:
所述服务器判断所述目标数据的数据结构是否能够成功转换成与所述目标数据结构父表对应的数据结构;
若所述目标数据的数据结构能够成功转换成与所述目标数据结构父表对应的数据结构,则所述服务器将所述目标数据写入所述目标子表;
所述服务器获取所述目标数据的第一数据量;
所述服务器获取所述目标数据导入所述目标子表后的第二数据量;
所述服务器判断所述第一数据量与所述第二数据量是否匹配;
若所述第一数据量与所述第二数据量匹配,则确定所述目标数据正确完全写入所述目标子表;
若所述第一数据量与所述第二数据量不匹配,则确定所述目标数据未正确完全写入所述目标子表。
2.根据权利要求 1 所述的数据处理方法,其特征在于,所述服务器判断所述目标数据是否是首次导入所述数据库包括:
所述服务器判断所述数据库中是否存在有与所述目标数据对应的数据结构父表;
若存在,则确定所述目标数据不是首次导入所述数据库;若不存在,则确定所述目标数据为首次导入所述数据库。
3.根据权利要求 1 或 2 所述的数据处理方法,其特征在于,当所述服务器确定所述目标数据不是首次导入所述数据库时,所述方法还包括:
所述服务器为所述目标数据对应的数据结构父表创建第一子表;
所述服务器将所述目标数据写入所述第一子表。
4.根据权利要求 1 所述的数据处理方法,其特征在于,所述服务器确定所述目标数据未正确完全写入所述目标子表时,所述方法还包括:
所述服务器删除所述目标子表。
5.一种服务器,其特征在于,包括:
获取模块,用于获取目标数据,所述目标数据为需要导入所述服务器的数据库的数据;
第一判断模块,用于判断所述目标数据是否是首次导入所述数据库;
构建模块,用于在确定所述目标数据为首次导入所述数据库,为所述目标数据构建目标数据结构父表;
第一创建模块,用于根据所述目标数据结构父表创建目标子表;
第一写入模块,用于将所述目标数据写入所述目标子表;
第二判断模块,用于判断所述目标数据是否正确完全写入所述目标子表;
更新模块,用于在确定所述目标数据正确完全写入所述目标子表,更新元数据表的批次信息,所述元数据表为所述数据库中所有数据结构父表的索引;
所述第二判断模块包括:
第二判断单元,用于判断所述目标数据的数据结构是否能够成功转换成与所述目标数据结构父表对应的数据结构;
写入单元,用于在所述第二判断单元确定所述目标数据结构成功转换成与所述目标数据结构父表对应的数据结构时,将所述目标数据写入所述目标子表;
第一获取单元,用于获取所述目标数据的第一数据量;
第二获取单元,用于获取所述目标数据导入所述目标子表后的第二数据量;
第三判断单元,用于判断所述第一数据量与所述第二数据量是否匹配;
第三确定单元,用于在所述第一数据量与所述第二数据量匹配时,确定所述目标数据正确完全写入所述目标子表;
第四确定单元,用于在所述第一数据量与所述第二数据量不匹配时,确定所述目标数据未正确完全写入所述目标子表。
6.根据权利要求 5 所述的服务器,其特征在于,所述第一判断模块包括:第一判断单元,用于判断所述数据库中是否存在有与所述目标数据对应的数据结构父表;
第一确定单元,用于在所述数据库中存在有与所述目标数据对应的数据结构父表时,确定所述目标数据不是首次导入所述数据库;
第二确定单元,用于在所述数据库中不存在有与所述目标数据对应的数据结构父表时,确定所述目标数据为首次导入所述数据库。
7.根据权利要求 5 所述的服务器,其特征在于,所述服务器还包括:
第二创建模块,用于确定所述目标数据不是首次导入所述数据库时,为所述目标数据对应的数据结构父表创建第一子表;
第二写入模块,用于将所述目标数据写入所述第一子表。
8.根据权利要求 5 所述的服务器,其特征在于,所述服务器还包括:
删除模块,用于在确定所述目标数据未正确完全写入所述目标子表时,删除所述目标子表。
CN201610983549.6A 2016-11-08 2016-11-08 一种数据处理方法及服务器 Active CN108073584B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610983549.6A CN108073584B (zh) 2016-11-08 2016-11-08 一种数据处理方法及服务器

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610983549.6A CN108073584B (zh) 2016-11-08 2016-11-08 一种数据处理方法及服务器

Publications (2)

Publication Number Publication Date
CN108073584A CN108073584A (zh) 2018-05-25
CN108073584B true CN108073584B (zh) 2021-11-30

Family

ID=62153376

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610983549.6A Active CN108073584B (zh) 2016-11-08 2016-11-08 一种数据处理方法及服务器

Country Status (1)

Country Link
CN (1) CN108073584B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111611229B (zh) * 2020-06-11 2023-05-26 上海乾臻信息科技有限公司 数据储存方法及用于数据储存的装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101393560A (zh) * 2008-11-05 2009-03-25 金蝶软件(中国)有限公司 数据结构的处理方法及系统
CN101515291A (zh) * 2009-03-26 2009-08-26 北京泰合佳通信息技术有限公司 一种将数据批量导入数据库的方法及系统
CN101814044A (zh) * 2010-04-19 2010-08-25 中兴通讯股份有限公司 元数据处理方法及装置
CN103605776A (zh) * 2013-11-28 2014-02-26 北京国双科技有限公司 信息数据库的数据处理方法和装置
CN104346377A (zh) * 2013-07-31 2015-02-11 克拉玛依红有软件有限责任公司 一种基于唯一标识的数据集成和交换方法
CN104462169A (zh) * 2013-09-16 2015-03-25 西门子公司 将数据导入到数据库表中的方法和系统
CN105095393A (zh) * 2015-06-30 2015-11-25 努比亚技术有限公司 一种数据存储方法及装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101393560A (zh) * 2008-11-05 2009-03-25 金蝶软件(中国)有限公司 数据结构的处理方法及系统
CN101515291A (zh) * 2009-03-26 2009-08-26 北京泰合佳通信息技术有限公司 一种将数据批量导入数据库的方法及系统
CN101814044A (zh) * 2010-04-19 2010-08-25 中兴通讯股份有限公司 元数据处理方法及装置
CN104346377A (zh) * 2013-07-31 2015-02-11 克拉玛依红有软件有限责任公司 一种基于唯一标识的数据集成和交换方法
CN104462169A (zh) * 2013-09-16 2015-03-25 西门子公司 将数据导入到数据库表中的方法和系统
CN103605776A (zh) * 2013-11-28 2014-02-26 北京国双科技有限公司 信息数据库的数据处理方法和装置
CN105095393A (zh) * 2015-06-30 2015-11-25 努比亚技术有限公司 一种数据存储方法及装置

Also Published As

Publication number Publication date
CN108073584A (zh) 2018-05-25

Similar Documents

Publication Publication Date Title
CN110908997B (zh) 数据血缘构建方法、装置、服务器及可读存储介质
JP5298117B2 (ja) 分散コンピューティングにおけるデータマージング
EP3113043B1 (en) Method, device and host for updating metadata stored in columns in distributed file system
EP3751426A1 (en) System and method for migration of a legacy datastore
CN107977396B (zh) 一种KeyValue数据库的数据表的更新方法与表数据更新装置
WO2015142548A1 (en) Dependency-aware transaction batching for data replication
US10296505B2 (en) Framework for joining datasets
US10394805B2 (en) Database management for mobile devices
CN104572895A (zh) MPP数据库与Hadoop集群数据互通方法、工具及实现方法
CN111858760B (zh) 一种异构数据库的数据处理方法及装置
CN111651519B (zh) 数据同步方法、数据同步装置、电子设备及存储介质
EP2603867B1 (en) Sharing data on mobile devices
CN109885585B (zh) 支持存储过程、触发器与视图的分布式数据库系统和方法
CN109086382B (zh) 一种数据同步方法、装置、设备及存储介质
CN107103035B (zh) 本地表数据更新方法及装置
CN113204571B (zh) 涉及写入操作的sql执行方法、装置及存储介质
US11442930B2 (en) Method, apparatus, device and storage medium for data aggregation
CN105447105A (zh) 基于NoSQL的分布式物联网数据的单字段区间索引查询方式
CN111125064A (zh) 一种生成数据库模式定义语句的方法和装置
CN110162540B (zh) 区块链账本数据的查询方法、电子装置及存储介质
JP6329552B2 (ja) 単一テーブルから複数テーブルへの参照データセグメント化
US10185757B2 (en) Non-uniform multi-row text file loading
CN114443015A (zh) 一种基于数据库元数据的增删改查服务接口生成方法
CN108073584B (zh) 一种数据处理方法及服务器
CN114968917A (zh) 一种文件数据快速导入方法及装置

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

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.

CB02 Change of applicant information
GR01 Patent grant
GR01 Patent grant