一种数据处理方法及装置制造方法及图纸

技术编号:20483695 阅读:26 留言:0更新日期:2019-03-02 18:30
本申请提供了一种数据处理方法及装置,方法包括:调用读操作函数,执行数据读取过程,数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有目标数据的各个数据结点中,选取一个健康数据结点,并从健康数据结点中读取所述目标数据;判断读取目标数据所用时长是否超过超时阈值;若是,中断读取目标数据的操作,将健康数据结点标记为坏结点,并返回执行从存储有目标数据的各个数据结点中,选取一个健康数据结点的步骤;若否,返回读取到的目标数据。在本申请中,通过以上方式可以缩短结点完成读操作所用的时间。

【技术实现步骤摘要】
一种数据处理方法及装置
本申请涉及计算机
,特别涉及一种数据处理方法及装置。
技术介绍
目前,具有高度容错能力及可以实时检测错误的分布式存储系统被广泛应用。存储分布式存储系统中的文件,一般会被分隔为固定大小的数据块,每个数据块具有多个副本,每个副本存储在不同机器(即不同结点)上,保证多个副本中只要至少有一个副本有效,整个数据块就是有效的。分布式存储系统中某些结点因为系统资源紧张、磁盘操作延时、网络延时等问题,可能会导致读操作超时或写操作超时。而单个结点读操作超时或写操作超时可能会导致使用分布式存储系统的整个集群出现读写超时,因此在结点出现读操作或写操作超时的情况下,如何缩短结点完成读或写操作所用的时间,成为亟待解决的问题。
技术实现思路
为解决上述技术问题,本申请实施例提供一种数据处理方法及装置,以达到缩短结点完成读操作所用的时间的目的,技术方案如下:一种数据处理方法,包括:调用读操作函数,执行数据读取过程,所述数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据;判断读取所述目标数据所用时长是否超过超时阈值;若是,中断读取所述目标数据的操作,将所述健康数据结点标记为坏结点,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点的步骤;若否,返回读取到的目标数据。优选的,所述从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据,包括:调用读操作任务接口函数,将读操作任务提交至读数据线程,并运行所述读数据线程,执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤,所述读数据线程为独立于其他线程的线程;所述判断读取所述目标数据所用时长是否超过超时阈值,包括:判断所述读数据线程返回所述目标数据所用时长是否超过超时阈值。优选的,所述将所述健康数据结点标记为坏结点之后,还包括:重新确定一个超时阈值,并将重新确定的超时阈值替换所述超时阈值,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤。优选的,所述方法还包括:调用写操作函数,执行数据写入过程,所述数据写入过程,包括:获取写管道中各个数据结点的写操作确认信息;根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时;若是,则选取一个健康数据结点替换写操作超时的数据结点,并继续向所述写管道中写入数据。优选的,各个数据结点包括:第一数据结点及多个第二数据结点,所述第一数据结点为直接与客户端交互的数据结点,第二数据结点为通过所述第一数据结点与所述客户端交互的数据结点;所述获取写管道中各个数据结点的写操作确认信息,包括:获取所述第一数据结点依次返回的数据包的写操作确认信息及各个所述第二数据结点的写操作确认信息返回超时状态信息;所述根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时,包括:判断所述第一数据结点依次返回的数据包的写操作确认信息中,返回顺序相邻的预设个数的写操作确认信息是否均超时;若是,则确定所述第一数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第一数据结点;分别判断各个所述第二数据结点的写操作确认信息返回超时状态信息中是否存在返回顺序相邻的写操作确认信息返回超时信息;若是,则确定存在返回顺序相邻的写操作确认信息返回超时信息的第二数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第二数据结点,并继续向所述写管道中写入数据。一种数据处理装置,包括:读操作函数调用模块,用于调用读操作函数,执行数据读取过程,所述数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据;判断读取所述目标数据所用时长是否超过超时阈值;若是,中断读取所述目标数据的操作,将所述健康数据结点标记为坏结点,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点的步骤;若否,返回读取到的目标数据。优选的,所述读操作函数调用模块,调用读操作函数,执行的数据读取过程中从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据,包括:调用读操作任务接口函数,将读操作任务提交至读数据线程,并运行所述读数据线程,执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤,所述读数据线程为独立于其他线程的线程;所述读操作函数调用模块,调用读操作函数,执行的数据读取过程中判断读取所述目标数据所用时长是否超过超时阈值,包括:判断所述读数据线程返回所述目标数据所用时长是否超过超时阈值。优选的,所述读操作函数调用模块,调用读操作函数,执行的数据读取过程中将所述健康数据结点标记为坏结点之后,还包括:重新确定一个超时阈值,并将重新确定的超时阈值替换所述超时阈值,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤。优选的,所述装置还包括:写操作函数调用模块,用于调用写操作函数,执行数据写入过程,所述数据写入过程,包括:获取写管道中各个数据结点的写操作确认信息;根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时;若是,则选取一个健康数据结点替换写操作超时的数据结点,并继续向所述写管道中写入数据。优选的,各个数据结点包括:第一数据结点及多个第二数据结点,所述第一数据结点为直接与客户端交互的数据结点,第二数据结点为通过所述第一数据结点与所述客户端交互的数据结点;所述写操作函数调用模块,调用写操作函数,执行的数据写入过程中获取写管道中各个数据结点的写操作确认信息,包括:获取所述第一数据结点依次返回的数据包的写操作确认信息及各个所述第二数据结点的写操作确认信息返回超时状态信息;所述写操作函数调用模块,调用写操作函数,执行的数据写入过程中根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时,包括:判断所述第一数据结点依次返回的数据包的写操作确认信息中,返回顺序相邻的预设个数的写操作确认信息是否均超时;若是,则确定所述第一数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第一数据结点;分别判断各个所述第二数据结点的写操作确认信息返回超时状态信息中是否存在返回顺序相邻的写操作确认信息返回超时信息;若是,则确定存在返回顺序相邻的写操作确认信息返回超时信息的第二数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第二数据结点,并继续向所述写管道中写入数据。与现有技术相比,本申请的有益效果为:在本申请中,从存储有目标数据的各个数据结点中,选取一个健康数据结点,保证从不存在故障的数据结点开始读取目标数据,降低目标数据读取超时的概率。在此基础上,通过判断读取目标数据所用时长是否超过超时阈值,来判断读操作是否超时,在超过超时阈值时,中断读取目标数据的操作,可以避本文档来自技高网...

