CN108446371B - 数据回导方法、装置、计算机设备及存储介质 - Google Patents
数据回导方法、装置、计算机设备及存储介质 Download PDFInfo
- Publication number
- CN108446371B CN108446371B CN201810214182.0A CN201810214182A CN108446371B CN 108446371 B CN108446371 B CN 108446371B CN 201810214182 A CN201810214182 A CN 201810214182A CN 108446371 B CN108446371 B CN 108446371B
- Authority
- CN
- China
- Prior art keywords
- service
- data
- sub
- service identification
- server
- 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/21—Design, administration or maintenance of databases
-
- 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/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (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)
- Stored Programmes (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本申请公开了一种数据回导方法、装置、计算机设备及存储介质。该方法包括:获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;根据业务数据的当前年份和当前月份的组合创建表名;根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。该方法实现Hadoop服务器无需跨广域调用MongoDB数据库中的Java程序,而只需向MongoDB数据库传入业务标识,就能实现与业务标识对应的数据操作,避免了数据操作超时的问题。
Description
技术领域
本申请涉及数据库数据管理技术领域,尤其涉及一种数据回导方法、装置、计算机设备及存储介质。
背景技术
目前,Hadoop服务器(Hadoop服务器是一个分布式文件***服务器)和MongoDB数据库服务器(MongoDB据库服务器是一个分布式文档存储数据库)一般是分布在不同的城市或省份。当需要通过Hadoop服务器对MongoDB数据库服务器中的历史数据(如1年前的数据)进行删除时,常采用的方法是Hadoop跨广域网调用MongoDB数据库中的Java程序,以实现对历史数据的删除,但是上述方式容易导致大量的超时,导致数据删除和更新的效率低下。
发明内容
本申请提供了一种数据回导方法、装置、计算机设备及存储介质,旨在解决现有技术中过Hadoop服务器对MongoDB数据库服务器中的历史数据进行数据操作时,需调用MongoDB数据库中的Java程序以实现对历史数据的操作,导致超时严重问题。
第一方面,本申请提供了一种数据回导方法,其包括:
获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;
根据业务数据的当前年份和当前月份的组合创建表名;
根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
第二方面,本申请提供了一种数据回导装置,其包括:
信息获取单元,用于获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;
建表单元,用于根据业务数据的当前年份和当前月份的组合创建表名;
数据操作单元,用于根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
第三方面,本申请又提供了一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现本申请提供的任一项所述的数据回导方法。
第四方面,本申请还提供了一种存储介质,其中所述存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行本申请提供的任一项所述的数据回导方法。
本申请提供一种数据回导方法、装置、计算机设备及存储介质。该方法通过获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;根据业务数据的当前年份和当前月份的组合创建表名;根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。该方法实现Hadoop服务器无需跨广域调用MongoDB数据库中的Java程序,而只需向MongoDB数据库传入业务标识,就能实现与业务标识对应的数据操作,避免了数据操作超时的问题。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据回导方法的示意流程图;
图2为本申请实施例提供的一种数据回导方法的另一示意流程图;
图3为本申请实施例提供的一种数据回导方法的另一示意流程图;
图4是本申请实施例提供的一种数据回导方法的子流程示意图;
图5为本申请实施例提供的一种数据回导方法的另一子流程示意图;
图6为本申请实施例提供的一种数据回导装置的示意性框图;
图7为本申请实施例提供的一种数据回导装置的另一示意性框图;
图8为本申请实施例提供的一种数据回导装置的另一示意性框图;
图9为本申请实施例提供的一种数据回导装置的子单元示意性框图;
图10为本申请实施例提供的一种数据回导装置的另一子单元示意性框图;
图11为本申请实施例提供的一种计算机设备的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
应当理解,当在本说明书和所附权利要求书中使用时,术语“包括”和“包含”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
还应当理解,在此本申请说明书中所使用的术语仅仅是出于描述特定实施例的目的而并不意在限制本申请。如在本申请说明书和所附权利要求书中所使用的那样,除非上下文清楚地指明其它情况,否则单数形式的“一”、“一个”及“该”意在包括复数形式。
还应当进一步理解,在本申请说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
请参阅图1,图1是本申请实施例提供的一种数据回导方法的示意流程图。该方法应用于台式电脑、手提电脑、平板电脑等终端中。如图1所示,该方法包括步骤S101~S103。
S101、获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识。
在本实施例中,由Java后台获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;Java后台是与MongoDB数据库服务器连接的、并存储有创建MongoDB集合权限程序的平台。
将Hadoop服务器产生业务数据进行数据跑数、并写入MongoDB数据库服务器时,会在与Hadoop服务器远程连接的Java后台中由预先设置的指定脚本来自动获取产生业务数据的当前年份和当前月份组合创建表名,及自动获取在Hadoop服务器中所配置的业务标识。该业务标识是根据对业务数据的处理需求在Hadoop服务器中预先配置的,即业务标识可形象的看做一任务类型标识,业务标识是在Hadoop服务器将业务数据传输前就配置好的。
由于是Hadoop服务器直接预先告知Java后台即将传输业务数据的时间区间,以及针对该业务数据的操作类型的业务标识,也就是在业务数据传输至MongoDB数据库服务器之前,在Java后台中就可针对即将接收的业务数据对应建表、删表等准备操作。无需Hadoop服务器先跨广域调用Java后台中的Java程序对业务数据进行对应数据操作后再传输至MongoDB数据库服务器。
在一实施例中,如图2所示,所述步骤S101之前还包括:
S101s、预先配置用于定义方法的接口类,及与接口类对应的继承类。
在本实施例中,接口类用于定义方法,继承类则是实现接口类的具体方法;例如,可在Java后台中所配置的接口类可定义创建索引方法、删除索引方法、创建表方法、删除表方法、检测MongoDB表是否存在方法、重命名表方法等方法。
其中,Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。也就是可以利用接口类中定义的方法,通过继承的方式来进一步细化具体实现方法。当在Java后台中预先配置接口类和继承类,就能对Hadoop服务器中所传输的业务标识进行精准识别。
在一实施例中,如图3所示,所述步骤S101之后、步骤S102之前还包括:
S101a、将当前年份和当前月份传入Java后台中指定脚本;
S101b、将Hadoop服务器中配置的业务标识传输至Java后台;
S101c、解析业务标识,获取与业务标识对应的继承类。
在本实施例中,当在Hadoop服务器中启动数据库定时任务(如数据库的定时JOB)时,将Hadoop服务器产生业务数据进行数据跑数、并写入MongoDB数据库服务器时,会在与Hadoop服务器远程连接的Java后台中由指定脚本根据产生业务数据的当前年份和当前月份组合创建表名,例如XXXX201608,其中XXXX为业务数据对应的数据来源部门标识,201608表示2016年8月。
Hadoop服务器中配置的业务标识,包括以下标识:
reateCollection,即创建表;
createIndexs,即创建索引;
dropCollection,即删除表;
renameCollection,即重命名表;
当Java后台解析出业务标识后,则可以从Java后台中调用与业务标识对应的继承类。
而上述业务标识在具体表示时,因各自都有自定义的格式,例如createIndexs的业务标识在具体实施时,包括splitStringByIndexs(区分索引个数),splitStringByUnique(区分唯一索引),splitStringByColumn(区分列个数)这三个变量,假设
String splitStringByIndexs="####",
String splitStringByUnique="@@@@",
String splitStringByColumn="::::",
则createIndexs的业务标识可表示如下:
aa::::bb@@@@true####cc@@@@false
即为按字段aa、bb建复合唯一索引,按字段cc建非唯一索引,Java则根据这种格式进行分割判断;其他业务标识的格式也是类似的格式,因为种类众多,此处不再赘述。
通过在Java后台中解析了业务标识后,就获知了需对业务数据产生的数据操作类型,此时即避免了Hadoop服务器先跨广域调用Java后台中的Java程序对业务数据进行对应数据操作。
在一实施例中,如图4所示,所述步骤S101c包括以下子步骤:
S1011c、获取与业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段至第N+1子业务标识段;
S1012c、分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串;
S1013c、若未识别存在有第二指定字符串,根据对应的子业务标识段创建非唯一索引;
S1014c、若识别到存在有第二指定字符串,根据对应的子业务标识段创建唯一索引。
即,先获取业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段;
之后分别识别第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段中用于区分唯一索引的第二指定字符串,若未识别存在有到第二指定字符串则将对应的子业务标识段创建非唯一索引,若识别到存在有第二指定字符串则将对应的子业务标识段创建唯一索引。可见,通过识别指定字符串,就能识别对业务数据的操作类型,从而在MongoDB数据库服务器快速创建动态表以进行针对业务数据的操作。
例如,第一指定字符串设置为"####",即一旦识别到业务标识中有4个连续的#字符则将其视为分段标识,根据第一指定字符串的个数N将业务标识对应划分为N+1段。第二指定字符串设置为"@@@@",即一旦识别到业务标识中有4个连续的@字符则将其视为创建唯一索引标识,根据第二指定字符串在对应包括有@@@@的子业务标识段中创建唯一索引。
在一实施例中,如图5所示,所述步骤S1014c之后还包括以下子步骤:
S1015c、分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分列个数的第三指定字符串;
S1016c、若未识别存在有第三指定字符串,根据对应的子业务标识段创建非复合索引;
S1017c、若识别到存在有第三指定字符串,根据对应的子业务标识段创建复合索引。
即,分别识别第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段中用于区分列个数的第三指定字符串,若未识别存在有到第三指定字符串则将对应的子业务标识段创建非复合索引,若识别到存在有第三指定字符串则将对应的子业务标识段创建复合索引。可见,通过识别指定字符串,就能识别对业务数据的操作类型,从而在MongoDB数据库服务器快速创建动态表以进行针对业务数据的操作。
例如,第三指定字符串设置为"::::",即一旦识别到业务标识中有4个连续的:字符则将其视为创建复合索引标识,根据第三指定字符串在对应包括有::::的子业务标识段中创建复合索引。
S102、根据业务数据的当前年份和当前月份的组合创建表名。
在本实施例中,在与Hadoop服务器远程连接的Java后台中由指定脚本根据产生业务数据的当前年份和当前月份组合创建表名,例如XXXX201608,其中XXXX为业务数据对应的数据来源部门标识,201608表示2016年8月。
S103、根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
在本实施例中,当解析出业务标识对应的继承类为删除表,且业务标识中还包括具体的操作条件(如删除一年前的表),则可以先根据表名在MongoDB数据库服务器创建动态表,然后先删除与动态表创建日期间隔超出预设时间阈值(如上述设置的一年)的数据,再将业务数据写入动态表;其中,动态表的创建日期为当前年份和当前月份的组合。
可见,该方法实现Hadoop服务器无需跨广域调用MongoDB数据库中的Java程序,而只需向MongoDB数据库传入业务标识,就能实现与业务标识对应的数据操作,避免了数据操作超时的问题。
本申请实施例还提供一种数据回导装置,该数据回导装置用于执行前述任一项数据回导方法。具体地,请参阅图6,图6是本申请实施例提供的一种数据回导装置的示意性框图。数据回导装置100可以安装于台式电脑、平板电脑、手提电脑、等终端中。
如图6所示,数据回导装置100包括信息获取单元101、建表单元102、数据操作单元103。
信息获取单元101,用于获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识。
在本实施例中,由Java后台获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;Java后台是与MongoDB数据库服务器连接的、并存储有创建MongoDB集合权限程序的平台。
将Hadoop服务器产生业务数据进行数据跑数、并写入MongoDB数据库服务器时,会在与Hadoop服务器远程连接的Java后台中由预先设置的指定脚本来自动获取产生业务数据的当前年份和当前月份组合创建表名,及自动获取在Hadoop服务器中所配置的业务标识。该业务标识是根据对业务数据的处理需求在Hadoop服务器中预先配置的,即业务标识可形象的看做一任务类型标识,业务标识是在Hadoop服务器将业务数据传输前就配置好的。
由于是Hadoop服务器直接预先告知Java后台即将传输业务数据的时间区间,以及针对该业务数据的操作类型的业务标识,也就是在业务数据传输至MongoDB数据库服务器之前,在Java后台中就可针对即将接收的业务数据对应建表、删表等准备操作。无需Hadoop服务器先跨广域调用Java后台中的Java程序对业务数据进行对应数据操作后再传输至MongoDB数据库服务器。
在一实施例中,如图7所示,所述数据回导装置100还包括:
配置单元101s,用于预先配置用于定义方法的接口类,及与接口类对应的继承类。
在本实施例中,接口类用于定义方法,继承类则是实现接口类的具体方法;例如,可在Java后台中所配置的接口类可定义创建索引方法、删除索引方法、创建表方法、删除表方法、检测MongoDB表是否存在方法、重命名表方法等方法。
其中,Java接口是一系列方法的声明,是一些方法特征的集合,一个接口只有方法的特征没有方法的实现,因此这些方法可以在不同的地方被不同的类实现,而这些实现可以具有不同的行为(功能)。继承是使用已存在的类的定义作为基础建立新类的技术,新类的定义可以增加新的数据或新的功能,也可以用父类的功能,但不能选择性地继承父类。也就是可以利用接口类中定义的方法,通过继承的方式来进一步细化具体实现方法。当在Java后台中预先配置接口类和继承类,就能对Hadoop服务器中所传输的业务标识进行精准识别。
在一实施例中,如图8所示,所述数据回导装置100还包括:
第一传输单元101a,用于将当前年份和当前月份传入Java后台中指定脚本;
第二传输单元101b,用于将Hadoop服务器中配置的业务标识传输至Java后台;
业务标识解析单元101c,用于解析业务标识,获取与业务标识对应的继承类。
在本实施例中,当在Hadoop服务器中启动数据库定时任务(如数据库的定时JOB)时,将Hadoop服务器产生业务数据进行数据跑数、并写入MongoDB数据库服务器时,会在与Hadoop服务器远程连接的Java后台中由指定脚本根据产生业务数据的当前年份和当前月份组合创建表名,例如XXXX201608,其中XXXX为业务数据对应的数据来源部门标识,201608表示2016年8月。
Hadoop服务器中配置的业务标识,包括以下标识:
reateCollection,即创建表;
createIndexs,即创建索引;
dropCollection,即删除表;
renameCollection,即重命名表;
当Java后台解析出业务标识后,则可以从Java后台中调用与业务标识对应的继承类。
而上述业务标识在具体表示时,因各自都有自定义的格式,例如createIndexs的业务标识在具体实施时,包括splitStringByIndexs(区分索引个数),splitStringByUnique(区分唯一索引),splitStringByColumn(区分列个数)这三个变量,假设
String splitStringByIndexs="####",
String splitStringByUnique="@@@@",
String splitStringByColumn="::::",
则createIndexs的业务标识可表示如下:
aa::::bb@@@@true####cc@@@@false
即为按字段aa、bb建复合唯一索引,按字段cc建非唯一索引,Java则根据这种格式进行分割判断;其他业务标识的格式也是类似的格式,因为种类众多,此处不再赘述。
通过在Java后台中解析了业务标识后,就获知了需对业务数据产生的数据操作类型,此时即避免了Hadoop服务器先跨广域调用Java后台中的Java程序对业务数据进行对应数据操作。
在一实施例中,如图9所示,所述业务标识解析单元101c包括以下子单元:
第一识别单元1011c,用于获取与业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段至第N+1子业务标识段;
第一判断单元1012c,用于分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串;
第二判断单元1013c,用于若未识别存在有第二指定字符串,根据对应的子业务标识段创建非唯一索引;
第三识别单元1014c,用于若识别到存在有第二指定字符串,根据对应的子业务标识段创建唯一索引。
即,先获取业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段;
之后分别识别第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段中用于区分唯一索引的第二指定字符串,若未识别存在有到第二指定字符串则将对应的子业务标识段创建非唯一索引,若识别到存在有第二指定字符串则将对应的子业务标识段创建唯一索引。可见,通过识别指定字符串,就能识别对业务数据的操作类型,从而在MongoDB数据库服务器快速创建动态表以进行针对业务数据的操作。
例如,第一指定字符串设置为"####",即一旦识别到业务标识中有4个连续的#字符则将其视为分段标识,根据第一指定字符串的个数N将业务标识对应划分为N+1段。第二指定字符串设置为"@@@@",即一旦识别到业务标识中有4个连续的@字符则将其视为创建唯一索引标识,根据第二指定字符串在对应包括有@@@@的子业务标识段中创建唯一索引。
在一实施例中,如图10所示,所述步骤S1014c之后还包括以下子步骤:
第二判断单元1015c,用于分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分列个数的第三指定字符串;
第四识别单元1016c,用于若未识别存在有第三指定字符串,根据对应的子业务标识段创建非复合索引;
第五识别单元1017c,用于若识别到存在有第三指定字符串,根据对应的子业务标识段创建复合索引。
即,分别识别第一子业务标识段、第二子业务标识段、……、第N+1子业务标识段中用于区分列个数的第三指定字符串,若未识别存在有到第三指定字符串则将对应的子业务标识段创建非复合索引,若识别到存在有第三指定字符串则将对应的子业务标识段创建复合索引。可见,通过识别指定字符串,就能识别对业务数据的操作类型,从而在MongoDB数据库服务器快速创建动态表以进行针对业务数据的操作。
例如,第三指定字符串设置为"::::",即一旦识别到业务标识中有4个连续的:字符则将其视为创建复合索引标识,根据第三指定字符串在对应包括有::::的子业务标识段中创建复合索引。
建表单元102,用于根据业务数据的当前年份和当前月份的组合创建表名。
在本实施例中,在与Hadoop服务器远程连接的Java后台中由指定脚本根据产生业务数据的当前年份和当前月份组合创建表名,例如XXXX201608,其中XXXX为业务数据对应的数据来源部门标识,201608表示2016年8月。
数据操作单元103,用于根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
在本实施例中,当解析出业务标识对应的继承类为删除表,且业务标识中还包括具体的操作条件(如删除一年前的表),则可以先根据表名在MongoDB数据库服务器创建动态表,然后先删除与动态表创建日期间隔超出预设时间阈值(如上述设置的一年)的数据,再将业务数据写入动态表;其中,动态表的创建日期为当前年份和当前月份的组合。
可见,该装置实现Hadoop服务器无需跨广域调用MongoDB数据库中的Java程序,而只需向MongoDB数据库传入业务标识,就能实现与业务标识对应的数据操作,避免了数据操作超时的问题。
上述数据回导装置可以实现为一种计算机程序的形式,该计算机程序可以在如图11所示的计算机设备上运行。
请参阅图11,图11是本申请实施例提供的一种计算机设备的示意性框图。该计算机设备500设备可以是终端。该终端可以是平板电脑、笔记本电脑、台式电脑、个人数字助理等电子设备。
参阅图11,该计算机设备500包括通过***总线501连接的处理器502、存储器和网络接口505,其中,存储器可以包括非易失性存储介质503和内存储器504。
该非易失性存储介质503可存储操作***5031和计算机程序5032。该计算机程序5032包括程序指令,该程序指令被执行时,可使得处理器502执行一种数据回导方法。
该处理器502用于提供计算和控制能力,支撑整个计算机设备500的运行。
该内存储器504为非易失性存储介质503中的计算机程序5032的运行提供环境,该计算机程序5032被处理器502执行时,可使得处理器502执行一种数据回导方法。
该网络接口505用于进行网络通信,如发送分配的任务等。本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备500的限定,具体的计算机设备500可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
其中,所述处理器502用于运行存储在存储器中的计算机程序5032,以实现如下功能:获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;根据业务数据的当前年份和当前月份的组合创建表名;根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
在一实施例中,处理器502还执行如下操作:预先配置用于定义方法的接口类,及与接口类对应的继承类。
在一实施例中,处理器502还执行如下操作:将当前年份和当前月份传入Java后台中指定脚本;将Hadoop服务器中配置的业务标识传输至Java后台;解析业务标识,获取与业务标识对应的继承类。
在一实施例中,处理器502还执行如下操作:获取与业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段至第N+1子业务标识段;分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串;若未识别存在有第二指定字符串,根据对应的子业务标识段创建非唯一索引;若识别到存在有第二指定字符串,根据对应的子业务标识段创建唯一索引。
在一实施例中,处理器502还执行如下操作:分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分列个数的第三指定字符串;若未识别存在有第三指定字符串,根据对应的子业务标识段创建非复合索引;若识别到存在有第三指定字符串,根据对应的子业务标识段创建复合索引。
本领域技术人员可以理解,图11中示出的计算机设备的实施例并不构成对计算机设备具体构成的限定,在其他实施例中,计算机设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。例如,在一些实施例中,计算机设备可以仅包括存储器及处理器,在这样的实施例中,存储器及处理器的结构及功能与图11所示实施例一致,在此不再赘述。
应当理解,在本申请实施例中,处理器502可以是中央处理单元(CentralProcessing Unit,CPU),该处理器502还可以是其他通用处理器、数字信号处理器(DigitalSignal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。其中,通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
在本申请的另一实施例中提供一种存储介质。该存储介质可以为计算机可读存储介质。该存储介质存储有计算机程序,其中计算机程序包括程序指令。该程序指令被处理器执行时实现:获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;根据业务数据的当前年份和当前月份的组合创建表名;根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表。
在一实施例中,该程序指令被处理器执行时实现:预先配置用于定义方法的接口类,及与接口类对应的继承类。
在一实施例中,该程序指令被处理器执行时实现:将当前年份和当前月份传入Java后台中指定脚本;将Hadoop服务器中配置的业务标识传输至Java后台;解析业务标识,获取与业务标识对应的继承类。
在一实施例中,该程序指令被处理器执行时实现:获取与业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段至第N+1子业务标识段;分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串;若未识别存在有第二指定字符串,根据对应的子业务标识段创建非唯一索引;若识别到存在有第二指定字符串,根据对应的子业务标识段创建唯一索引。
在一实施例中,该程序指令被处理器执行时实现:分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分列个数的第三指定字符串;若未识别存在有第三指定字符串,根据对应的子业务标识段创建非复合索引;若识别到存在有第三指定字符串,根据对应的子业务标识段创建复合索引。
所述存储介质可以是前述设备的内部存储单元,例如设备的硬盘或内存。所述存储介质也可以是所述设备的外部存储设备,例如所述设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储介质还可以既包括所述设备的内部存储单元也包括外部存储设备。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的设备、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,也可以将具有相同功能的单元集合成一个单元,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另外,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口、装置或单元的间接耦合或通信连接,也可以是电的,机械的或其它的形式连接。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以是两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分,或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。
Claims (8)
1.一种数据回导方法,其特征在于,包括:
获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;
根据业务数据的当前年份和当前月份的组合创建表名;
根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表;
所述获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识之后,还包括:
将当前年份和当前月份传入Java后台中指定脚本;
将Hadoop服务器中配置的业务标识传输至Java后台;
解析业务标识,获取与业务标识对应的继承类。
2.根据权利要求1所述的数据回导方法,其特征在于,所述获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识之前,还包括:
预先配置用于定义方法的接口类,及与接口类对应的继承类。
3.根据权利要求1所述的数据回导方法,其特征在于,所述解析业务标识,获取与业务标识对应的继承类,包括:
获取与业务标识对应的字符串中所包括用于区分索引个数的第一指定字符串的个数N,并根据第一指定字符串将业务标识对应划分为N+1段,分别记为第一子业务标识段至第N+1子业务标识段;
分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串;
若未识别存在有第二指定字符串,根据对应的子业务标识段创建非唯一索引;
若识别到存在有第二指定字符串,根据对应的子业务标识段创建唯一索引。
4.根据权利要求3所述的数据回导方法,其特征在于,所述分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分唯一索引的第二指定字符串之后,还包括:
分别识别第一子业务标识段至第N+1子业务标识段中是否存在用于区分列个数的第三指定字符串;
若未识别存在有第三指定字符串,根据对应的子业务标识段创建非复合索引;
若识别到存在有第三指定字符串,根据对应的子业务标识段创建复合索引。
5.一种数据回导装置,其特征在于,包括:
信息获取单元,用于获取由Hadoop服务器中产生业务数据的当前年份和当前月份,及在Hadoop服务器中所配置的业务标识;
建表单元,用于根据业务数据的当前年份和当前月份的组合创建表名;
数据操作单元,用于根据表名在MongoDB数据库服务器创建动态表,获取动态表的创建日期,及获取与在Hadoop服务器中所配置的业务标识对应的继承类,根据继承类的类型对业务数据进行相应操作写入动态表;
所述数据回导装置还包括:
第一传输单元,用于将当前年份和当前月份传入Java后台中指定脚本;
第二传输单元,用于将Hadoop服务器中配置的业务标识传输至Java后台;
业务标识解析单元,用于解析业务标识,获取与业务标识对应的继承类。
6.根据权利要求5所述的数据回导装置,其特征在于,还包括:
配置单元,用于预先配置用于定义方法的接口类,及与接口类对应的继承类。
7.一种计算机设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1-4中任一项所述的数据回导方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被处理器执行时使所述处理器执行如权利要求1-4任一项所述的数据回导方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810214182.0A CN108446371B (zh) | 2018-03-15 | 2018-03-15 | 数据回导方法、装置、计算机设备及存储介质 |
PCT/CN2018/102607 WO2019174190A1 (zh) | 2018-03-15 | 2018-08-28 | 数据回导方法、装置、计算机设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810214182.0A CN108446371B (zh) | 2018-03-15 | 2018-03-15 | 数据回导方法、装置、计算机设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108446371A CN108446371A (zh) | 2018-08-24 |
CN108446371B true CN108446371B (zh) | 2020-10-27 |
Family
ID=63194483
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810214182.0A Active CN108446371B (zh) | 2018-03-15 | 2018-03-15 | 数据回导方法、装置、计算机设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108446371B (zh) |
WO (1) | WO2019174190A1 (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108446371B (zh) * | 2018-03-15 | 2020-10-27 | 平安科技(深圳)有限公司 | 数据回导方法、装置、计算机设备及存储介质 |
CN109324887B (zh) * | 2018-09-28 | 2024-05-10 | 中国平安财产保险股份有限公司 | 稽核数据并行加工方法及*** |
CN112364031B (zh) * | 2021-01-12 | 2021-04-06 | 支付宝(杭州)信息技术有限公司 | 一种基于可信账本数据库的业务衍生记录存储方法 |
CN113076320A (zh) * | 2021-04-20 | 2021-07-06 | 北京沃东天骏信息技术有限公司 | 配置数据表的方法、装置、设备和计算机可读介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317899A (zh) * | 2014-10-24 | 2015-01-28 | 西安未来国际信息股份有限公司 | 一种大数据分析与处理***及访问方法 |
CN107665233A (zh) * | 2017-07-24 | 2018-02-06 | 上海壹账通金融科技有限公司 | 数据库数据处理方法、装置、计算机设备和存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9128991B2 (en) * | 2012-04-03 | 2015-09-08 | Sas Institute, Inc. | Techniques to perform in-database computational programming |
CN107220266B (zh) * | 2016-03-22 | 2021-03-19 | 创新先进技术有限公司 | 一种创建业务数据库、业务数据存储和确定业务数据的方法及装置 |
CN106897335B (zh) * | 2016-06-28 | 2020-11-27 | 创新先进技术有限公司 | 一种业务数据的存储方法、记录标识符的生成方法及装置 |
CN107066591A (zh) * | 2017-04-18 | 2017-08-18 | 北京思特奇信息技术股份有限公司 | 一种对业务进行处理的方法及装置 |
CN108446371B (zh) * | 2018-03-15 | 2020-10-27 | 平安科技(深圳)有限公司 | 数据回导方法、装置、计算机设备及存储介质 |
-
2018
- 2018-03-15 CN CN201810214182.0A patent/CN108446371B/zh active Active
- 2018-08-28 WO PCT/CN2018/102607 patent/WO2019174190A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104317899A (zh) * | 2014-10-24 | 2015-01-28 | 西安未来国际信息股份有限公司 | 一种大数据分析与处理***及访问方法 |
CN107665233A (zh) * | 2017-07-24 | 2018-02-06 | 上海壹账通金融科技有限公司 | 数据库数据处理方法、装置、计算机设备和存储介质 |
Non-Patent Citations (1)
Title |
---|
面向大数据处理的Hadoop与MongoDB整合技术研究;曾强;《万方学位论文》;20151229;正文第1,14,20-24页 * |
Also Published As
Publication number | Publication date |
---|---|
WO2019174190A1 (zh) | 2019-09-19 |
CN108446371A (zh) | 2018-08-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108446371B (zh) | 数据回导方法、装置、计算机设备及存储介质 | |
CN106502736B (zh) | 应用程序处理方法和装置 | |
US8635162B2 (en) | Creating rules for the administration of end-user license agreements | |
CN109543462B (zh) | 设备标识确定方法、装置、服务器及存储介质 | |
CN109995805B (zh) | 一种智能机器人的管理方法、终端设备及介质 | |
CN110457666B (zh) | 一种报表生成方法、***及电子设备和存储介质 | |
CN112068874B (zh) | 软件项目持续集成方法、装置、终端设备和存储介质 | |
CN111651296A (zh) | 数据删除操作的拦截备份方法、装置、设备及存储介质 | |
CN112947986B (zh) | 多版本代码签入控制方法、装置、客户端及存储介质 | |
CN110990346A (zh) | 基于区块链的文件数据处理方法、装置、设备及存储介质 | |
CN113391901A (zh) | Rpa机器人的管理方法、装置、设备及存储介质 | |
CN109960538A (zh) | 一种配置界面管理方法、配置界面管理装置及电子设备 | |
CN110782169A (zh) | 更新业务流程方法和装置 | |
CN114860787A (zh) | 数据管理方法、装置、电子设备及可读存储介质 | |
CN111047434A (zh) | 一种操作记录生成方法、装置、计算机设备和存储介质 | |
CN117130697B (zh) | 在任务栏固定应用的方法和装置 | |
CN112667631A (zh) | 业务字段自动编辑方法、装置、设备及存储介质 | |
US20070083474A1 (en) | Administration of end-user licence agreements | |
CN111694810A (zh) | 数据仓库的创建方法、装置、电子设备及可读存储介质 | |
CN115509668A (zh) | 前端页面解析型框架的构建方法、装置、设备及存储介质 | |
CN114356290A (zh) | 一种数据处理方法、装置及计算机可读存储介质 | |
CN109634636B (zh) | 应用处理方法、装置、设备和介质 | |
CN111026317A (zh) | 用于确定用户操作的方法、装置及存储介质 | |
CN112199428B (zh) | 功能数据块的应用管理***、方法及终端设备 | |
CN117725090A (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |