python回归模型调优要运行多久_一次程序优化经历,运行8小时到3小时到50分钟...

本文讲述了作者在处理大文件时,通过一系列优化手段,将原本需要8小时的程序运行时间降低到50分钟的经历。主要优化包括:并发处理、IO优化、算法改进和语言选择,最终使用Go语言实现了高效运行。
摘要由CSDN通过智能技术生成

上周我遇到一个需要处理大文件的场景,需要遍历大文件,并且对数据进行一定的处理。由于这批数据对时效性要求较高,所以当时我编写的程序是希望运行地越快越好,所以我在编程的过程中对程序进行一次一次的优化,最终从开始时需要运行8小时到现在只需运行50分钟,算是达到了需求。

当然,你可能会说一开始的程序写得太烂,所以导致运行太紧,无所谓啦,这并不是重点。实际上,很多人第一次写程序都很难按预想那样写出简单高效的代码片段,只是有的场景对性能要求并不高,所以有的人看着自己的程序能运行后就不再进行优化了。其实,绝大多数程序都是有优化空间的,并且还有很大的优化空间,这个空间指的是时间和空间。

废话不多说,我把这次优化的过程和思路总结为8个点,分享出来,希望能对大家有所帮助。

1.需求

大数据时代,处理大量数据成为了不少程序员的家常便饭。那么多大的数据可以称为大数据呢?对于数据量,很难用一个确定的量去描述其界限,我理解大数据不仅仅是数据量大,还应该具有数据复杂的特性,比如维度高、字段多。

我平时处理的数据并不是大到磁盘都存不下那种,最多就是亿的量级。此次处理的数据是一个文本的大文件,数据量不到一亿,占用磁盘空间几百GB,它是行列结构,即每一行数据用tab键分割,有不到100个字段,其中有部分字段是json,且这个json异常复杂,一条大的数据可能会占用好几MB的空间。

我要做的事情很简单,最费劲的就是在每一条数据的大json串中增加一个字段,这个字段经过了一些复杂的计算。简单来说就是写程序遍历一遍这个文件,

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值