【技术保护点】
1.一种数据处理方法,其特征在于,包括:调用读操作函数,执行数据读取过程,所述数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据;判断读取所述目标数据所用时长是否超过超时阈值;若是,中断读取所述目标数据的操作,将所述健康数据结点标记为坏结点,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点的步骤;若否,返回读取到的目标数据。

【技术特征摘要】
1.一种数据处理方法,其特征在于,包括:调用读操作函数,执行数据读取过程,所述数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据;判断读取所述目标数据所用时长是否超过超时阈值;若是,中断读取所述目标数据的操作,将所述健康数据结点标记为坏结点,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点的步骤;若否,返回读取到的目标数据。2.根据权利要求1所述的方法,其特征在于,所述从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据,包括:调用读操作任务接口函数,将读操作任务提交至读数据线程,并运行所述读数据线程,执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤,所述读数据线程为独立于其他线程的线程;所述判断读取所述目标数据所用时长是否超过超时阈值,包括:判断所述读数据线程返回所述目标数据所用时长是否超过超时阈值。3.根据权利要求1所述的方法,其特征在于,所述将所述健康数据结点标记为坏结点之后,还包括:重新确定一个超时阈值,并将重新确定的超时阈值替换所述超时阈值,并返回执行从存储有目标数据的各个所述数据结点中,选取一个健康数据结点,并从所述健康数据结点中读取所述目标数据的步骤。4.根据权利要求1所述的方法,其特征在于,所述方法还包括:调用写操作函数,执行数据写入过程,所述数据写入过程,包括:获取写管道中各个数据结点的写操作确认信息;根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时;若是,则选取一个健康数据结点替换写操作超时的数据结点,并继续向所述写管道中写入数据。5.根据权利要求4所述的方法,其特征在于,各个数据结点包括:第一数据结点及多个第二数据结点,所述第一数据结点为直接与客户端交互的数据结点,第二数据结点为通过所述第一数据结点与所述客户端交互的数据结点;所述获取写管道中各个数据结点的写操作确认信息,包括:获取所述第一数据结点依次返回的数据包的写操作确认信息及各个所述第二数据结点的写操作确认信息返回超时状态信息;所述根据各个所述数据结点的写操作确认信息,分别判断各个所述数据结点是否写操作超时,包括:判断所述第一数据结点依次返回的数据包的写操作确认信息中,返回顺序相邻的预设个数的写操作确认信息是否均超时;若是,则确定所述第一数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第一数据结点;分别判断各个所述第二数据结点的写操作确认信息返回超时状态信息中是否存在返回顺序相邻的写操作确认信息返回超时信息;若是,则确定存在返回顺序相邻的写操作确认信息返回超时信息的第二数据结点的写操作超时,并选取一个健康数据结点替换写操作超时的第二数据结点,并继续向所述写管道中写入数据。6.一种数据处理装置,其特征在于,包括:读操作函数调用模块,用于调用读操作函数,执行数据读取过程,所述数据读取过程,包括:确定存储有目标数据的各个数据结点;从存储有...

【专利技术属性】
技术研发人员:徐佳宏杨永滔成学文吴启康
申请(专利权)人:深圳市茁壮网络股份有限公司
类型:发明
国别省市:广东,44

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

1