一种资源处理方法、装置、系统、电子设备及存储介质制造方法及图纸

技术编号:33876033 阅读:15 留言:0更新日期:2022-06-22 17:04
本发明专利技术涉及一种资源处理方法、装置、系统、电子设备及存储介质,方法包括:接收来自于发送方的资源更新请求,资源更新请求由发送方在确认收集的日志文件携带资源更新信息后生成;查询与资源更新请求相匹配的目标数据库对象,以及目标数据库对象对应目标锁资源的状态信息;当根据状态信息确定目标锁资源未被占用时,将目标锁资源分配至资源更新请求;根据携带目标锁资源的资源更新请求对目标数据库对象执行更新操作。通过不同的锁资源对数据库对象并发操作进行管理,降低了锁资源的竞争。避免多个请求同时访问数据库对象,导致读写冲突的情况。相比较于原来需要每个请求单独去访问数据库对象而言,提高了数据库的效率。提高了数据库的效率。提高了数据库的效率。

【技术实现步骤摘要】
一种资源处理方法、装置、系统、电子设备及存储介质


[0001]本专利技术涉及计算机
,尤其涉及一种资源处理方法、装置、系统、电子设备及存储介质。

技术介绍

[0002]目前在实时的流式数据处理中,我们是通过Flink消费Kafka中的数据,然后将数据写入到Kudu数据库当中。在通过Flink处理数据的时候,程序会自动识别当前处理的数据中是否有新增的资源信息,如果有新的资源信息,就更新该资源信息对应的目标数据库对象。由于Flink是分布式的方式处理日志数据,因此通过每个Task来更新数据库对象就有可能会产生冲突。
[0003]例如:某一个Task中存在新增字段,那么其他的Task也有可能会发起新增相同的字段,此时,如果多个Task同时访问数据库,且数据库对象中已经存在这个字段时,那么就会产生访问冲突。
[0004]换言之,由于Flink是分布式的方式来处理数据,那么当所有Task需要对同一个数据库对象进行读写的时候,就有可能产生访问冲突,降低了数据库的效率。

技术实现思路

