This application discloses a method and system for data acquisition and file transfer, and can configure the data acquisition dynamic SQL statement in the collection configuration file flexibly. In two created in the shared memory data acquisition request / reply pool and file transfer request / reply pool; the data acquisition of each data acquisition task list stored in the data acquisition request pool, acquisition request pool to acquire and perform the task of data collection from the data to be processed; the data acquisition task each completed the corresponding file transfer task is stored in a file transfer request pool, pool request to fetch and execute pending file transmission tasks from file transfer, transfer files to be processed when the task execution after back to the pool in the complex file records in the file transfer task state transmission tasks; concurrent execution and file data acquisition task, improve the system throughput and task processing efficiency.
【技术实现步骤摘要】
一种数据采集和文件下传的方法及系统
本专利技术涉及一种数据处理
,更具体的,涉及一种数据采集和文件下传的方法及系统。
技术介绍
当前,全球化进程日益加深,金融机构的业务逐渐遍及海内外,这就要求金融机构的信息化系统要适应公司不断扩大的业务需求,从而导致外围系统日益繁多,系统间批处理交互日益频繁。金融机构业务系统普遍面临大量数据采集与相对有限的服务器资源间的矛盾,如果没有高效方便的数据采集手段,短时间内的大量数据采集任务会造成服务器的批处理拥堵,甚至严重消耗计算资源和内存资源,导致其他批处理无法正常执行。现有技术中,数据采集任务中,查询数据库的SQL语句是静态的,即数据库查询语句事先写好在程序里,如果变更查询语句,比如增加字段名称,就要修改程序,重新编译,灵活性不够。且单进程处理数据采集任务和文件生成任务,即先采集完某个表数据,生成文件下传给下游系统后再继续采集下一个表,这种数据采集和文件下传在同一进程内执行的强耦合方案,吞吐量小,效率极低。
技术实现思路
有鉴于此,本专利技术提供了一种数据采集和文件下传的方法及系统,数据采集和文件下传独立运行,并在各自的共享内存中构建共享内存任务循环池,使数据采集和文件下传并发处理,提高了数据采集任务和文件下传任务的处理效率。为了实现上述专利技术目的,本专利技术提供的具体技术方案如下:一种数据采集和文件下传的方法,所述方法包括:对数据采集命令参数进行解析,得到系统配置文件、采集配置文件,并根据所述系统配置文件和所述采集配置文件创建任务列表,所述任务列表中的每个任务对应数据采集任务和文件下传任务;根据所述任务列表在第一共享内 ...
【技术保护点】
一种数据采集和文件下传的方法,其特征在于,所述方法包括:对数据采集命令参数进行解析,得到系统配置文件、采集配置文件,并根据所述系统配置文件和所述采集配置文件创建任务列表,所述任务列表中的每个任务对应数据采集任务和文件下传任务;根据所述任务列表在第一共享内存中创建数据采集请求/回复池,并在第二共享内存中创建文件下传请求/回复池;将所述数据采集任务列表中的每个数据采集任务存放在数据采集请求池中,从所述数据采集请求池中获取并执行所述待处理数据采集任务,并当所述待处理数据采集任务执行结束后在数据采集回复池中记录所述待处理数据采集任务的状态;将每个已完成的数据采集任务对应的文件下传任务存放在文件下传请求池中,从所述文件下传请求池中获取并执行待处理文件下传任务,当所述待处理文件下传任务执行结束后在文件下传回复池中记录所述待处理文件下传任务的状态;当检测到所述任务列表中每个任务对应的文件下传任务都已完成时,释放所述第一共享内存资源和所述第二共享内存资源。
【技术特征摘要】
1.一种数据采集和文件下传的方法,其特征在于,所述方法包括:对数据采集命令参数进行解析,得到系统配置文件、采集配置文件,并根据所述系统配置文件和所述采集配置文件创建任务列表,所述任务列表中的每个任务对应数据采集任务和文件下传任务;根据所述任务列表在第一共享内存中创建数据采集请求/回复池,并在第二共享内存中创建文件下传请求/回复池;将所述数据采集任务列表中的每个数据采集任务存放在数据采集请求池中,从所述数据采集请求池中获取并执行所述待处理数据采集任务,并当所述待处理数据采集任务执行结束后在数据采集回复池中记录所述待处理数据采集任务的状态;将每个已完成的数据采集任务对应的文件下传任务存放在文件下传请求池中,从所述文件下传请求池中获取并执行待处理文件下传任务,当所述待处理文件下传任务执行结束后在文件下传回复池中记录所述待处理文件下传任务的状态;当检测到所述任务列表中每个任务对应的文件下传任务都已完成时,释放所述第一共享内存资源和所述第二共享内存资源。2.根据权利要求1所述的方法,其特征在于,所述系统配置文件包括系统标识、数据库账户信息、数据库事务大小、数据文件下传脚本、以及数据文件存放路径;所述采集配置文件包括银行类型、待采集表的数量和类型、以及数据采集动态SQL语句。3.根据权利要求1所述的方法,其特征在于,所述将所述数据采集任务列表中的每个数据采集任务存放在数据采集请求池中,从所述数据采集请求池中获取并执行所述待处理数据采集任务,并当所述待处理数据采集任务执行结束后在数据采集回复池中记录所述待处理数据采集任务的状态,包括:遍历所述任务列表,获取待处理数据采集任务;判断所述待处理数据采集任务是否为请求类型;若是请求类型,获取数据采集请求池的地址,并判断所述数据采集请求池的任务信号量是否大于0;若大于0,判断当前是否有生产者锁;若有生产者锁,获取所述生产者锁,将所述待处理数据采集任务存放在所述数据采集请求池中,释放所述生产者锁,并对所述数据采集请求池的任务信号量减1;若是回复类型,获取数据采集回复池的地址,并判断所述数据采集回复池的任务信号量是否大于0;若大于0,判断当前是否有消费者锁;若有消费者锁,获取所述消费者锁,从所述数据采集请求池中获取并执行所述待处理数据采集任务,当所述待处理数据采集任务执行结束后在所述数据采集回复池中记录所述待处理数据采集任务的状态,释放所述消费者锁,并对所述数据采集回复池的任务信号量减1。4.根据权利要求1所述的方法,其特征在于,所述将每个已完成的数据采集任务对应的文件下传任务存放在文件下传请求池中,从所述文件下传请求池中获取并执行待处理文件下传任务,当所述待处理文件下传任务执行结束后在文件下传回复池中记录所述待处理文件下传任务的状态,包括:当检测到所述数据采集回复池中记录有已完成数据采集任务时,获取与已执行数据采集任务相对应的待处理文件下传任务;判断所述待处理文件下传任务是否为请求类型;若是请求类型,获取文件下传请求池的地址,并判断所述文件下传请求池的任务信号量是否大于0;若大于0,判断当前是否有生产者锁;若有生产者锁,获取所述生产者锁,将所述待处理文件下传任务存放在所述文件下传请求池中,释放所述生产者锁,并对所述文件下传请求池的任务信号量减1;若是回复类型,获取文件下传回复池的地址,并判断所述文件下传回复池的任务信号量是否大于0;若大于0,判断当前是否有消费者锁;若有消费者锁,获取所述消费者锁,从所述文件下传请求池中获取并执行所述待处理文件下传任务,当所述待处理文件下传任务执行结束后在所述文件下传回复池中记录所述待处理文件下传任务的状态,释放所述消费者锁,并对所述文件下传回复池的任务信号量减1。5.根据权利要求1所述的方法,其特征在于,在所述对数据采集命令参数进行解析,得到系统配置文件、采集配置文件,并根据所述系统配置文件和所述采集配置文件创建任务列表之后,所述方法还包括:获取所述数据采集命令中的日志存放路径;创建日志文件,并根据所述日志存放路径对所述日志文件进行存放,所述日志文件用于记录所述任务列表中每个任务对应的数据采集任务和文件下传任务的执行状态。6.一种数据采集和文件下传的系统,其特征在于,所述系统包...
【专利技术属性】
技术研发人员:段于胜,张琰,郑彦淇,郭锦帅,李清泉,
申请(专利权)人:中国银行股份有限公司,
类型:发明
国别省市:北京,11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。