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

技术编号:32351359 阅读:26 留言:0更新日期:2022-02-20 02:19
本申请属于数据处理技术领域,公开了一种数据处理的方法以及装置,本申请公开的一种数据处理的方法包括,当确定有目标数据集合需要更新且当前运行的协程总数量低于预设数量阈值时,创建目标协程,并调用目标协程,以数据切片为数据更新单位,对数据库中存储的目标数据集合进行批量数据更新,以及在数据更新结束后,释放目标协程。这样,采用协程进行数据处理以及对数据库进行批量数据处理,降低了耗费的系统资源,提高了数据处理效率以及系统性能。提高了数据处理效率以及系统性能。提高了数据处理效率以及系统性能。

【技术实现步骤摘要】
一种数据处理的方法以及装置


[0001]本申请涉及数据处理
,尤其涉及一种数据处理的方法以及装置。

技术介绍

[0002]随着互联网技术的发展以及互联网应用的普及,互联网服务对数据处理的效率的要求也不断提高。
[0003]现有技术下,在数据拉取以及数据更新时,通常采用线程多任务并行处理的方式。
[0004]但是,线程调度时需要内核态和用户态的频繁切换,性能较低,还需要耗费大量的系统资源和时间,再者,对数据库的操作频率也较高,会进一步耗费大量的系统资源。
[0005]由此,在数据处理时,需要一个可以降低耗费的系统资源,提高数据处理效率以及系统性能的数据处理技术方案。

技术实现思路