[0005]为了解决上述技术问题或者至少部分地解决上述技术问题,本专利技术提供了一种资源处理方法、装置、电子设备以及存储介质。
[0006]第一方面,本专利技术提供了一种资源处理方法,所述方法包括:
[0007]接收来自于发送方的资源更新请求,所述资源更新请求由所述发送方在确认收集的日志文件携带资源更新信息后生成;
[0008]查询所述资源更新请求待访问的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息;
[0009]当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库;
[0010]更新所述目标锁资源的状态信息,所述更新后的状态信息标识所述目标锁资源被占用。
[0011]在本专利技术可选的实施例中,所述查询所述资源更新请求待访问的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息,包括:
[0012]确定所述目标数据库对象的目标对象标识;
[0013]获取对象标识与锁资源的映射关系;
[0014]根据所述映射关系确定所述目标对象标识对应目标锁资源;
[0015]根据目标锁资源当前对应的锁资源标识确定所述状态信息。
[0016]在本专利技术可选的实施例中,所述当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库,包括:
[0017]当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库,由所述数据库根据所述目标锁资源对所述目标数据库对象进行锁定,并根据所述资源更新请求携带的资源更新信息对所述锁定后的目标数据库对象进行更新操作。
[0018]在本专利技术可选的实施例中,所述方法还包括:
[0019]当根据所述状态信息确定所述目标锁资源被占用时,将所述资源更新请求添加至请求池;
[0020]当检测到所述目标锁资源的解除占用时,从所述请求池中选择与所述解除占用的目标锁资源相匹配的资源更新请求;
[0021]将所述解除占用的目标锁资源,以及与所述目标锁资源相匹配的资源更新请求发送至所述数据库。
[0022]在本专利技术可选的实施例中,所述方法还包括:
[0023]当根据所述状态信息确定所述目标锁资源被占用时,确定占用时长;
[0024]当所述占用时长大于或等于预设占用时长时,从所述请求池中获取与所述目标锁资源相匹配,且满足预设访问要求的目标资源更新请求;
[0025]根据所述目标资源更新请求生成临时锁资源;
[0026]将所述临时锁资源,以及所述目标资源更新请求发送至所述数据库。
[0027]第二方面,本专利技术提供了一种资源处理装置,包括:
[0028]接收模块,用于接收来自于发送方的资源更新请求,所述资源更新请求由所述发送方在确认收集的日志文件携带资源更新信息后生成;
[0029]查询模块,用于查询与所述资源更新请求相匹配的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息;
[0030]发送模块,用于当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库;
[0031]更新模块,用于更新所述目标锁资源的状态信息,所述更新后的状态信息标识所述目标锁资源被占用。
[0032]第三方面,本专利技术提供了一种资源处理系统,包括:任务管理器,资源处理器以及数据库;
[0033]所述任务管理器,用于将所述资源更新请求发送至所述资源处理器,所述资源更新请求携带资源更新信息;
[0034]所述资源处理器,用于接收来自于发送方的资源更新请求,所述资源更新请求由所述发送方在确认收集的日志文件携带资源更新信息后生成,查询与所述资源更新请求相匹配的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息,当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库发送至数据库;
[0035]所述资源处理器,还用于更新所述目标锁资源的状态信息,所述更新后的状态信息标识所述目标锁资源被占用;
[0036]所述数据库,用于接收来自于资源处理器的资源更新请求,以及目标锁资源,所述资源更新请求携带资源更新信息,根据所述目标锁资源对所述目标数据库对象进行锁定,
获取锁定后的目标数据库对象的对象信息列表,所述对象信息列表包括:对象信息以及所述对象信息的更新时间,选择与当前时间距离最近的更新时间对应的对象信息作为目标对象信息,当确定所述目标对象信息中不存在所述资源更新信息时,采用所述资源更新信息对所述目标对象信息进行更新。
[0037]在本专利技术可选的实施例中,所述数据库还用于根据所述资源更新请求确定所述目标锁资源的锁定类型,按照所述锁定类型对所述目标数据库对象进行锁定,所述锁定类型包括:独占访问锁定、独占修改锁定、共享修改锁定和共享访问锁定。
[0038]第四方面,本专利技术提供了一种电子设备,包括:至少一个处理器、以及与处理器连接的至少一个存储器、总线;其中,所述处理器、所述存储器通过所述总线完成相互间的通信;所述处理器用于调用所述存储器中的程序指令,以执行上述第一方面中任一项所述的资源处理方法。
[0039]第五方面,本专利技术实施例提供一种存储介质,所述存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现上述第一方面中任一项所述的资源处理方法。
[0040]本专利技术实施例提供的技术方案,在Flink与数据库之间设置资源处理器,且在资源处理器中设置数据库对象与锁资源的对应关系,通过不同的锁资源对数据库对象并发操作进行管理,降低了锁资源的竞争。避免多个请求同时访问数据库对象,导致读写冲突的情况。相比较于原来需要每个请求单独去访问数据库对象而言,提高了数据库的效率。
附本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种资源处理方法,其特征在于,包括:接收来自于发送方的资源更新请求,所述资源更新请求由所述发送方在确认收集的日志文件携带资源更新信息后生成;查询所述资源更新请求待访问的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息;当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库;更新所述目标锁资源的状态信息,所述更新后的状态信息标识所述目标锁资源被占用。2.根据权利要求1所述的方法,其特征在于,所述查询所述资源更新请求待访问的目标数据库对象,以及所述目标数据库对象对应目标锁资源的状态信息,包括:确定所述目标数据库对象的目标对象标识;获取对象标识与锁资源的映射关系;根据所述映射关系确定所述目标对象标识对应目标锁资源;根据目标锁资源当前对应的锁资源标识确定所述状态信息。3.根据权利要求1所述的方法,其特征在于,所述当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库,包括:当根据所述状态信息确定所述目标锁资源未被占用时,将所述资源更新请求及所述目标锁资源发送至数据库,由所述数据库根据所述目标锁资源对所述目标数据库对象进行锁定,并根据所述资源更新请求携带的资源更新信息对所述锁定后的目标数据库对象进行更新操作。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:当根据所述状态信息确定所述目标锁资源被占用时,将所述资源更新请求添加至请求池;当检测到所述目标锁资源的解除占用时,从所述请求池中选择与所述解除占用的目标锁资源相匹配的资源更新请求;将所述解除占用的目标锁资源,以及与所述目标锁资源相匹配的资源更新请求发送至所述数据库。5.根据权利要求1所述的方法,其特征在于,所述方法还包括:当根据所述状态信息确定所述目标锁资源被占用时,确定占用时长;当所述占用时长大于或等于预设占用时长时,从所述请求池中获取与所述目标锁资源相匹配,且满足预设访问要求的目标资源更新请求;根据所述目标资源更新请求生成临时锁资源;将所述临时锁资源,以及所述目标资源更新请求发送至所述数据库。6.一种资源处理装置,其特征在于,包括:接收模块,用于接收来自于发送方的资源更新请求,所述资源更新请求由所述发送方在确认收集的日志文件携带资源更新信息后生成;查询模块,用...

【专利技术属性】
技术研发人员:林三清
申请(专利权)人:北京国双科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1