为了账号安全,请及时绑定邮箱和手机立即绑定

使用goroutines结合缓冲读取来优化读取大文件

使用goroutines结合缓冲读取来优化读取大文件

Go
Qyouu 2021-12-07 18:43:51
假设需要在典型的ETL 中处理大型 csv 文件(大约 300 字节长的行以 /n 结尾):提取、转换、加载方式(每行读取、拆分和组合插入数据库中的 JSON) . 生成一个(或多个)协同处理文件的 goroutine 是否有益?需要做什么来创建bufio.Scanner从文件的随机位置开始读取的文件?
查看完整描述

1 回答

?
慕慕森

TA贡献1856条经验 获得超17个赞

生成一个(或多个 goroutine)是否有益?

是的,一点没错。通常,您可以在每个 E、T、L 上有 3 个并发 goroutine,并通过通道对它们进行协调。

如需更多见解,请查看 Rob Pike 本人的精彩演讲:

Concurrency is not Parallelismhttps://goo.gl/cp8xgF Talk Slides http://talks.golang.org/2012/waza.slide#1


查看完整回答
反对 回复 2021-12-07
  • 1 回答
  • 0 关注
  • 149 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信