System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 数据采集方法、装置、设备及计算机可读存储介质制造方法及图纸_技高网

数据采集方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:41313507 阅读:4 留言:0更新日期:2024-05-13 14:55
本申请公开了一种数据采集方法、装置、设备及计算机可读存储介质,方法包括:利用go语言创建多个协程;利用协程接收数据请求,对数据请求进行解析;采用零拷贝方式将解析得到的数据存储到存储介质中;获取解析得到的数据,将解析得到的数据写入目标存储系统中。本申请公开的技术方案,go语言的协程机制能够以轻量级的执行单元进行高效的并发操作,采用零拷贝技术将解析出的数据存储到存储介质中可降低响应时间,提高网络吞吐量。也即,本申请通过go语言和零拷贝技术实现低服务器资源消耗、高并发、低延迟、低数据丢失率和高网络吞吐量的数据采集,从而提高数据采集性能。

【技术实现步骤摘要】

本申请涉及物联网,尤其涉及一种数据采集方法、装置、设备及计算机可读存储介质


技术介绍

1、随着物联网技术的发展,物联网设备的数量急剧增加,由此引发了大规模数据的产生和传输。

2、目前的数据采集方法一般基于java进行实现,这种数据采集方法在面对海量设备的并发连接和数据上传时易存在并发数量低、服务器资源消耗大、响应时间延迟、数据丢失等问题。

3、综上所述,如何提高数据采集性能,是目前本领域技术人员亟待解决的技术问题。


技术实现思路

1、有鉴于此,本申请的目的是提供一种数据采集方法、装置、设备及计算机可读存储介质,用于提高数据采集性能。

2、为了实现上述目的,本申请提供如下技术方案:

3、一种数据采集方法,包括:

4、利用go语言创建多个协程;

5、利用所述协程接收数据请求,对所述数据请求进行解析;

6、采用零拷贝方式将解析得到的数据存储到存储介质中;

7、获取解析得到的所述数据,将解析得到的所述数据写入目标存储系统中。

8、可选地,在将解析得到的所述数据写入目标存储系统中时,还包括:

9、若所述目标存储系统出现故障,则根据解析得到的所述数据及已写入所述目标存储系统中的数据确定未写入数据;

10、从所述未写入数据开始拉取数据。

11、可选地,将解析得到的所述数据写入目标存储系统中,包括:

12、将解析得到的所述数据写入数据库、文件系统、消息中间件中的至少一种中。

13、可选地,将解析得到的所述数据写入数据库、文件系统、消息中间件中的至少一种中,包括:

14、将解析得到的所述数据写入mysql、elasticsearch、kafka中的至少一种中。

15、可选地,利用所述协程接收数据请求,包括:

16、利用所述协程采用mqtt协议接收各物联网设备的数据请求。

17、可选地,采用零拷贝方式将解析得到的数据存储到存储介质中,包括:

18、采用所述零拷贝方式将解析得到的所述数据存储到内存和/或磁盘中。

19、可选地,对所述数据请求进行解析,包括:

20、将所述数据请求解析成json格式的数据。

21、一种数据采集装置,包括:

22、source模块,用于利用采用go语言创建的协程接收数据请求,对所述数据请求进行解析,将解析得到的数据发送至cache模块;

23、所述cache模块,用于采用零拷贝方式将解析得到的所述数据存储到存储介质中;

24、sink模块,用于从所述cache模块中获取解析得到的所述数据,将获取到的所述数据写入目标存储系统中。

25、一种数据采集设备,包括:

26、存储器,用于存储计算机程序;

27、处理器,用于执行所述计算机程序时实现如上述任一项所述的数据采集方法的步骤。

28、一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一项所述的数据采集方法的步骤。

29、本申请提供了一种数据采集方法、装置、设备及计算机可读存储介质,其中,该方法包括:利用go语言创建多个协程;利用协程接收数据请求,对数据请求进行解析;采用零拷贝方式将解析得到的数据存储到存储介质中;获取解析得到的数据,将解析得到的数据写入目标存储系统中。

30、本申请公开的上述技术方案,利用go语言创建多个协程,利用所创建的协程并发地进行数据请求的接收,其中,go语言的协程机制能够以轻量级的执行单元进行高效的并发操作,从而实现在低服务器资源消耗的情况下进行高并发的数据采集,降低响应延迟和数据丢失率。并且,通过采用零拷贝技术将解析得到的数据存储到存储介质中可以减少或避免数据在不同内存空间之间的拷贝次数,以降低单次请求的响应时间,从而降低响应延迟,提高网络吞吐量,以提高系统性能和效率。也即,本申请通过go语言和零拷贝方式实现低服务器资源消耗、高并发、低延迟、低数据丢失率和高网络吞吐量的数据采集,从而提高数据采集性能。

31、本申请附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实践了解到。

本文档来自技高网...

【技术保护点】

1.一种数据采集方法,其特征在于,包括:

2.根据权利要求1所述的数据采集方法,其特征在于,在将解析得到的所述数据写入目标存储系统中时,还包括:

3.根据权利要求1所述的数据采集方法,其特征在于,将解析得到的所述数据写入目标存储系统中,包括:

4.根据权利要求3所述的数据采集方法,其特征在于,将解析得到的所述数据写入数据库、文件系统、消息中间件中的至少一种中,包括:

5.根据权利要求1所述的数据采集方法,其特征在于,利用所述协程接收数据请求,包括:

6.根据权利要求1所述的数据采集方法,其特征在于,采用零拷贝方式将解析得到的数据存储到存储介质中,包括:

7.根据权利要求1所述的数据采集方法,其特征在于,对所述数据请求进行解析,包括:

8.一种数据采集装置,其特征在于,包括:

9.一种数据采集设备,其特征在于,包括:

10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的数据采集方法的步骤。

...

【技术特征摘要】

1.一种数据采集方法,其特征在于,包括:

2.根据权利要求1所述的数据采集方法,其特征在于,在将解析得到的所述数据写入目标存储系统中时,还包括:

3.根据权利要求1所述的数据采集方法,其特征在于,将解析得到的所述数据写入目标存储系统中,包括:

4.根据权利要求3所述的数据采集方法,其特征在于,将解析得到的所述数据写入数据库、文件系统、消息中间件中的至少一种中,包括:

5.根据权利要求1所述的数据采集方法,其特征在于,利用所述协程接收数据请求,包括:...

【专利技术属性】
技术研发人员:赵伟温金雄
申请(专利权)人:协鑫电港云科技海南有限公司
类型:发明
国别省市:

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

1