CN110888865A - 一种基于单向链表的数据处理方法及装置 - Google Patents
一种基于单向链表的数据处理方法及装置 Download PDFInfo
- Publication number
- CN110888865A CN110888865A CN201911229026.2A CN201911229026A CN110888865A CN 110888865 A CN110888865 A CN 110888865A CN 201911229026 A CN201911229026 A CN 201911229026A CN 110888865 A CN110888865 A CN 110888865A
- Authority
- CN
- China
- Prior art keywords
- data
- linked list
- target
- processed
- writing
- 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.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 claims abstract description 91
- 238000000034 method Methods 0.000 claims abstract description 33
- 230000015654 memory Effects 0.000 claims description 20
- 238000004590 computer program Methods 0.000 claims description 7
- 230000008569 process Effects 0.000 description 15
- 238000004891 communication Methods 0.000 description 7
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 238000012544 monitoring process Methods 0.000 description 3
- 238000012216 screening Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000005856 abnormality Effects 0.000 description 1
- 238000012550 audit Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000001105 regulatory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
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/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2282—Tablespace storage structures; Management thereof
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/21—Design, administration or maintenance of databases
- G06F16/211—Schema design and management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请提供了一种基于单向链表的数据处理方法及装置,其中,该方法包括:在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;获取所述单向链表对应的目标线程,通过所述目标线程从所述单向链表中读取目标数据;对所述目标数据进行处理,并将所述目标数据对应的处理结果通过所述目标线程写入数据库。本申请将接收到的待处理数据逐条写入单向链表,并逐次对单向链表中存储的待处理数据进行处理,提高了服务器运行的稳定性,提高了待处理数据的处理效率。
Description
技术领域
本申请涉及计算机信息技术领域,具体而言,涉及一种基于单向链表的数据处理方法及装置。
背景技术
在大数据时代,存在大量的信息系统,在信息系统中,可以输入、存储、处理、输出和控制信息。信息系统在运行过程中,会生成对应的日志信息,用于记录信息系统的运行情况。为了对信息系统的运行过程进行监控,通常使用日志审计平台对上述日志信息进行处理,得到信息系统的监控结果。
当存在多个关联的信息系统时,为了更加全面地监控多个信息系统的运行情况,使用统一的日志审计平台对多个关联的信息系统进行监控,上述日志审计平台接收来自不同的信息系统的日志信息,并对接收到的日志信息进行相关处理,得到多个关联信息系统的监控结果。
但是,当多个信息系统同时向日志审计平台发送日志信息时,或者,当任一信息系统发送的日志信息数量激增时,日志审计平台的存储空间无法容纳接收到的所有日志信息,这将导致日志审计平台的服务器异常,影响日志审计平台的正常工作,降低日志信息的处理效率。
发明内容
有鉴于此,本申请实施例的目的在于提供一种基于单向链表的数据处理方法及装置,将接收到的待处理数据逐条写入单向链表,并逐次对单向链表中存储的待处理数据进行处理,提高了服务器运行的稳定性,并提高了数据的处理效率。
第一方面,本申请实施例提供了一种基于单向链表的数据处理方法,该数据处理方法包括:
在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;
获取所述单向链表对应的目标线程,通过所述目标线程从所述单向链表中读取目标数据;
对所述目标数据进行处理,并将所述目标数据对应的处理结果通过所述目标线程写入数据库。
在一种可能的实施方式中,所述基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表,包括:
基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数;
获取所述多条待处理数据的第一排列顺序;
根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
在一种可能的实施方式中,所述获取所述单向链表对应的目标线程,包括:
针对每个处理周期,获取该处理周期内对应于所述单向链表的目标线程;其中,不同的处理周期下,所述单向链表对应的所述目标线程不同。
在一种可能的实施方式中,所述通过所述目标线程从所述单向链表中读取目标数据,包括:
获取所述单向链表中存储的所述待处理数据的第二排列顺序;
按照所述第二排列顺序,通过所述目标线程从所述单向链表中读取所述目标数据。
在一种可能的实施方式中,在将所述目标数据对应的处理结果通过所述目标线程写入数据库之后,还包括:
删除所述目标线程。
在一种可能的实施方式中,通过以下方法生成所述目标线程:
获取内存中存储的线程配置文件;
基于所述线程配置文件,生成所述目标线程。
第二方面,本申请实施例提供了一种基于单向链表的数据处理装置,该数据处理装置包括:
第一写入模块,用于在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;
第一获取模块,用于获取所述单向链表对应的目标线程;
读取模块,用于通过所述目标线程从所述单向链表中读取目标数据;
处理模块,用于对所述目标数据进行处理;
第二写入模块,用于将所述目标数据对应的处理结果通过所述目标线程写入数据库。
在一种可能的实施方式中,所述第一写入模块,在基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表时,用于:
基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数;
获取所述多条待处理数据的第一排列顺序;
根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
第三方面,本申请实施例提供了一种电子设备,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行第一方面任一项所述的基于单向链表的数据处理方法的步骤。
第四方面,本申请实施例提供了一种计算机可读存储介质,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行第一方面任一项所述的基于单向链表的数据处理方法的步骤。
本申请实施例提供的基于单向链表的数据处理方法及装置,将接收到的待处理数据逐条写入单向链表,并根据目标服务器处理数据的能力,预设目标数据的条数,多次从单向链表中读取预设数量的目标数据,并将上述目标数据的处理结果写入数据库,避免目标服务器同时存储或同时处理大量的数据,提高了目标服务器运行的稳定性,并提高了数据的处理效率。
进一步,本申请实施例提供的基于单向链表的数据处理方法及装置,还可以根据单向链表的存储情况,调控获取目标线程的处理周期,当单向链表的存储压力较大时,缩短处理周期,加快从单线链表中读取目标数据的速度,避免单向链表存储空间饱和,进而避免丢失待处理数据,提高数据存储的稳定性和安全性。
为使本申请的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本申请实施例提供的一种基于单向链表的数据处理方法的流程图;
图2示出了本申请实施例提供的基于单向链表的数据处理方法中,将待处理数据写入单向链表的方法的流程图;
图3示出了本申请实施例提供的基于单向链表的数据处理方法中,从单向链表中读取目标数据的方法的流程图;
图4示出了本申请实施例提供的基于单向链表的数据处理方法中,生成目标线程的方法的流程图;
图5示出了本申请实施例提供的一种基于单向链表的数据处理装置的结构示意图;
图6示出了本申请实施例提供的一种电子设备的示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
现阶段,目标服务器通常与一个数据源端或多个数据源端建立通信连接,以接收数据源端发送的待处理数据,并对上述待处理数据进行相应处理,将待处理数据的处理结果进行存储,以便对数据源端生成的待处理数据进行监控。
但是,当多个数据源端同时向目标服务器发送待处理数据时,或者,当任一数据源端向目标服务器发送的待处理数据数量激增时,目标服务器对应的内存存储空间无法容纳接收到的所有待处理数据,这将导致目标服务器异常,影响目标服务器的正常工作,降低数据的处理效率。
基于上述问题,本申请实施例提供了一种基于单向链表的数据处理方法及装置,将接收到的待处理数据逐条写入单向链表,并根据目标服务器处理数据的能力,预设目标数据的条数,多次从单向链表中读取预设数量的目标数据,并将上述目标数据的处理结果写入数据库,避免目标服务器同时存储或同时处理大量的数据,提高了目标服务器运行的稳定性,并提高了数据的处理效率。
针对以上方案所存在的缺陷,均是发明人在经过实践并仔细研究后得出的结果,因此,上述问题的发现过程以及下文中本申请针对上述问题所提出的解决方案,都应该是发明人在本申请过程中对本申请做出的贡献。
下面将结合本申请中附图,对本申请中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。
为便于对本实施例进行理解,首先对本申请实施例公开的基于单向链表的数据处理方法进行详细介绍。
如图1所示,为本申请实施例提供的基于单向链表的数据处理方法的流程图,该数据处理方法包括以下步骤:
S101、在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表。
本申请实施例中,数据源端生成多条待处理数据,并将上述多条待处理数据发送给目标服务器。目标服务器在接收到上述多条待处理数据后,根据该目标服务器对应的单向链表的存储空间,确定可以写入单向链表的目标待处理数据,并将上述目标待处理数据写入单向链表。
可选的,如果该目标服务器对应的单向链表的存储空间已被全部占用,则确定该单向链表不能写入待处理数据。
可选的,如果该目标服务器对应的单向链表的存储空间可以容纳接收到的全部待处理数据,则将接收到的多条待处理数据写入该单向链表。
可选的,如果该目标服务器对应的单向链表的存储空间不足以容纳接收到的全部待处理数据,则将接收到的部分待处理数据写入该单向链表。
单向链表设置在目标服务器的内存中,单向链表的存储空间小于等于目标服务器内存的存储空间。单向链表的存储空间通过可以容纳数据的条数来衡量,比如,单向链表一可以容纳十万条数据,在目标服务器接收到待处理数据后,如果单向链表一已经存储了十万条数据,则不存储待处理数据;如果单向链表一已经存储了九万条数据,则可以存储接收到的全部待处理数据或者部分待处理数据。
目标服务器通过线程可以与一个数据源端建立通信连接,也可以与多个数据源端建立通信连接。当目标服务器与多个数据源端建立通信连接时,每一个数据源端对应一个线程,任一数据源端在生成待处理数据后,通过对应的线程向目标服务器发送待处理数据。
S102、获取所述单向链表对应的目标线程,通过所述目标线程从所述单向链表中读取目标数据。
本申请实施例中,目标线程是与单向链表对应的线程,通过目标线程可以从单向链表中读取已存储的待处理数据。目标数据是单向链表中已存储的全部待处理数据或者部分待处理数据。预设目标数据的目标条数,将单向链表中上述目标条数的待处理数据确定为目标数据,通过目标线程从单向链表中读取上述目标数据。
S103、对所述目标数据进行处理,并将所述目标数据对应的处理结果通过所述目标线程写入数据库。
本申请实施例中,目标服务器对目标数据进行相应的处理,得到目标数据的处理结果,并将上述目标数据的处理结果通过目标线程存储在目标服务器对应的数据库中。这里,上述相应的处理包括以下一种或多种处理方式:对目标数据进行筛选、对目标数据进行过滤、对目标数据进行分类、对目标数据进行聚类等。
举例来讲,对目标数据进行筛选,目标数据包括目标数据一、目标数据二、目标数据三、目标数据四,每个目标数据均携带有标识信息,不同的目标数据携带的标识信息可以不同,预设有目标标识信息,将每个目标数据携带的标识信息与目标标识信息进行对比,将携带有目标标识信息的目标数据确定为筛选得到的结果。
本申请实施例中,若通过目标线程一从单向链表中读取目标数据,则上述目标数据的处理结果通过目标线程一写入目标服务器的数据库中。
本申请实施例中,如果通过目标线程从单向链表中读取目标数据的速度大于目标服务器处理目标数据的速度,具体的,在10分钟内,通过目标线程一读取了5条目标数据、通过目标线程二读取了5条目标数据,但是,目标服务器仅处理了3条目标数据,则按照获取目标线程的时间先后顺序,目标服务器对通过多个目标线程读取的多条目标数据逐条进行处理。
举例来讲,目标服务器在10:00获取了目标线程一,通过目标线程一从单向链表中读取目标数据一;目标服务器在10:05获取了目标线程二,通过目标线程二从单向链表中读取目标数据二,则目标服务器先处理目标数据一、再处理目标数据二。
本申请实施例提供的基于单向链表的数据处理方法,将接收到的多条待处理数据逐条写入单向链表中,避免多条待处理数据同时存储,保证了目标服务器运行的稳定性;从单向链表中逐次读取目标数据,以使目标服务器逐次对目标数据进行处理,避免目标服务器同时处理大批量目标数据,保证了数据处理的稳定性,提高了数据处理的效率。
进一步的,参见图2所示,本申请实施例提供的基于单向链表的数据处理方法中,所述基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表,包括:
S201、基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数。
本申请实施例中,单向链表的存储空间通过可以容纳数据的条数来衡量,获取单向链表中已经存储的待处理数据的条数,并根据预设的该单向链表中可以容纳待处理数据的条数,确定该单向链表中可以写入待处理数据的条数。具体的,针对该单向链表,将预设的可以容纳待处理数据的条数与已经存储的待处理数据的条数的差值,确定为待写入数据的条数。
S202、获取所述多条待处理数据的第一排列顺序。
S203、根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
综合步骤202和步骤203,将上述待写入数据的条数与接收到的多条待处理数据的条数进行对比,如果上述待写入数据的条数大于等于接收到的多条待处理数据的条数,则将接收到的多条待处理数据确定为目标待处理数据,将上述目标待处理数据按照第一排列顺序逐条写入单向链表。这里,第一排列顺序为多条待处理数据前后排列的顺序,排在前面的待处理数据优先写入单向链表;如果上述待写入数据的条数小于接收到的多条待处理数据的条数,则将多个待处理数据中的部分待处理数据确定为目标待处理数据,目标待处理数据的条数等于待写入数据的条数,目标待处理数据是按照第一排列顺序从前至后选取出的待处理数据,并将上述目标待处理数据按照第一排列顺序逐条写入单向链表。
举例来讲,预设单向链表一可以容纳20条数据,单向链表一中已经存储17条数据,即单向链表一中待写入数据的条数为3条。如果数据源端向目标服务器发送2条待处理数据,单向链表一可以容纳上述2条待处理数据,将上述2条待处理数据确定为目标待处理数据,根据上述2条待处理数据对应的第一排列顺序,从前至后分别为待处理数据一、待处理数据二,先将待处理数据一写入单向链表一、再将待处理数据二写入单向链表一。
如果数据源端向目标服务器发送4条待处理数据,单向链表一只能容纳上述4条待处理数据中的2条待处理数据,按照上述4条待处理数据对应的第一排列顺序,从前至后分别为待处理数据三、待处理数据四、处理数据五、待处理数据六,将待处理数据三和待处理数据四确定为目标待处理数据,先将待处理数据三写入单向链表一、再将待处理数据四写入单向链表一。
当多个数据源端同时向目标服务器发送多条待处理数据时,将单向链表待写入数据的条数与接收到的多条待处理数据的条数进行对比,如果上述待写入数据的条数大于等于接收到的多条待处理数据的条数,则按照预设的多个数据源端的存储顺序,将接收到的多条待处理数据确定为目标待处理数据;如果上述待写入数据的条数小于接收到的多条待处理数据的条数,则按照预设的多个数据源端的存储顺序,将上述多条待处理数据中的部分待处理数据确定为目标待处理数据,并将上述目标待处理数据逐条写入单向链表。
举例来讲,目标服务器与数据源端一、数据源端二、数据源端三建立通信连接,数据源端一、数据源端二、数据源端三同时向目标服务器分别发送5条待处理数据、10条待处理数据、2条待处理数据,预设的多个数据源端的存储顺序,从前至后分别为数据源端一、数据源端二、数据源端三,如果单向链表待写入数据的条数大于等于17条,则按照预设的数据源端存储顺序,逐条将数据源端一、数据源端二、数据源端三发送的待处理数据写入单向链表;如果单向链表待写入数据的条数等于8条,则先将数据源端一发送的5条待处理数据逐条写入单向链表、再将数据源端二发送的前3条待处理数据逐条写入单向链表。
进一步的,本申请实施例提供的基于单向链表的数据处理方法中,所述获取所述单向链表对应的目标线程,包括:
针对每个处理周期,获取该处理周期内对应于所述单向链表的目标线程;其中,不同的处理周期下,所述单向链表对应的所述目标线程不同。
本申请实施例中,根据单向链表中待处理数据的存储情况,设置上述处理周期,如果单向链表的存储空间接近饱和,则缩短上述处理周期;如果单向链表的存储空间很充裕,则可以适当延长上述处理周期。每经过一个处理周期,目标服务器获取一个目标线程,该目标线程与上述单向链表相对应。
可选的,每经过一个处理周期,如果单向链表中没有存储待处理数据,则不获取目标线程;如果单向链表中存储有至少一条待处理数据,则获取一个目标线程。
本申请实施例提供的基于单向链表的数据处理方法,根据单向链表的存储情况,调控获取目标线程的处理周期,当单向链表的存储压力较大时,缩短上述处理周期,加快从单线链表中读取目标数据的速度,避免单向链表存储空间饱和,进而避免待处理数据丢失,提高了存储待处理数据的稳定性和安全性。
进一步的,参见图3所示,本申请实施例提供的基于单向链表的数据处理方法中,所述通过所述目标线程从所述单向链表中读取目标数据,包括:
S301、获取所述单向链表中存储的所述待处理数据的第二排列顺序。
S302、按照所述第二排列顺序,通过所述目标线程从所述单向链表中读取所述目标数据。
综合步骤301和步骤302,将待处理数据写入单向链表后,待处理数据在单向链表中按照第二排列顺序进行排列,针对第二排列顺序,先写入的待处理数据在单向链表中排在前面,即先写入单向链表的待处理数据,先从单向链表中读取。
举例来讲,目标服务器获取目标线程的处理周期为5分钟,单向链表中存储有20条待处理数据,上述第二排列顺序,从前至后分别为:待处理数据一、待处理数据二、待处理数据三……待处理数据二十,预设目标数据的条数为5条,在10:00目标服务器获取目标线程一,通过目标线程一从单向链表中读取待处理数据一……待处理数据五,在读取待处理数据一……待处理数据五后,单向链表中存储有15条待处理数据,此时,上述第二排列顺序,从前至后分别为:待处理数据六、待处理数据七、待处理数据八……待处理数据二十(10:00-10:05,单向链表中没有写入新的待处理数据),在10:05目标服务器获取目标线程二,通过目标线程二从单向链表中读取待处理数据六、待处理数据七……待处理数据十。
可选的,若单向链表中存储的待处理数据的条数小于预设目标数据的条数,则在获取目标线程后,通过目标线程从单向链表中读取该单向链表中存储的全部待处理数据。比如,预设目标数据的条数为5条,在获取目标线程一后,单向链表中存储有3条待处理数据,通过目标线程一从该单向链表中读取仅有的3条待处理数据。
进一步的,本申请实施例提供的基于单向链表的数据处理方法中,在将所述目标数据对应的处理结果通过所述目标线程写入数据库之后,还包括:
删除所述目标线程。
举例来讲,通过目标线程一从单向链表中读取目标数据,目标服务器处理目标数据,得到目标数据的处理结果,并将上述处理结果通过目标线程一写入数据库中,并删除该目标线程一。
进一步的,参见图4所示,本申请实施例提供的基于单向链表的数据处理方法中,通过以下方法生成所述目标线程:
S401、获取内存中存储的线程配置文件。
S402、基于所述线程配置文件,生成所述目标线程。
综合步骤401和步骤402,针对每个生成周期,生成该生成周期内对应于单向链表的目标线程;其中,不同的生成周期下,单向链表对应的目标线程不同。其中,上述生成周期等于目标服务器获取目标线程的处理周期。
每经过一个生成周期,从内存中获取一次线程配置文件,根据该线程配置文件生成一个目标线程。
基于同一发明构思,本申请实施例中还提供了与基于单向链表的数据处理方法对应的基于单向链表的数据处理装置,由于本申请实施例中的装置解决问题的原理与本申请实施例上述基于单向链表的数据处理方法相似,因此装置的实施可以参见方法的实施,重复之处不再赘述。
参见图5所示,为本申请一实施例提供的一种基于单向链表的数据处理装置的示意图,该数据处理装置500包括:
第一写入模块501,用于在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;
第一获取模块502,用于获取所述单向链表对应的目标线程;
读取模块503,用于通过所述目标线程从所述单向链表中读取目标数据;
处理模块504,用于对所述目标数据进行处理;
第二写入模块505,用于将所述目标数据对应的处理结果通过所述目标线程写入数据库。
本申请实施例提供的基于单向链表的数据处理装置,将接收到的多条待处理数据逐条写入单向链表中,避免多条待处理数据同时存储,保证了目标服务器运行的稳定性;从单向链表中逐次读取目标数据,以使目标服务器逐次对目标数据进行处理,避免目标服务器同时处理大批量目标数据,保证了数据处理的稳定性,提高了数据处理的效率。
进一步的,本申请实施例提供的基于单向链表的数据处理装置中,第一写入模块501,在基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表时,用于:
基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数;
获取所述多条待处理数据的第一排列顺序;
根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
进一步的,本申请实施例提供的基于单向链表的数据处理装置中,第一获取模块502,在获取所述单向链表对应的目标线程时,包括:
针对每个处理周期,获取该处理周期内对应于所述单向链表的目标线程;其中,不同的处理周期下,所述单向链表对应的所述目标线程不同。
进一步的,本申请实施例提供的基于单向链表的数据处理装置中,读取模块503,在通过所述目标线程从所述单向链表中读取目标数据时,包括:
获取所述单向链表中存储的所述待处理数据的第二排列顺序;
按照所述第二排列顺序,通过所述目标线程从所述单向链表中读取所述目标数据。
进一步的,本申请实施例提供的基于单向链表的数据处理装置中,该数据处理装置500还包括:
删除模块,用于在将所述目标数据对应的处理结果通过所述目标线程写入数据库之后,删除所述目标线程。
进一步的,本申请实施例提供的基于单向链表的数据处理装置中,该数据处理装置500还包括:
第二获取模块,用于获取内存中存储的线程配置文件;
生成模块,用于基于所述线程配置文件,生成所述目标线程。
如图6所示,为本申请实施例提供的一种电子设备600,包括:处理器601、存储器602和总线,所述存储器602存储有所述处理器601可执行的机器可读指令,当电子设备运行时,所述处理器601与所述存储器602之间通过总线通信,所述处理器601执行所述机器可读指令,以执行如上述基于单向链表的数据处理方法的步骤。
具体地,上述存储器602和处理器601能够为通用的存储器和处理器,这里不做具体限定,当处理器601运行存储器602存储的计算机程序时,能够执行上述基于单向链表的数据处理方法。
对应于上述基于单向链表的数据处理方法,本申请实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器运行时执行上述基于单向链表的数据处理方法的步骤。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个处理器可执行的非易失的计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
最后应说明的是:以上所述实施例,仅为本申请的具体实施方式,用以说明本申请的技术方案,而非对其限制,本申请的保护范围并不局限于此,尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本申请实施例技术方案的精神和范围,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。
Claims (10)
1.一种基于单向链表的数据处理方法,其特征在于,所述数据处理方法包括:
在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;
获取所述单向链表对应的目标线程,通过所述目标线程从所述单向链表中读取目标数据;
对所述目标数据进行处理,并将所述目标数据对应的处理结果通过所述目标线程写入数据库。
2.根据权利要求1所述的基于单向链表的数据处理方法,其特征在于,所述基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表,包括:
基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数;
获取所述多条待处理数据的第一排列顺序;
根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
3.根据权利要求1所述的基于单向链表的数据处理方法,其特征在于,所述获取所述单向链表对应的目标线程,包括:
针对每个处理周期,获取该处理周期内对应于所述单向链表的目标线程;其中,不同的处理周期下,所述单向链表对应的所述目标线程不同。
4.根据权利要求1所述的基于单向链表的数据处理方法,其特征在于,所述通过所述目标线程从所述单向链表中读取目标数据,包括:
获取所述单向链表中存储的所述待处理数据的第二排列顺序;
按照所述第二排列顺序,通过所述目标线程从所述单向链表中读取所述目标数据。
5.根据权利要求1所述的基于单向链表的数据处理方法,其特征在于,在将所述目标数据对应的处理结果通过所述目标线程写入数据库之后,还包括:
删除所述目标线程。
6.根据权利要求1所述的基于单向链表的数据处理方法,其特征在于,通过以下方法生成所述目标线程:
获取内存中存储的线程配置文件;
基于所述线程配置文件,生成所述目标线程。
7.一种基于单向链表的数据处理装置,其特征在于,所述数据处理装置包括:
第一写入模块,用于在接收到数据源端发送的多条待处理数据后,基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表;
第一获取模块,用于获取所述单向链表对应的目标线程;
读取模块,用于通过所述目标线程从所述单向链表中读取目标数据;
处理模块,用于对所述目标数据进行处理;
第二写入模块,用于将所述目标数据对应的处理结果通过所述目标线程写入数据库。
8.根据权利要求7所述的基于单向链表的数据处理装置,其特征在于,所述第一写入模块,在基于预设的单向链表中对应的存储空间,将所述待处理数据写入所述单向链表时,用于:
基于所述单向链表中对应的存储空间,确定所述单向链表中待写入数据的条数;
获取所述多条待处理数据的第一排列顺序;
根据所述待写入数据的条数和所述第一排列顺序,确定目标待处理数据,并将所述目标待处理数据写入所述单向链表。
9.一种电子设备,其特征在于,包括:处理器、存储器和总线,所述存储器存储有所述处理器可执行的机器可读指令,当电子设备运行时,所述处理器与所述存储器之间通过总线通信,所述处理器执行所述机器可读指令,以执行如权利要求1至6任一项所述的基于单向链表的数据处理方法的步骤。
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质上存储有计算机程序,该计算机程序被处理器运行时执行如权利要求1至6任一项所述的基于单向链表的数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229026.2A CN110888865A (zh) | 2019-12-04 | 2019-12-04 | 一种基于单向链表的数据处理方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911229026.2A CN110888865A (zh) | 2019-12-04 | 2019-12-04 | 一种基于单向链表的数据处理方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110888865A true CN110888865A (zh) | 2020-03-17 |
Family
ID=69750405
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911229026.2A Pending CN110888865A (zh) | 2019-12-04 | 2019-12-04 | 一种基于单向链表的数据处理方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110888865A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113539368A (zh) * | 2021-08-30 | 2021-10-22 | 长春理工大学 | 荧光图像信号数据存储与颜色分类方法 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279766A (zh) * | 2011-08-30 | 2011-12-14 | 华为技术有限公司 | 并行模拟多个处理器的方法及系统、调度器 |
CN102331961A (zh) * | 2011-09-13 | 2012-01-25 | 华为技术有限公司 | 并行模拟多个处理器的方法及系统、调度器 |
CN106227782A (zh) * | 2016-07-15 | 2016-12-14 | 广东亿迅科技有限公司 | 一种基于多数据源插入到数据库的方法 |
CN107229564A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种压力模拟方法及装置 |
US20180121366A1 (en) * | 2016-11-01 | 2018-05-03 | Alibaba Group Holding Limited | Read/write request processing method and apparatus |
CN109710578A (zh) * | 2018-11-13 | 2019-05-03 | 北京奇艺世纪科技有限公司 | 一种日志记录方法及系统 |
CN110333915A (zh) * | 2019-05-31 | 2019-10-15 | 深圳壹账通智能科技有限公司 | 定时执行任务的方法、装置、计算机设备及存储介质 |
CN110472102A (zh) * | 2019-08-22 | 2019-11-19 | 北京锐安科技有限公司 | 一种数据处理方法、装置、设备和存储介质 |
-
2019
- 2019-12-04 CN CN201911229026.2A patent/CN110888865A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102279766A (zh) * | 2011-08-30 | 2011-12-14 | 华为技术有限公司 | 并行模拟多个处理器的方法及系统、调度器 |
CN102331961A (zh) * | 2011-09-13 | 2012-01-25 | 华为技术有限公司 | 并行模拟多个处理器的方法及系统、调度器 |
CN107229564A (zh) * | 2016-03-25 | 2017-10-03 | 阿里巴巴集团控股有限公司 | 一种压力模拟方法及装置 |
CN106227782A (zh) * | 2016-07-15 | 2016-12-14 | 广东亿迅科技有限公司 | 一种基于多数据源插入到数据库的方法 |
US20180121366A1 (en) * | 2016-11-01 | 2018-05-03 | Alibaba Group Holding Limited | Read/write request processing method and apparatus |
CN109710578A (zh) * | 2018-11-13 | 2019-05-03 | 北京奇艺世纪科技有限公司 | 一种日志记录方法及系统 |
CN110333915A (zh) * | 2019-05-31 | 2019-10-15 | 深圳壹账通智能科技有限公司 | 定时执行任务的方法、装置、计算机设备及存储介质 |
CN110472102A (zh) * | 2019-08-22 | 2019-11-19 | 北京锐安科技有限公司 | 一种数据处理方法、装置、设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113539368A (zh) * | 2021-08-30 | 2021-10-22 | 长春理工大学 | 荧光图像信号数据存储与颜色分类方法 |
CN113539368B (zh) * | 2021-08-30 | 2023-02-03 | 长春理工大学 | 荧光图像信号数据存储与颜色分类方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111444196B (zh) | 块链式账本中全局状态的哈希的生成方法、装置及设备 | |
CN111723079A (zh) | 数据迁移方法、装置、计算机设备及存储介质 | |
CN110781231A (zh) | 基于数据库的批量导入方法、装置、设备及存储介质 | |
CN108073687B (zh) | 随机游走、基于集群的随机游走方法、装置以及设备 | |
CN108228443B (zh) | 一种web应用的测试方法及装置 | |
CN111444192A (zh) | 块链式账本中全局状态的哈希的生成方法、装置及设备 | |
CN111241177A (zh) | 数据采集方法、系统及网络设备 | |
CN114265702B (zh) | 一种iSCSI服务负载均衡方法、装置、设备及介质 | |
CN112199935A (zh) | 数据的比对方法、装置、电子设备及计算机可读存储介质 | |
CN109359109B (zh) | 一种基于分布式流计算的数据处理方法及系统 | |
CN110888865A (zh) | 一种基于单向链表的数据处理方法及装置 | |
CN111309548A (zh) | 一种超时监控方法、装置及计算机可读存储介质 | |
CN110442439B (zh) | 任务进程处理方法、装置和计算机设备 | |
CN110928941A (zh) | 一种数据分片抽取方法及装置 | |
CN115629848A (zh) | 业务处理方法及其装置、电子设备及存储介质 | |
CN111309463B (zh) | 一种任务执行时间的确定方法、确定装置及可读存储介质 | |
CN114691496A (zh) | 单元测试方法、装置、计算设备及介质 | |
CN111367750B (zh) | 一种异常处理方法、装置及其设备 | |
CN112597162A (zh) | 数据集采集方法、系统、设备及存储介质 | |
CN112732367A (zh) | 事件流程的处理方法、装置、设备及可读存储介质 | |
CN110688395A (zh) | 一种信息查询方法、装置、信息统计方法及相关设备 | |
CN111382128A (zh) | 一种文件的拆分方法、装置及计算机系统 | |
CN111124854A (zh) | 一种冒烟测试用例分配方法、系统、终端及存储介质 | |
US10057323B2 (en) | Distributed work processing across a network where each machine is operative as both an application server and a database server | |
CN111984512B (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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200317 |