一种信息处理方法、装置、设备及计算机可读存储介质与流程
未命名
09-21
阅读:80
评论:0
1.本技术涉及对象存储领域中的信息处理技术,尤其涉及一种信息处理方法、装置、设备及计算机可读存储介质。
背景技术:
2.对象存储是面向对象/文件的、海量的互联网存储,它也可以直接被称为云存储,对象存储是将数据作为对象进行管理的。其中,在进行对象存储时通常是先读取用户上传的用户数据,之后对用户数据进行校验,再将用户数据进行存储,最后存储用户数据的元数据。但是,这种采用对象存储的方式每次只能处理一个对象的数据,面对海量数据进行对象存储时花费时间长且效率低。
技术实现要素:
3.为解决上述技术问题,本技术实施例期望提供一种信息处理方法、装置、设备及计算机可读存储介质,解决了相关技术中面对海量数据进行对象存储时花费时间长且效率低的问题。
4.本技术的技术方案是这样实现的:
5.一种信息处理方法,其特征在于,所述方法包括:
6.获取多个对象的待处理数据;
7.通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储所述每个对象的待处理数据;其中,所述目标指令为执行多数据运算的指令;
8.针对每个对象的待处理数据,在已存储待处理数据,且基于所述待处理数据对应的校验值确定所述待处理数据合法的情况下,存储所述待处理数据的元数据。
9.一种信息处理装置,所述装置包括:
10.获取单元,用于获取多个对象的待处理数据;
11.处理单元,用于通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储所述每个对象的待处理数据;其中,所述目标指令为执行多数据运算的指令;
12.所述处理单元,还用于针对每个对象的待处理数据,在已存储待处理数据,且基于所述待处理数据对应的校验值确定所述待处理数据合法的情况下,存储所述待处理数据的元数据。
13.一种信息处理设备,所述设备包括:处理器、存储器和通信总线;
14.所述通信总线用于实现所述处理器和所述存储器之间的通信连接;
15.所述处理器用于执行所述存储器中存储的信息处理程序,以实现上述的信息处理方法的步骤。
16.一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,
所述一个或者多个程序可被一个或者多个处理器执行,以实现上述的信息处理方法的步骤。
17.本技术的实施例所提供的信息处理方法、装置、设备及计算机可读存储介质,获取多个对象的待处理数据;通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据;其中,目标指令为执行多数据运算的指令;针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。如此,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
附图说明
18.图1为本技术实施例提供的一种信息处理方法的流程示意图;
19.图2为本技术实施例提供的另一种信息处理方法的流程示意图;
20.图3为本技术实施例提供的又一种信息处理方法的流程示意图;
21.图4为本技术实施例提供的一种信息处理方法中校验处理的流程示意图;
22.图5为本技术实施例提供的相关技术中对象存储的流程示意图;
23.图6为本技术实施例提供的一种信息处理系统的工作示意图;
24.图7为本技术实施例提供的一种信息处理装置的结构示意图;
25.图8为本技术实施例提供的一种信息处理设备的结构示意图。
具体实施方式
26.下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。
27.应当理解,此处所描述的具体实施例仅仅用以解释本技术,并不用于限定本技术。
28.本技术实施例提供一种信息处理方法,该方法可以应用于信息处理设备中,参照图1所示,该方法包括以下步骤:
29.步骤101、获取多个对象的待处理数据。
30.在本技术实施例中,信息处理设备可以是对象存储系统中的服务器;待处理数据可以是信息处理设备接收到的存储请求中携带的用户数据;其中,多个对象中的对象指的是对象存储的基本单元。每个对象都由对象键(objectkey)、对象值(value)和元数据组成;对象键是对象在存储桶中的唯一标识;对象值指的是用户数据;元数据指的是用户数据的元数据,具体可以为描述用户数据属性的数据。待处理数据指的是对象的用户数据(即对象值)。
31.具体地,信息处理设备可以接收用户终端发送的多个对象的待处理数据。在一种可行的实现方式中,待处理数据可以是用户上传的文档、图片和视频中的至少一种数据。元数据可以是用户数据最后修改时间、大小等信息,元数据中可以携带待处理数据的初始校验值,当然也可以不携带待处理数据的初始校验值。
32.步骤102、通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理
数据对应的校验值,以及存储每个对象的待处理数据。
33.其中,目标指令为执行多数据运算的指令。
34.在本技术实施例中,可以调取目标指令,并通过执行目标指令并行对多个对象的待处理数据进行完整性校验,得到每个待处理数据对应的校验值,并将每个对象的待处理数据存储至数据库中。其中,对待处理数据进行校验以及存储是并行处理的。其中,通过目标指令对多个对象的待处理数据进行多数据运算,以实现对多个对象的待处理数据进行完整性校验。
35.步骤103、针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。
36.其中,待处理数据的元数据指的是用户数据的元数据;元数据是存储请求中携带的。
37.在本技术实施例中,针对每个对象的待处理数据,可以确定待处理数据的元数据中是否携带有待处理数据对应的初始校验值,在确定元数据中携带初始校验值的情况下,可以确定初始校验值与对待处理数据进行校验得到的校验值是否一致,在初始校验值和校验值一致的情况下,确定待处理数据未被篡改,即表明待处理数据合法,则可以将元数据进行存储,之后可以发送用于通知数据被存储成功的信息至用户终端;其中,数据包括待处理数据和元数据;当然,在确定初始校验值和对待处理数据进行校验得到的校验值不一致的情况下,则不存储待处理数据的元数据,而是发送用于通知数据被存储失败的信息至用户终端。在已存储待处理数据,且校验得到待处理数据对应的校验值,且元数据中未携带待处理数据对应的初始校验值的情况下,则默认待处理数据合法,将元数据以及对待处理数据进行校验得到的校验值进行存储。
38.需要说明的是,存储元数据的位置和存储待处理数据的位置不同;在一种可行的实现方式中,信息处理设备可以将待处理数据存储至存储池中,并将待处理数据的元数据存储至数据库中。
39.本技术的实施例所提供的信息处理方法,获取多个对象的待处理数据;通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据;其中,目标指令为执行多数据运算的指令;针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。如此,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
40.基于前述实施例,本技术的实施例提供一种信息处理方法,参照图2所示,该方法包括以下步骤:
41.步骤201、信息处理设备接收多个处理请求。
42.其中,多个处理请求用于请求存储多个对象的待处理数据。
43.在本技术实施例中,处理请求可以是用户通过终端发送的用于存储待处理数据的存储请求;其中,多个处理请求对应的用户可以是同一用户,也可以是不同的用户。其中,处理请求中携带有待处理数据以及待处理数据的元数据;其中,待处理数据可以为用户数据。
44.步骤202、信息处理设备从多个处理请求中获取多个对象的待处理数据。
45.在本技术实施例中,可以对每个处理请求进行解析,以从每个处理请求中获取对象的待处理数据。其中,对象是针对对象存储而言的;对象包括待处理数据以及待处理数据的元数据。
46.在一种可行的实现方式中,元数据包括待处理数据的大小、名字、待处理数据的初始校验值、待处理子数据的寻址模式等。
47.步骤203、信息处理设备针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对每个对象的待处理子数据进行校验得到校验值,并存储待处理子数据。
48.在本技术实施例中,目标大小阈值可以是预先设置的;在一种可行的实现方式中,目标大小阈值可以是4k。针对每个对象的待处理数据,可以基于目标大小阈值对待处理数据进行第一次分割,得到第一个待处理子数据,之后可以对第一次分割后剩余的待处理数据进行第二次分割,得到第二个待处理子数据,直到第m次切割后剩余的待处理子数据的大小小于或等于目标大小阈值。如此,得到的待处理子数据是比对象颗粒更小的数据片段。
49.在一种可行的实现方式中,每个待处理子数据的大小可以为4k。
50.需要说明的是,基于目标大小阈值连续对待处理数据进行分割,即就是说,在当前切割得到待处理子数据后,即刻进行下一次切割,无需在当前切割得到待处理子数据后,需要对待处理子数据进行后续处理完成后再进行下一次切割,减少了对待处理数据进行切割的时间。
51.在本技术实施例中,目标指令可以是通过调用目标函数获取的能够执行多数据运算的指令;通过目标指令可以并行对多个对象中每个对象的待处理子数据进行校验,得到每个待处理子数据对应的校验值。其中,对一个对象的待处理数据而言,需要对该对象的待处理数据对应的多个待处理子数据均校验后,得到该待处理数据对应的校验值;针对一个待处理子数据而言,在对该待处理子数据进行校验时,同时也需要对该待处理子数据进行存储,如此,可以实现对待处理数据的校验以及存储进行并行处理。
52.需要说明的是,步骤203可以通过步骤a1~a2来实现:
53.步骤a1、信息处理设备针对每个对象的待处理数据,基于目标大小阈值对每个待处理数据进行第n次分割,得到第n个待处理子数据。
54.其中,n为正整数。
55.在本技术实施例中,当n为1时,可以基于目标大小阈值对待处理数据进行第一次分割,得到待处理数据的第一个待处理子数据;当n大于1时,基于目标大小阈值对待处理数据进行第n次分割,可以理解为是基于目标大小阈值对第n-1次分割后剩余的待处理数据进行分割,得到第n个待处理子数据。其中,待处理子数据的大小小于或等于目标大小阈值。
56.步骤a2、信息处理设备存储第n个待处理子数据以及通过目标指令对第n个待处理子数据进行校验,同时基于目标大小阈值对进行了第n次分割后的待处理数据进行第n+1次分割,直到待处理数据均校验及存储完成。
57.其中,n为正整数;进行了第n次分割后的待处理数据为进行了第n次分割后剩余的待处理数据。
58.在本技术实施例中,对第n个待处理子数据进行存储的同时,还需要通过目标指令
对第n个待处理子数据进行校验,以及基于目标大小阈值对进行了第n次分割后的待处理数据进行第n+1分割;也就是说,对第n个待处理子数据进行校验、存储、以及对进行了第n次分割后的待处理数据进行第n+1次分割是同时进行的,实现了采用异步并发方式处理同一个对象的不同待处理子数据,减少了处理同一个对象的待处理数据的时间。
59.需要说明的是,步骤a2中通过目标指令对第n个待处理子数据进行校验可以通过步骤a1~a3来实现:
60.步骤a1、信息处理设备生成针对每个对象的待处理子数据的校验请求。
61.其中,校验请求中携带有待处理子数据。
62.在本技术实施例中,针对每个对象的待处理子数据,可以生成用于对待处理子数据进行校验的校验请求;每个对象的待处理子数据的数量和校验请求的数量相同。每个对象的待处理数据可以被分割为多个待处理子数据,每个待处理子数据对应一个校验请求;那么可以理解为每个待处理数据可以对应多个校验请求,或每个对象可以对应多个校验请求。
63.步骤a2、信息处理设备基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个第n个待处理子数据对应的第n校验请求。
64.在本技术实施例中,针对每个待处理数据,基于待处理子数据在待处理数据中的位置,对每个请求队列中每个对象的待处理数据对应的多个校验请求进行排序,从排序后的校验请求中确定第n个待处理子数据对应的第n校验请求;如此,按照这种方式可以一次拿到多个对象对应的第n校验请求。
65.在一种可行的实现方式中,针对第i个对象的待处理数据,可以基于第i个对象的待处理子数据在第i个对象的待处理数据中的位置,对请求队列中当前具有的第i个对象的待处理子数据对应的校验请求进行排序,并从排序后的校验请求中确定位置最靠前的待处理子数据对应的校验请求,得到第i对象的对应的第n校验请求。
66.步骤a3、信息处理设备基于每个请求队列中的多个对象的多个第n校验请求,通过目标指令同时对每个请求队列中的多个对象的第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。
67.其中,n为大于1的正整数。
68.在本技术实施例中,响应多个对象对应的第n校验请求,通过目标指令同时对多个请求队列中每个请求队列的多个第n校验请求中的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n校验值;如此,实现了同时大批量对多个对象的待处理数据进行校验,提高了对多个对象的待处理数据进行校验的效率。对于一个请求队列而言,可以对该请求队列中多个对象对应的多个第n校验请求进行处理,以得到每个第n校验请求中携带的第n个待处理子数据对应的校验值;那么同时对多个请求队列中的多个第n校验请求进行校验时,可以实现大批量对多个对象的待处理数据进行校验。
69.步骤204、信息处理设备针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。
70.本技术实施例所提供的信息处理方法,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减
少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
71.基于前述实施例,本技术的实施例提供一种信息处理方法,参照图3所示,该方法包括以下步骤:
72.步骤301、信息处理设备接收多个处理请求。
73.其中,多个处理请求用于请求存储多个对象的待处理数据。
74.步骤302、信息处理设备从多个处理请求中获取多个对象的待处理数据。
75.步骤303、针对每个对象的待处理数据,信息处理设备基于目标大小阈值对待处理数据进行第n次分割,得到第n个待处理子数据。
76.步骤304、信息处理设备存储第n个待处理子数据。
77.步骤305、信息处理设备生成针对每个对象的待处理子数据的校验请求。
78.其中,校验请求中携带有待处理子数据。
79.步骤306、信息处理设备基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个第n个待处理子数据对应的第n校验请求。
80.步骤307、信息处理设备基于每个请求队列中的多个对象的多个第n校验请求,通过目标指令同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。
81.在本技术实施例中,针对每个请求队列,可以从请求队列中确定多个对象中每个对象的第n校验请求,并通过目标指令同时对多个请求队列中的多个第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。
82.需要说明的是,步骤307中通过目标指令同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行校验,可以通过步骤b1~b2来实现:
83.步骤b1、信息处理设备通过目标函数,调用矢量扩展指令集。
84.在本技术实施例中,可以通过调用的目标函数,调用矢量扩展指令集。其中,目标函数为目标库函数;矢量扩展指令集可以是高级矢量扩展指令集(advancedvector extensions,avx)。
85.在一种可行的实现方式中,目标库函数为*使用了isa-l_crypto库中的“md5_ctx_mgr_init()”、“md5_ctx_mgr_submit()”和“md5_ctx_mgr_flush()”等函数。
86.步骤b2、信息处理设备通过矢量扩展指令集中的指令,同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行完整性校验,得到每个第n待处理子数据对应的第n个校验值。
87.在本技术实施例中,多个请求队列中每个请求队列对应的线程可以同时调用矢量扩展指令集中的指令,来对多个请求队列中的多个对象的多个第n校验请求进行处理,以实现同时对多个请求队列中的多个第n校验请求进行处理。其中,每个请求队列中具有多个对象的第n校验请求。
88.具体地,针对每个请求队列,响应请求队列中多个对象的第n校验请求,通过矢量扩展指令集中的指令,采用摘要算法同时对多个第n校验请求中携带的第n个待处理子数据进行完整性校验,得到每个第n待处理子数据对应的第n个校验值。
89.在一种可行的实现方式中,摘要算法可以是md5信息摘要算法(message digest algorithm md5)。
90.需要说明的是,针对每个待处理数据,当n=1时,可以采用信息摘要算法对第一个待处理子数据进行处理,得到第一个待处理子数据对应的校验值;当n为大于1的正整数时,可以采用信息摘要算法对第n-1个待处理子数据对应的校验值和第n个待处理数据进行处理,得到第n个待处理数据对应的校验值;也就是说,对待处理数据进行校验时,具体是对待处理数据分割得到的多个待处理子数据进行校验的,在待处理数据被分割得到的多个待处理子数据均完成校验时,则确定待处理数据完成校验,可以得到待处理数据的校验值;其中,待处理数据的校验值为最后一个待处理子数据对应的校验值。
91.在一种可行的实现方式中,当待处理数据总共被分割了五次,可以得到六个待处理子数据,可以将最后一个待处理子数据即第六个待处理子数据对应的校验值,作为待处理数据的校验值。
92.步骤308、信息处理设备基于目标大小阈值对进行了第n次分割后的待处理数据进行第n+1次分割,直到待处理数据均校验及存储完成。
93.其中,n为正整数。
94.需要说明的是,步骤304、305~307和步骤308是同时执行。
95.步骤309、针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,信息处理设备存储待处理数据的元数据。
96.基于前述实施例,在本技术的其它实施例中,在步骤306信息处理设备基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个第n个待处理子数据对应的第n校验请求之前,该信息处理方法还包括如下步骤:
97.步骤310、获取处理器的使用情况。
98.在本技术实施例中,可以检测信息处理设备上处理器的使用情况。
99.具体地,信息处理设备可以根据自身的运行状态信息,确定处理器的使用情况。
100.在一种可行的实现方式中,处理器可以为中央处理器(central processing unit,cpu)。
101.步骤311、基于使用情况确定用于校验处理的处理器的内核数量。
102.在本技术实施例中,可以基于使用情况,从处理器的多个内核中确定用于进行校验处理的内核,并统计得到用于校验处理的处理器的内核数量。
103.步骤312、基于内核数量创建请求队列,并将每个校验请求存储至请求队列。
104.在本技术实施例中,可以基于内核数量来配置请求队列;其中,内核数量与请求队列的数量相同;信息处理设备可以将多个校验请求存储至请求队列中。
105.需要说明的是,步骤312中将每个校验请求存储至请求队列可以通过以下步骤来实现:
106.步骤c1、针对每个校验请求,基于校验请求的身份标识号,确定对应的请求队列。
107.在本技术实施例中,可以采用哈希算法(hash)基于每个校验请求的身份标识号(identity document,id),确定每个校验请求对应的请求队列;其中,同一个对象的校验请求处于同一请求队列中。其中,每一请求队列中具有多个对象的校验请求;不同请求队列中
涉及的对象不同。
108.步骤313、将校验请求存储至对应的请求队列。
109.在本技术实施例中,可以将生成的校验请求中存入该校验请求对应的请求队列中,以便后续从请求队列中调取校验请求,以对校验请求进行处理。
110.需要说明的是,由于待处理数据在校验时,当前待处理子数据的校验是依赖前一个待处理子数据的校验值以及当前待处理子数据的,也就是说,同一个待处理数据的多个待处理子数据的校验只能依次校验不能同时校验,当同时校验时就会导致待处理数据校验失败;所以,同一个对象的不同待处理子数据的校验请求需要放在同一个请求队列中,防止同时对同一个对象的不同待处理子数据进行校验。因此,对于同一对象的不同待处理子数据的校验请求而言,id可以设置为一致;如此,可以保证同一对象的待处理子数据被分配在同一请求队列中;避免同一对象的待处理子数据被分配在不同队列中,导致同一对象的多个不同待处理子数据被同时校验使得待处理数据的校验失败。其中,每个待处理子数据可以理解为是待处理数据的一个数据片段或数据分片。每个请求队列关联一个worker线程,运行在指令的cpu核上,通过请求队列对应的worker线程来对该请求队列中的校验请求执行批量处理,得到多个不同对象的数据分片对应的校验值。
111.在一种可行的实现方式中,如图4所示,可以采用哈希算法对每一校验请求的id进行哈希取余,确定校验请求对应的请求队列,存储校验请求至校验请求对应的请求队列,之后基于数据分片在对应的待处理数据中的位置,从每个请求队列中取出一批id各不相同的校验请求,通过每个请求队列对应的worker线程调用高级矢量扩展指令集中的指令,同时对每个请求队列中取出的校验请求进行处理,以得到每个校验请求中携带的数据分片对应的校验值;实现了在一个请求队列中同时对多个对象的待处理子数据进行校验,以及实现了同时大批量的对多个请求队列中的多个对象的待处理子数据进行校验;如此,基于特定于体系架构的高级矢量扩展指令集中的指令,实现了批量执行来自多个不同对象的数据分片的校验值计算,提高对象存储系统中cpu使用效率,减少了校验处理所花费的时间。将对象存储中涉及的校验处理以及存储处理(即存储待处理数据)进行隐藏,缩短了进行对象存储所花费的时间,最终解决了对象上传延迟的问题。其中,图4中的cpu1指的是cpu内核1;cpum指的是cpu内核m。
112.需要说明的是,通过特定体系架构的高级向量扩展指令集,使得一个cpu核可以一次计算多个数据分片的校验值,提高了cpu的使用效率。
113.下述结合相关技术中的方案,对本技术实施例所提供的信息处理方法进行详细的解释说明。
114.如图5所示,相关技术中进行对象存储(也可以理解为是上传对象)时,首先服务器需要先读取用户上传的用户数据,之后再计算用户数据的校验值,接着再将用户数据写入存储池,最终再存储元数据;明显可以看到读取用户数据、对用户数据进行校验以及将用户数据写入存储池是串行过程,会导致上传对象延迟比较高。基于此,本技术实施例提出了一种信息处理方法,该信息处理方法应用于信息处理系统,如图6所示,该信息处理系统包括数据读取模块、数据流切分模块、存储池访问代理模块、数据库访问代理模块和md5校验模块。
115.在本技术实施例中,数据读取模块用于从存储请求中读取待处理数据,并将待处
理数据传输至数据流切分模块,数据流切分模块可以基于目标大小阈值对待处理数据进行连续分割,在切割时无需等待当前切割的待处理子数据被后续处理完成再进行下一次切割,而是在切割得到当前的待处理子数据(数据分片)后,即刻进行下一次切割,如此,减少了切割待处理数据所花费的时间;数据流切分模块可以触发待处理子数据进行异步存储以及异步校验,具体可以将由存储池访问代理模块将切割到的数据分片写入存储池,同时由md5校验模块对该数据分片进行校验,即当某一数据分片被存储时,该数据分片同时也被校验,实现了数据分片的校验和存储并行处理,当对数据分片进行校验以及存储时,数据流切分模块可以对切割剩余的待处理数据进行继续切割,实现了异步并发方式处理同一对象的不同数据分片,将对象处理的多个耗时阶段相互隐藏,最终达到缩短对象上传延迟的目的。当待处理数据的每个数据分片均被校验,且每个数据分片均被存储时,可以基于待处理数据的校验值确定待处理数据是否合法,在确定待处理数据合法的情况下,将待处理数据的元数据存储至数据库中。
116.需要说明的是,通过数据流切分模块将待处理数据分为多个更小粒度的数据片段,将数据校验过程异步化,无需等待前面的数据片段写入后端存储池完成,就开始切割得到下一分片,实现将读取用户数据阶段、数据校验计算阶段、写入后端存储池阶段并行处理,从而缩短了整体上传对象的时间,解决了上传对象耗时的问题。(上传对象可以理解为进行对象存储)。经产品环境张验证,在存储池和cpu非瓶颈的前提下,对象平均上传延迟可以降低约35%。
117.需要说明的是,本实施例中与其它实施例中相同步骤和相同内容的说明,可以参照其它实施例中的描述,此处不再赘述。
118.本技术实施例所提供的信息处理方法,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
119.基于前述实施例,本技术的实施例提供一种信息处理设备,该信息处理装置可以应用于图1~3对应的实施例提供的信息处理方法中,参照图7所示,该信息处理装置4可以包括:
120.获取单元41,用于获取多个对象的待处理数据;
121.处理单元42,用于通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据;其中,目标指令为执行多数据运算的指令;
122.处理单元42,还用于针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。
123.在本技术实施例中,获取单元41还用于执行以下步骤:
124.接收多个处理请求;多个处理请求用于请求存储多个对象的待处理数据;
125.从多个处理请求中获取多个对象的待处理数据。
126.在本技术实施例中,处理单元42还用于执行以下步骤:
127.针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对每个对象的待处理子数据进行校验得
到校验值,并存储待处理子数据。
128.在本技术实施例中,处理单元42还用于执行以下步骤:
129.针对每个对象的待处理数据,基于目标大小阈值对待处理数据进行第n次分割,得到第n个待处理子数据;
130.存储第n个待处理子数据以及通过目标指令对第n个待处理子数据进行校验,同时基于目标大小阈值对进行了第n次分割后的待处理数据进行第n+1次分割,直到待处理数据均校验及存储完成;其中,n为正整数。
131.在本技术实施例中,处理单元42还用于执行以下步骤:
132.生成针对每个对象的待处理子数据的校验请求;其中,校验请求中携带有待处理子数据;
133.基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个第n个待处理子数据对应的第n校验请求;
134.基于每个请求队列中的多个对象的多个第n校验请求,通过目标指令同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。
135.在本技术实施例中,处理单元42还用于执行以下步骤:
136.获取处理器的使用情况,并基于使用情况确定用于校验处理的处理器的内核数量;
137.基于内核数量创建请求队列,并将每个校验请求存储至请求队列。
138.在本技术实施例中,处理单元42还用于执行以下步骤:
139.针对每个校验请求,基于校验请求的身份标识号,确定对应的请求队列;
140.将校验请求存储至对应的校验请求;其中,同一个对象对应的多个校验请求存储在同一请求队列中。
141.在本技术实施例中,处理单元42还用于执行以下步骤:
142.通过目标函数,调用矢量扩展指令集;
143.通过矢量扩展指令集中的指令,同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行完整性校验,得到每个第n待处理子数据对应的第n个校验值。
144.需要说明的是,本技术实施例中各单元之间的交互过程,可以参照图1~3对应的实施例提供的信息处理方法中的实现过程,此处不再赘述。
145.本技术实施例所提供的信息处理装置,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
146.基于前述实施例,本技术的实施例提供一种信息处理设备,该信息处理设备可以应用于图1~3对应的实施例提供的信息处理方法中,参照图8所示,该信息处理设备5可以包括:处理器51、存储器52和通信总线53,其中:
147.通信总线53用于实现处理器51和存储器52之间的通信连接;
148.处理器51用于执行存储器52中存储的信息处理程序,以实现以下步骤:
149.获取多个对象的待处理数据;
150.通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据;其中,目标指令为执行多数据运算的指令;
151.针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。
152.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的获取多个对象的待处理数据,以实现以下步骤:
153.接收多个处理请求;多个处理请求用于请求存储多个对象的待处理数据;
154.从多个处理请求中获取多个对象的待处理数据。
155.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据,以实现以下步骤:
156.针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对每个对象的待处理子数据进行校验得到校验值,并存储待处理子数据。
157.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对每个对象的待处理子数据进行校验得到校验值,并存储待处理子数据,以实现以下步骤:
158.针对每个对象的待处理数据,基于目标大小阈值对待处理数据进行第n次分割,得到第n个待处理子数据;
159.存储第n个待处理子数据以及通过目标指令对第n个待处理子数据进行校验,同时基于目标大小阈值对进行了第n次分割后的待处理数据进行第n+1次分割,直到待处理数据均校验及存储完成;其中,n为正整数。
160.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的通过目标指令对第n个待处理子数据进行校验,以实现以下步骤:
161.生成针对每个对象的待处理子数据的校验请求;其中,校验请求中携带有待处理子数据;
162.基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个第n个待处理子数据对应的第n校验请求;
163.基于每个请求队列中的多个对象的多个第n校验请求,通过目标指令同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。
164.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序,以实现以下步骤:
165.获取处理器的使用情况,并基于使用情况确定用于校验处理的处理器的内核数量;
166.基于内核数量创建请求队列,并将每个校验请求存储至请求队列。
167.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的
将每个校验请求存储至请求队列,以实现以下步骤:
168.针对每个校验请求,基于校验请求的身份标识号,确定对应的请求队列;
169.将校验请求存储至对应的校验请求;其中,同一个对象对应的多个校验请求存储在同一请求队列中。
170.在本技术的其他实施例中,处理器51用于执行存储器52中存储的信息处理程序的通过目标指令同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值,以实现以下步骤:
171.通过目标函数,调用矢量扩展指令集;
172.通过矢量扩展指令集中的指令,同时对每个请求队列中的多个对象的多个第n校验请求中携带的第n个待处理子数据进行完整性校验,得到每个第n待处理子数据对应的第n个校验值。
173.需要说明的是,本实施例中处理器所执行的步骤的具体实现过程,可以参照图1~3对应的实施例提供的信息处理方法中的实现过程,此处不再赘述。
174.本技术实施例所提供的信息处理设备,面对海量数据,可以通过执行多数据运算的指令并行对多个对象的待处理数据进行校验,实现了同时批量校验多个待处理数据,减少了对海量数据进行对象存储时所花费的时间,提升了对象存储的效率,解决了相关技术中面对海量数据,进行对象存储时花费时间长且效率低的问题。
175.基于前述实施例,本技术的实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有一个或者多个程序,该一个或者多个程序可被一个或者多个处理器执行,以实现图1~3对应的实施例提供的信息处理方法中的步骤。
176.需要说明的是,上述计算机可读存储介质可以是只读存储器(read only memory,rom)、可编程只读存储器(programmable read-only memory,prom)、可擦除可编程只读存储器(erasable programmable read-only memory,eprom)、电可擦除可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、磁性随机存取存储器(ferromagnetic random access memory,fram)、快闪存储器(flash memory)、磁表面存储器、光盘、或只读光盘(compact disc read-only memory,cd-rom)等存储器;也可以是包括上述存储器之一或任意组合的各种电子设备,如移动电话、计算机、平板设备、个人数字助理等。
177.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
178.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
179.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服
务器,空调器,或者网络设备等)执行本技术各个实施例所描述的方法。
180.本技术是参照根据本技术实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
181.这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
182.这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
183.以上仅为本技术的优选实施例,并非因此限制本技术的专利范围,凡是利用本技术说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本技术的专利保护范围内。
技术特征:
1.一种信息处理方法,其特征在于,所述方法包括:获取多个对象的待处理数据;通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储所述每个对象的待处理数据;其中,所述目标指令为执行多数据运算的指令;针对每个对象的待处理数据,在已存储待处理数据,且基于所述待处理数据对应的校验值确定所述待处理数据合法的情况下,存储所述待处理数据的元数据。2.根据权利要求1所述的方法,其特征在于,所述获取多个对象的待处理数据,包括:接收多个处理请求,所述多个处理请求用于请求存储所述多个对象的待处理数据;从所述多个处理请求中获取所述多个对象的待处理数据。3.根据权利要求1所述的方法,其特征在于,所述通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储所述每个对象的待处理数据,包括:针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对所述每个对象的待处理子数据进行校验得到所述校验值,并存储所述待处理子数据。4.根据权利要求3所述的方法,其特征在于,所述针对每个对象的待处理数据,基于目标大小阈值连续对待处理数据进行分割,在每分割得到待处理子数据的情况下,通过目标指令对所述每个对象的待处理子数据进行校验得到所述校验值,并存储所述待处理子数据,包括:针对每个对象的待处理数据,基于目标大小阈值对待处理数据进行第n次分割,得到第n个待处理子数据;存储所述第n个待处理子数据以及通过所述目标指令对所述第n个待处理子数据进行校验,同时基于所述目标大小阈值对进行了第n次分割后的待处理数据进行第n+1次分割,直到待处理数据均校验及存储完成;其中,n为正整数。5.根据权利要求4所述的方法,其特征在于,所述通过所述目标指令对所述第n个待处理子数据进行校验,包括:生成针对每个对象的待处理子数据的校验请求;其中,所述校验请求中携带有所述待处理子数据;基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个所述第n个待处理子数据对应的第n校验请求;基于所述每个请求队列中的所述多个对象的多个第n校验请求,通过所述目标指令同时对所述每个请求队列中的所述多个对象的多个第n校验请求中携带的所述第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值。6.根据权利要求5所述的方法,其特征在于,所述基于待处理子数据在对应的待处理数据中的位置,从每个请求队列中存储的多个校验请求中确定多个对象的多个所述第n个待处理子数据对应的第n校验请求之前,还包括:获取处理器的使用情况;基于所述使用情况确定用于进行校验处理的处理器的内核数量;
基于所述内核数量创建请求队列,并将每个校验请求存储至请求队列。7.根据权利要求6所述的方法,其特征在于,所述将每个校验请求存储至请求队列,包括:针对每个校验请求,基于校验请求的身份标识号,确定对应的请求队列;将校验请求存储至对应的请求队列;其中,同一个对象对应的多个校验请求存储在同一请求队列中。8.根据权利要求5所述的方法,其特征在于,所述通过所述目标指令同时对所述每个请求队列中的所述多个对象的多个第n校验请求中携带的所述第n个待处理子数据进行校验,得到每个第n待处理子数据对应的第n个校验值,包括:通过目标函数,调用矢量扩展指令集;通过所述矢量扩展指令集中的指令,同时对每个请求队列中的所述多个对象的多个第n校验请求中携带的所述第n个待处理子数据进行完整性校验,得到每个第n待处理子数据对应的第n个校验值。9.一种信息处理装置,其特征在于,所述装置包括:获取单元,用于获取多个对象的待处理数据;处理单元,用于通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储所述每个对象的待处理数据;其中,所述目标指令为执行多数据运算的指令;所述处理单元,还用于针对每个对象的待处理数据,在已存储待处理数据,且基于所述待处理数据对应的校验值确定所述待处理数据合法的情况下,存储所述待处理数据的元数据。10.一种信息处理设备,其特征在于,所述设备包括:处理器、存储器和通信总线;所述通信总线用于实现所述处理器和所述存储器之间的通信连接;所述处理器用于执行所述存储器中存储的信息处理程序,以实现如权利要求1~8任一项所述的信息处理方法的步骤。11.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现如权利要求1~8中任一项所述的信息处理方法的步骤。
技术总结
本申请实施例公开了一种信息处理方法,该方法包括:获取多个对象的待处理数据;通过目标指令并行对多个对象的待处理数据进行校验,得到每个待处理数据对应的校验值,以及存储每个对象的待处理数据;其中,目标指令为执行多数据运算的指令;针对每个对象的待处理数据,在已存储待处理数据,且基于待处理数据对应的校验值确定待处理数据合法的情况下,存储待处理数据的元数据。本申请实施例还公开了一种信息处理装置、设备及计算机可读存储介质。设备及计算机可读存储介质。设备及计算机可读存储介质。
技术研发人员:杨红刚 任家英
受保护的技术使用者:中国移动通信集团有限公司
技术研发日:2022.11.15
技术公布日:2023/9/20
版权声明
本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
飞行汽车 https://www.autovtol.com/
上一篇:一种工程施工竖井的制作方法 下一篇:一种防护效果好的去毛刺设备的制作方法