[0006]本申请实施例提供一种数据处理的方法以及装置,用以在进行数据处理时,降低耗费的系统资源,提高数据处理效率以及系统性能。
[0007]一方面,提供一种数据处理的方法,包括:
[0008]确定有目标数据集合需要进行数据更新时,获取当前运行的协程总数量;
[0009]当协程总数量低于预设数量阈值时,为目标数据集合创建目标协程,并将协程总数量加1,预设数量阈值是根据资源配置信息确定的;
[0010]调用目标协程,以数据切片为数据更新单位,对数据库中存储的目标数据集合进行数据更新;
[0011]释放目标协程,并将协程总数量减1。
[0012]一方面,提供一种数据处理的装置,包括:
[0013]获取单元,用于确定有目标数据集合需要进行数据更新时,获取当前运行的协程总数量;
[0014]创建单元,用于当协程总数量低于预设数量阈值时,为目标数据集合创建目标协程,并将协程总数量加1,预设数量阈值是根据资源配置信息确定的;
[0015]更新单元,用于调用目标协程,以数据切片为数据更新单位,对数据库中存储的目标数据集合进行数据更新;
[0016]释放单元,用于释放目标协程,并将协程总数量减1。
[0017]一方面,提供一种控制设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器执行程序时执行上述任一种数据处理的方法的步骤。
[0018]一方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述任一种数据处理的方法的步骤。
[0019]一方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器
从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述任一种数据处理的各种可选实现方式中提供的方法。
[0020]本申请实施例提供的一种数据处理的方法以及装置中,每当确定有目标数据集合需要更新,且当前运行的协程总数量低于预设数量阈值时,创建目标协程,并调用目标协程,以数据切片为数据更新单位,对数据库中存储的目标数据集合进行批量数据更新,以及在本次数据更新结束后,释放目标协程。这样,采用协程进行数据处理以及对数据库进行批量数据处理,降低了耗费的系统资源,提高了数据处理效率以及系统性能。
[0021]本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
[0022]此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
[0023]图1为本申请实施方式中一种数据处理的系统架构示意图;
[0024]图2为本申请实施方式中一种数据处理的流程示意图;
[0025]图3为本申请实施方式中一种数据处理的装置的结构示意图;
[0026]图4为本申请实施方式中一种控制设备的结构示意图。
具体实施方式
[0027]为了使本申请的目的、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
[0028]首先对本申请实施例中涉及的部分用语进行说明,以便于本领域技术人员理解。
[0029]终端设备:可以是移动终端、固定终端或便携式终端,例如移动手机、站点、单元、设备、多媒体计算机、多媒体平板、互联网节点、通信器、台式计算机、膝上型计算机、笔记本计算机、上网本计算机、平板计算机、个人通信系统设备、个人导航设备、个人数字助理、音频/视频播放器、数码相机/摄像机、定位设备、电视接收器、无线电广播接收器、电子书设备、游戏设备或者其任意组合,包括这些设备的配件和外设或者其任意组合。还可预见到的是,终端设备能够支持任意类型的针对用户的接口(例如可穿戴设备)等。
[0030]服务器:可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务以及大数据和人工智能平台等基础云计算服务的云服务器。
[0031]线程:是操作系统的内核对象,线程可以作为独立运行和独立调度的基本单位,线程的作用就在于充分使用中央处理器(Central Processing Unit/Processor,CPU)并行处理任务。
[0032]协程:是在应用层模拟的线程,本申请实施例中,以Go协程为例进行说明。Go协程是一个与其他Go协程并发运行在同一地址空间的Go函数或方法。一个运行的程序由一个或
更多个Go协程组成。
[0033]协程通道:用于在多个Go协程之间发送和接收共享的数据,从而实现数据同步。在使用时,需要知道协程通道中发送和接收的数据类型。协程通道可以看作在两个Go协程之间架设的管道。一个Go协程可以向这个管道里存放数据,另外一个Go协程可以从这个管道里取出数据。
[0034]数据切片:数组切片的数据结构可以抽象为以下3个变量:指向原生数组的指针,数组切片中的元素个数以及数组切片已分配的存储空间。从底层实现的角度来看,数组切片实际上仍然使用数组来管理元素,基于数组,数组切片添加了一系列管理功能,可以随时动态扩充存放空间,并且可以被随意传递而不会导致所管理的元素被重复的复制。
[0035]互斥锁:用于保证共享数据操作的完整性,在对共享数据加锁后,共享数据只能有一个线程访问。
[0036]云存储:是在云计算概念上延伸和发展出来的一个新的概念,分布式云存储系统(以下简称存储系统)是指通过集群应用、网格技术以及分布存储文件系统等功能,将网络中大量各种不同类型的存储设备(存储设备也称之为存储节点)通过应用软件或应用接口集合起来协同工作,共同对外提供数据存储和业务访问功能的一个存储系统。
[0037]本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据处理的方法,其特征在于,包括:确定有目标数据集合需要进行数据更新时,获取当前运行的协程总数量;当所述协程总数量低于预设数量阈值时,为所述目标数据集合创建目标协程,并将所述协程总数量加1,所述预设数量阈值是根据资源配置信息确定的;调用所述目标协程,以数据切片为数据更新单位,对数据库中存储的所述目标数据集合进行数据更新;释放所述目标协程,并将所述协程总数量减1。2.如权利要求1所述的方法,其特征在于,调用所述目标协程,以数据切片为数据更新单位,对数据库中存储的所述目标数据集合进行数据更新,包括:分别获取每一拉取的目标数据对应的数据类型;按照各目标数据的数据类型,将各目标数据添加至不同的数据切片中;根据数据切片中包含的多个目标数据,对数据库进行数据更新。3.如权利要求2所述的方法,其特征在于,进一步包括:当确定当前运行的协程总数量为指定数量时,对创建的所有协程进行释放。4.如权利要求1-3任一项所述的方法,其特征在于,在调用所述目标协程,以数据切片为数据更新单位,对数据库中存储的所述目标数据集合进行数据更新之前,进一步包括:采用互斥锁,将各目标数据进行加锁保护;在目标数据集合进行数据更新之后,进一步包括:将各目标数据进行解锁处理。5.如权利要求1-3任一项所述的方法,其特征在于,进一步包括:通过所述目标协程以及相应的协程通道,接收其它协程发送的指定数据,并调用所述目标协程对目标数据和接收的指定数据进行数据统计处理;其中,所述协程...

【专利技术属性】
技术研发人员:刘华敏刘伯恒殷锡艺
申请(专利权)人:腾讯科技深圳有限公司
类型:发明
国别省市:

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

1