CN107766508A - 一种数据文件采集分发的方法、系统 - Google Patents
一种数据文件采集分发的方法、系统 Download PDFInfo
- Publication number
- CN107766508A CN107766508A CN201710992502.0A CN201710992502A CN107766508A CN 107766508 A CN107766508 A CN 107766508A CN 201710992502 A CN201710992502 A CN 201710992502A CN 107766508 A CN107766508 A CN 107766508A
- Authority
- CN
- China
- Prior art keywords
- file
- data file
- catalogue
- distribution
- data
- 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.)
- Granted
Links
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/10—File systems; File servers
- G06F16/16—File or folder operations, e.g. details of user interfaces specifically adapted to file systems
- G06F16/162—Delete operations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/13—File access structures, e.g. distributed indices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/1734—Details of monitoring file system events, e.g. by the use of hooks, filter drivers, logs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Human Computer Interaction (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本发明实施例公开了一种数据文件采集分发的方法、系统、设备和计算机可读存储介质,依据获取的采集任务的配置信息,从源主机中采集数据文件,并将其存储于文件备份目录中;在各个文件分发目录中建立与文件备份目录中数据文件的软链接,并将采集日志写入数据库中;依据该软链接,获取数据文件,并根据获取的分发配置信息,将该数据文件发送给目标主机;完成数据文件的分发后,删除该软链接,并将分发日志写入数据库中。通过将文件采集操作和文件分发操作分离,在接收到目标主机发送的重发请求时,修改采集日志的重发标识,依据对应的重发规则,将数据文件重新发送至目标主机,解决了采集分发在处理文件重新分发时效率低下且浪费系统资源的问题。
Description
技术领域
本发明涉及文件处理技术领域,特别是涉及一种数据文件采集分发的方法、系统、设备和计算机可读存储介质。
背景技术
在大型业务系统中,往往需要将业务数据文件发送到多个子系统进行相关的业务处理,为了不影响提供数据源的业务系统,一般是通过独立的数据文件采集分发系统来执行数据文件的分发。
传统的数据文件采集分发系统,通常的做法是将采集操作和分发操作放在同一个进程按顺序执行,例如执行采集分发任务时,先从源主机采集数据文件放在临时目录,再将数据文件分发到目标主机,最后删除临时目录的数据文件。这种做法存在的问题是,如果目标主机由于丢失数据文件或其他原因而要求重新分发数据文件时,由于此时采集和分发是一起执行的,则需要将整个采集分发任务重新执行一遍,即需要从源主机重新采集数据文件,再重新分发数据文件给目标主机,而不能快速的将数据文件重新分发给目标主机,这样就降低了重新分发的处理效率且造成了系统资源的浪费。
可见,如何解决处理文件重新分发时效率低下且浪费系统资源的问题,是本领域技术人员亟待解决的问题。
发明内容
本发明实施例的目的是提供一种数据文件采集分发的方法、系统、设备和计算机可读存储介质,可以解决处理文件重新分发时效率低下且浪费系统资源的问题。
为解决上述技术问题,本发明实施例提供一种数据文件采集分发的方法,包括:
依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中;
在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入数据库中;
获取分发任务的分发配置信息;
依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机;
当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中;
依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识;
依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
可选的,所述依据所述重发标识所属的操作类型,将所述数据文件重新发送至所述目标主机包括:
S201:判断所述重发标识是否属于第一类标识;若是,则执行S202;若否,则执行S204;
S202:依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识;其中,所述目标文件分发目录为所述目标主机对应的文件分发目录;
S203:依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接;
S204:判断所述重发标识是否属于第二类标识;若是,则执行S205;
S205:将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;返回所述S202。
可选的,在所述S202之前还包括:
当监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
可选的,还包括:
定时从数据库中获取采集任务的配置信息;
依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
本发明实施例还提供了一种数据文件采集分发的系统,包括文件采集模块、文件分发模块和数据库模块;
所述文件采集模块,用于依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中;在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入所述数据库模块中;
所述文件分发模块,用于获取分发任务的分发配置信息;依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库模块中;
所述文件采集模块还用于依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识;并触发所述文件分发模块,依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
可选的,所述文件采集模块包括第一判断子模块、建立子模块、第二判断子模块和替换子模块;
所述判断子模块,用于判断所述重发标识是否属于第一类标识;若是,则触发所述建立子模块;若否,则触发所述第二判断子模块;
所述建立子模块,用于依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识;其中,所述目标文件分发目录为所述目标主机对应的文件分发目录;
所述文件分发模块还用于依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接;
所述第二判断子模块,用于判断所述重发标识是否属于第二类标识;若是,则触发所述替换子模块;
所述替换子模块,用于将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;并触发所述建立子模块和所述文件分发模块。
可选的,所述替换子模块还用于当监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
可选的,还包括文件清理模块;
所述文件清理模块,用于定时从数据库中获取采集任务的配置信息;依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
本发明实施例还提供了一种涉税业务处理设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如上述数据文件采集分发的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述数据文件采集分发的方法的步骤。
由上述技术方案可以看出,获取采集任务的配置信息;依据该配置信息,从采集任务对应的源主机中采集数据文件,并将数据文件存储于对应的文件备份目录中;建立文件备份目录与各个文件分发目录之间的软链接,并将采集日志写入数据库中;获取分发任务的分发配置信息;依据建立的软链接,从分发配置信息中携带的文件分发目录中获取数据文件,并将该数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中。通过将文件采集操作和文件分发操作分离,在接收到的目标主机发送的重发请求时,可以通过修改采集日志的重发标识,依据重发标识对应的重发规则,将数据文件重新发送至所述目标主机。通过在采集日志设置文件重发标识,可以根据实际需要,灵活实现数据文件的只执行重新分发或者重新采集重新分发,从而解决传统采集分发在处理文件重新分发时效率低下且浪费系统资源的问题。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种数据文件采集分发的方法的流程图;
图2为本发明实施例提供的一种重新向目标主机发送数据文件的方法的流程图;
图3为本发明实施例提供的一种数据文件采集分发的系统的结构示意图;
图4为本发明实施例提供的一种数据文件采集分发的设备的硬件结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
接下来,详细介绍本发明实施例所提供的一种数据文件采集分发的方法。图1为本发明实施例提供的一种数据文件采集分发的方法的流程图,该方法包括:
S101:依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中。
在数据库中保存有预先配置的数据文件的采集任务和分发任务,采集任务指从某个源主机采集数据文件。每个采集任务有其对应的采集时间,系统可以实时监控数据库中预先配置的数据文件的采集任务,当发现当前时间有采集任务需要执行时,则获取该采集任务的配置信息。
其中,配置信息可以包括采集任务ID、源主机IP、源主机用户名、源主机密码、采集时间、源主机目录、文件名、文件备份目录、文件备份时间和文件分发目录。采集时间支持周期性被执行指令(crontab)定时任务配置规则,例如可以指定15分钟采集一次,或每小时采集一次,或每天采集一次等;文件名支持正则匹配,例如配置^WZ,则采集WZ开头的所有数据文件,且支持日期变量配置,例如,可配置变量[CUR_DAY]指当天日期、配置变量[YES_DAY]指昨天日期等;文件分发目录支持以分号分隔配置多个目录,例如,可配置/dir/test1;/man/test2/;,即指/dir/test1和/man/test2/两个文件分发目录。
系统可以根据获取的配置信息,从源主机采集对应的数据文件。例如,采集任务配置每天8点30分,从IP为192.168.6.6的源主机的/home/user1/data/目录下,采集文件名为WZ20170801.data的数据文件。
S102:在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入数据库中。
数据库除了可以保存预先配置的数据文件的采集任务和分发任务外,还可以用于保存数据文件的采集日志和分发日志。
在一个配置信息中可以包括有一个文件备份目录和至少一个文件分发目录,在本发明实施例中,可以通过在各个文件分发目录中建立与文件备份目录中数据文件的软链接,来实现后续依据文件分发目录获取对应的数据文件。
例如,采集WZ20170801.data后,放入备份目录/home/bak_data/,然后使用命令创建软链接:ln-s/home/bak_data/WZ20170801.data/home/file1/WZ20170801.data;ln-s/home/bak_data/WZ20170801.data/home/file2/WZ20170801.data;ln-s/home/bak_data/WZ20170801.data/home/file3/WZ20170801.data。即可分别在文件分发目录/home/file1、/home/file2、/home/file3创建名称为WZ20170801.data的软链接。
创建的软链接实际上不是一个数据文件,而只是一个指针标识,指向备份目录中的实际数据文件,这样做的目的是可以快速将数据文件链接到每个文件分发目录下,而如果将实际数据文件分别放到每个文件分发目录下,则会影响处理效率且浪费存储空间。并且,通过建立软链接,可以实现多个分发任务的隔离处理,各个分发任务之间互不影响。
S103:获取分发任务的分发配置信息。
与获取采集任务的配置信息类似,在数据库中保存有预先配置的数据文件的采集任务和分发任务,分发任务是指向目标主机发送对应的数据文件。每个分发任务有其对应的分发时间,系统可以实时监控数据库中预先配置的数据文件的分发任务,当发现当前时间有分发任务需要执行时,则获取该分发任务的分发配置信息。
其中,分发配置信息可以包括分发任务ID、采集任务ID、目标主机IP、目标主机用户名、目标主机密码、分发时间、目标主机目录和文件分发目录。
其中,依据分发任务ID和采集任务ID可以保证分发任务与采集任务的对应,即可以指明S101中采集的数据文件所要执行的分发任务。
S104:依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机。
在分发配置信息中包含有文件分发目录,以及对应的目标主机的相关信息。
通过建立软链接,可以实现1个采集任务对应1个或多个分发任务,例如,配置1个采集任务采集数据文件后放入3个文件分发目录,那就要对应的配置3个分发任务,分别从3个文件分发目录将数据文件分发到各自对应的目标主机,并结合上述S102的举例,具体的,可以从/home/file1获取数据文件WZ20170801.data,发送到IP为192.168.8.8的目标主机的/home/user1/data目录下;从/home/file2获取数据文件WZ20170801.data,发送到IP为192.168.9.9的目标主机的/home/user2/data目录下;从/home/file3获取数据文件WZ20170801.data,发送到IP为192.168.10.10的目标主机的/home/user3/data目录下。
S105:当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中。
当完成数据文件的分发任务后,建立的软链接已经没有太大的使用价值,则可以将该软链接删除。
考虑到在实际应用中,可以会需要向目标主机重新发送数据文件的情况,针对该种情况,可以在完成数据文件的分发任务后,将建立的软链接保留一段时间,在预设时间段内没有出现需要向目标主机重新发送数据文件的情况,则到达该预设时间后将该软链接删除。
S106:依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识。
在本发明实施例中,可以通过在采集日志中设置重发标识,当目标主机要求重新分发数据文件时,可以通过修改对应的数据文件采集日志的重发标识,进而执行数据文件的重新分发或者重新采集重新分发。
在具体应用中,可以根据实际需要,设置不同的重发标识,灵活实现数据文件的只执行重新分发或者重新采集重新分发,从而解决传统采集分发在处理文件重新分发时效率低下且浪费系统资源的问题,提高了文件重新分发的处理效率,节省了系统资源。
例如,可以规定重发标识0为不重新分发、1为只重新分发、2为重新采集且重新分发,采集日志的重发标识默认为0。当要求重新分发目标主机为192.168.9.9、文件分发目录为/home/file2的数据文件WZ20170801.data时,根据文件分发目录和文件名,可从文件采集日志中找到对应的采集日志,然后更新重发标识为1或2。
除了系统自动修改采集日志的重发标识的方式外,也可以由运维人员来修改数据库中的数据文件采集日志的重发标识。其中,运维人员可以根据目标主机相关负责人的要求来决定将重发标识修改为1还是2,如果只需重发分发,则将重发标识修改为1,如果需要重新采集再分发,则将重发标识修改为2。为后续介绍方便,均以只重新分发和重新采集且重新分发这两种方式为例展开介绍。
S107:依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
重发规则可以是执行数据文件重新发送的具体操作依据,例如,重发规则可以包括只重新分发对应的操作步骤和重新采集且重新分发对应的操作步骤。
下面将以只重新分发和重新采集且重新分发为例,对数据文件重新发送至目标主机的过程展开介绍,如图2所示,该步骤包括:
S201:判断所述重发标识是否属于第一类标识。
第一类标识可以是用于表示重发标识属于只重新发送的标识,结合上述S106的介绍,第一类标识可以包括“1”,当重发标识为1时,则说明该重发操作为只重新发送,则可以执行S202。
当重发标识不属于第一类标识时,需要对重发标识作进一步的判断,即执行S204。
S202:依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识。
其中,所述目标文件分发目录为所述目标主机对应的文件分发目录。
更新重发标识即将该重发标识更新为原来的默认标识,从而避免系统不断的执行重发操作。
S203:依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接。
S203与上述S104和S105中操作类似,在此不再赘述。
S204:判断所述重发标识是否属于第二类标识。
第二类标识可以是用于表示重发标识属于重新采集且重新分发的标识,结合上述S106的介绍,第二类标识可以包括“2”,当重发标识为2时,则说明该重发操作为重新采集且重新分发,则可以执行S205。
S205:将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;返回所述S202。
若要求重新采集重新分发,则系统需要将备份目录对应的数据文件删除,然后再从源主机重新采集对应的数据文件放入备份目录,再创建文件软链接到相应的文件分发目录,并更新文件重发标识,最后执行分发后删除文件软链接。
进一步的,如果在创建文件软链接时发现备份目录的数据文件不存在,则立即执行从源主机重新采集数据文件的操作,完成采集后再创建文件软链接。具体的,可以在执行所述S202之前,在监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
由上述技术方案可以看出,获取采集任务的配置信息;依据该配置信息,从采集任务对应的源主机中采集数据文件,并将数据文件存储于对应的文件备份目录中;建立文件备份目录与各个文件分发目录之间的软链接,并将采集日志写入数据库中;获取分发任务的分发配置信息;依据建立的软链接,从分发配置信息中携带的文件分发目录中获取数据文件,并将该数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中。通过将文件采集操作和文件分发操作分离,在接收到的目标主机发送的重发请求时,可以通过修改采集日志的重发标识,依据重发标识对应的重发规则,将数据文件重新发送至所述目标主机。通过在采集日志设置文件重发标识,可以根据实际需要,灵活实现数据文件的只执行重新分发或者重新采集重新分发,从而解决传统采集分发在处理文件重新分发时效率低下且浪费系统资源的问题。
在采集任务的配置信息中可以包括有文件备份时间,每采集一次数据文件,会将该数据文件存储于文件备份目录中,并且该数据文件有其对应的文件备份时间。随着采集次数的增加,文件备份目录中存储的数据文件越来越多,考虑到一些存储时间较久的数据文件,其被调用的概率较小,也即其使用价值较低,为了节省磁盘空间,可以根据文件备份时间,将文件备份目录中过期的数据文件删除。
具体的,系统可以定时从数据库中获取采集任务的配置信息;依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
预设阈值可以是数据文件的文件备份时间的上限值,其具体取值可以根据实际需求设置,在此不做限定。
例如,需要从备份目录/home/file/bak_data/清理15天前的数据文件,可以先获取备份目录中的所有数据文件名称及文件创建时间即文件备份时间。根据文件创建时间,获取15天前的数据文件名,执行删除操作。
图3为本发明实施例提供的一种数据文件采集分发的系统的结构示意图,包括文件采集模块31、文件分发模块32和数据库模块33;
所述文件采集模块31,用于依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中;在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入所述数据库模块33中;
所述文件分发模块32,用于获取分发任务的分发配置信息;依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库模块33中;
所述文件采集模块31还用于依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识;并触发所述文件分发模块32,依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
可选的,所述文件采集模块包括第一判断子模块、建立子模块、第二判断子模块和替换子模块;
所述判断子模块,用于判断所述重发标识是否属于第一类标识;若是,则触发所述建立子模块;若否,则触发所述第二判断子模块;
所述建立子模块,用于依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识;其中,所述目标文件分发目录为所述目标主机对应的文件分发目录;
所述文件分发模块还用于依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接;
所述第二判断子模块,用于判断所述重发标识是否属于第二类标识;若是,则触发所述替换子模块;
所述替换子模块,用于将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;并触发所述建立子模块和所述文件分发模块。
可选的,所述替换子模块还用于当监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
可选的,还包括文件清理模块;
所述文件清理模块,用于定时从数据库中获取采集任务的配置信息;依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
图3所对应实施例中特征的说明可以参见图1和图2所对应实施例的相关说明,这里不再一一赘述。
由上述技术方案可以看出,获取采集任务的配置信息;依据该配置信息,从采集任务对应的源主机中采集数据文件,并将数据文件存储于对应的文件备份目录中;建立文件备份目录与各个文件分发目录之间的软链接,并将采集日志写入数据库中;获取分发任务的分发配置信息;依据建立的软链接,从分发配置信息中携带的文件分发目录中获取数据文件,并将该数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中。通过将文件采集操作和文件分发操作分离,在接收到的目标主机发送的重发请求时,可以通过修改采集日志的重发标识,依据重发标识对应的重发规则,将数据文件重新发送至所述目标主机。通过在采集日志设置文件重发标识,可以根据实际需要,灵活实现数据文件的只执行重新分发或者重新采集重新分发,从而解决传统采集分发在处理文件重新分发时效率低下且浪费系统资源的问题。
图4为本发明实施例提供的一种数据文件采集分发的设备40的硬件结构示意图,包括:存储器41,用于存储计算机程序;处理器42,用于执行所述计算机程序以实现上述数据文件采集分发的方法的步骤。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述数据文件采集分发的方法的步骤。
以上对本发明实施例所提供的一种数据文件采集分发的方法、系统、设备和计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
Claims (10)
1.一种数据文件采集分发的方法,其特征在于,包括:
依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中;
在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入数据库中;
获取分发任务的分发配置信息;
依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机;
当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库中;
依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识;
依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
2.根据权利要求1所述的方法,其特征在于,所述依据所述重发标识所属的操作类型,将所述数据文件重新发送至所述目标主机包括:
S201:判断所述重发标识是否属于第一类标识;若是,则执行S202;若否,则执行S204;
S202:依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识;其中,所述目标文件分发目录为所述目标主机对应的文件分发目录;
S203:依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接;
S204:判断所述重发标识是否属于第二类标识;若是,则执行S205;
S205:将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;返回所述S202。
3.根据权利要求2所述的方法,其特征在于,在所述S202之前还包括:
当监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
4.根据权利要求1-3任意一项所述的方法,其特征在于,还包括:
定时从数据库中获取采集任务的配置信息;
依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
5.一种数据文件采集分发的系统,其特征在于,包括文件采集模块、文件分发模块和数据库模块;
所述文件采集模块,用于依据获取的采集任务的配置信息,从所述采集任务对应的源主机中采集数据文件,并将所述数据文件存储于对应的文件备份目录中;在各个文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并将采集日志写入所述数据库模块中;
所述文件分发模块,用于获取分发任务的分发配置信息;依据建立的所述软链接,从所述分发配置信息中携带的文件分发目录中获取所述数据文件,并将所述数据文件发送给对应的目标主机;当完成所述数据文件的分发任务后,删除所述软链接,并将分发日志写入所述数据库模块中;
所述文件采集模块还用于依据接收到的所述目标主机发送的重发请求,修改所述采集日志的重发标识;并触发所述文件分发模块,依据所述重发标识对应的重发规则,将所述数据文件重新发送至所述目标主机。
6.根据权利要求5所述的系统,其特征在于,所述文件采集模块包括第一判断子模块、建立子模块、第二判断子模块和替换子模块;
所述判断子模块,用于判断所述重发标识是否属于第一类标识;若是,则触发所述建立子模块;若否,则触发所述第二判断子模块;
所述建立子模块,用于依据所述采集任务的配置信息,在目标文件分发目录中建立与所述文件备份目录中所述数据文件的软链接,并更新所述重发标识;其中,所述目标文件分发目录为所述目标主机对应的文件分发目录;
所述文件分发模块还用于依据建立的所述软链接,从所述目标文件分发目录中获取数据文件,并将所述数据文件重新发送至所述目标主机,当完成所述数据文件的重新发送后,删除所述软链接;
所述第二判断子模块,用于判断所述重发标识是否属于第二类标识;若是,则触发所述替换子模块;
所述替换子模块,用于将所述备份目录中的数据文件删除,并从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中;并触发所述建立子模块和所述文件分发模块。
7.根据权利要求6所述的系统,其特征在于,所述替换子模块还用于当监测到所述备份目录中的数据文件不存在时,则从所述源主机中重新采集对应的数据文件,并将所述数据文件放入所述备份目录中。
8.根据权利要求5-7任意一项所述的系统,其特征在于,还包括文件清理模块;
所述文件清理模块,用于定时从数据库中获取采集任务的配置信息;依据所述配置信息,扫描相应的备份目录中的数据文件,并删除所述备份目录中存储时间超于预设阈值的目标数据文件。
9.一种涉税业务处理设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序以实现如权利要求1至4任意一项所述数据文件采集分发的方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至4任一项所述数据文件采集分发的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710992502.0A CN107766508B (zh) | 2017-10-23 | 2017-10-23 | 一种数据文件采集分发的方法、系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710992502.0A CN107766508B (zh) | 2017-10-23 | 2017-10-23 | 一种数据文件采集分发的方法、系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107766508A true CN107766508A (zh) | 2018-03-06 |
CN107766508B CN107766508B (zh) | 2021-06-15 |
Family
ID=61268482
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710992502.0A Active CN107766508B (zh) | 2017-10-23 | 2017-10-23 | 一种数据文件采集分发的方法、系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107766508B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450687A (zh) * | 2018-11-14 | 2019-03-08 | 沈文策 | 一种数据分发方法、装置、电子设备及存储介质 |
CN110597794A (zh) * | 2019-08-08 | 2019-12-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置和电子设备 |
CN111125004A (zh) * | 2019-12-03 | 2020-05-08 | 中盈优创资讯科技有限公司 | 文件采集方法及装置 |
CN113535724A (zh) * | 2021-07-13 | 2021-10-22 | 蘑菇物联技术(深圳)有限公司 | 数据处理方法、装置及计算机可读存储介质 |
CN113836533A (zh) * | 2021-09-27 | 2021-12-24 | 深信服科技股份有限公司 | 一种文件监测方法、装置、电子设备及可读存储介质 |
CN113836533B (zh) * | 2021-09-27 | 2024-05-24 | 深信服科技股份有限公司 | 一种文件监测方法、装置、电子设备及可读存储介质 |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751394A (zh) * | 2008-12-16 | 2010-06-23 | 青岛海信传媒网络技术有限公司 | 数据同步方法和数据同步系统 |
US20100318870A1 (en) * | 2009-06-16 | 2010-12-16 | Canon Kabushiki Kaisha | Transmission apparatus, receiving apparatus, method, and storage medium |
CN102083034A (zh) * | 2009-11-28 | 2011-06-01 | 华为技术有限公司 | 计费消息的分发方法、装置和系统 |
CN102571188A (zh) * | 2012-02-21 | 2012-07-11 | 西安电子科技大学 | 具有星上交换能力的卫星通信网络中信令的处理方法和系统 |
CN102883466A (zh) * | 2011-07-15 | 2013-01-16 | 中国科学院深圳先进技术研究院 | 无线传感器网络中的数据分发方法 |
CN105045619A (zh) * | 2015-07-06 | 2015-11-11 | 普元信息技术股份有限公司 | 云计算环境中基于固定带宽的多层次多节点版本分发方法 |
CN105306585A (zh) * | 2015-11-12 | 2016-02-03 | 焦点科技股份有限公司 | 一种多数据中心的数据同步方法 |
CN105354304A (zh) * | 2015-11-06 | 2016-02-24 | 上海视云网络科技有限公司 | 一种基于Linux文件系统文件链接的缓存LRU方法 |
JP2016161976A (ja) * | 2015-02-26 | 2016-09-05 | 株式会社東芝 | 通信システム、サーバー、及び通信システムの制御方法 |
US20160291940A1 (en) * | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
CN106227822A (zh) * | 2016-07-22 | 2016-12-14 | 深圳市中润四方信息技术有限公司 | 一种数据分发方法及数据同步系统 |
-
2017
- 2017-10-23 CN CN201710992502.0A patent/CN107766508B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101751394A (zh) * | 2008-12-16 | 2010-06-23 | 青岛海信传媒网络技术有限公司 | 数据同步方法和数据同步系统 |
US20100318870A1 (en) * | 2009-06-16 | 2010-12-16 | Canon Kabushiki Kaisha | Transmission apparatus, receiving apparatus, method, and storage medium |
CN102083034A (zh) * | 2009-11-28 | 2011-06-01 | 华为技术有限公司 | 计费消息的分发方法、装置和系统 |
CN102883466A (zh) * | 2011-07-15 | 2013-01-16 | 中国科学院深圳先进技术研究院 | 无线传感器网络中的数据分发方法 |
CN102571188A (zh) * | 2012-02-21 | 2012-07-11 | 西安电子科技大学 | 具有星上交换能力的卫星通信网络中信令的处理方法和系统 |
US20160291940A1 (en) * | 2014-07-07 | 2016-10-06 | Symphony Teleca Corporation | Remote Embedded Device Update Platform Apparatuses, Methods and Systems |
JP2016161976A (ja) * | 2015-02-26 | 2016-09-05 | 株式会社東芝 | 通信システム、サーバー、及び通信システムの制御方法 |
CN105045619A (zh) * | 2015-07-06 | 2015-11-11 | 普元信息技术股份有限公司 | 云计算环境中基于固定带宽的多层次多节点版本分发方法 |
CN105354304A (zh) * | 2015-11-06 | 2016-02-24 | 上海视云网络科技有限公司 | 一种基于Linux文件系统文件链接的缓存LRU方法 |
CN105306585A (zh) * | 2015-11-12 | 2016-02-03 | 焦点科技股份有限公司 | 一种多数据中心的数据同步方法 |
CN106227822A (zh) * | 2016-07-22 | 2016-12-14 | 深圳市中润四方信息技术有限公司 | 一种数据分发方法及数据同步系统 |
Non-Patent Citations (3)
Title |
---|
无恨星晨: "数据库的分发与复制", 《HTTPS://WWW.CNBLOGS.COM/WEIXING/P/5764400.HTML》 * |
李洁原: "Web服务器防护系统数据包拦截技术的研究与实现", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
赵贝: "容迟网络中的路由算法及文件传输协议研究", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109450687A (zh) * | 2018-11-14 | 2019-03-08 | 沈文策 | 一种数据分发方法、装置、电子设备及存储介质 |
CN110597794A (zh) * | 2019-08-08 | 2019-12-20 | 阿里巴巴集团控股有限公司 | 数据处理方法、装置和电子设备 |
CN111125004A (zh) * | 2019-12-03 | 2020-05-08 | 中盈优创资讯科技有限公司 | 文件采集方法及装置 |
CN113535724A (zh) * | 2021-07-13 | 2021-10-22 | 蘑菇物联技术(深圳)有限公司 | 数据处理方法、装置及计算机可读存储介质 |
CN113836533A (zh) * | 2021-09-27 | 2021-12-24 | 深信服科技股份有限公司 | 一种文件监测方法、装置、电子设备及可读存储介质 |
CN113836533B (zh) * | 2021-09-27 | 2024-05-24 | 深信服科技股份有限公司 | 一种文件监测方法、装置、电子设备及可读存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN107766508B (zh) | 2021-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107766508A (zh) | 一种数据文件采集分发的方法、系统 | |
CN107332876B (zh) | 区块链状态的同步方法及装置 | |
US9043278B1 (en) | System and method for the merging of databases | |
CN102801559B (zh) | 智能化局域网数据采集方法 | |
US5920697A (en) | Method of automatic updating and use of routing information by programmable and manual routing information configuration based on least lost routing | |
JP3750504B2 (ja) | データ更新方法および情報処理装置 | |
CN105577841B (zh) | 一种文件同步的方法、装置、客户端、服务器端及设备 | |
CN102136941B (zh) | 一种综合接入设备备份数据方法、设备以及系统 | |
CN103544303B (zh) | 一种数据同步方法、系统和设备 | |
CN103841180B (zh) | 一种基于操作指令的网络数据同步方法、装置、终端设备和服务器 | |
CN110708188A (zh) | 一种基于sla的网络切片的创建方法和装置 | |
CN101741830A (zh) | 实现多客户端数据同步的方法、系统、客户端及服务器 | |
CN102541694A (zh) | 一种数据库备份的方法及装置 | |
CN102664950B (zh) | 一种焊接电源与计算机之间进行数据通信的方法 | |
CN103581231A (zh) | Ugc主备数据同步方法及其系统 | |
JP2011254410A (ja) | 放送コンテンツ送信装置及び放送コンテンツ受信装置 | |
CN103999413A (zh) | 在云端传送消息的方法和装置 | |
CN102420857A (zh) | 操作指令传送和处理方法、传送和缓存服务器及存储系统 | |
CN101771548A (zh) | 文件同步方法及系统 | |
CN107784016B (zh) | 数据同步控制装置和数据同步系统及方法 | |
CN113852673A (zh) | 核心网网元的信令追踪方法、装置及存储介质 | |
CN105978802B (zh) | 一种消息处理的方法及装置 | |
CN103684851A (zh) | 数据采集方法和装置 | |
CN106060135B (zh) | 一种版本更新方法和装置 | |
CN109491971A (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 |