shenyi
管理员
管理员
  • UID1
  • 粉丝45
  • 关注0
  • 发帖数856
阅读:1181回复:1

go主题课:关于1brc的技术要点讲解

楼主#
更多 发布于:2024-03-01 02:17
    网上有个关于1brc的挑战,读取10亿数据并进行分析和统计。当然该挑战已经结束,网上也有很多放出来的完整代码。本项目有点意思,所以做个主题课程,不打算全部写完。主要就里面的技术点做个讲解(大约3-5课时左右)。本课程适合新手



 第1讲:开张课、读取文本最基本的方式 试听
介绍下什么是1brc。并写出最基本的读取文本的代码,大家跟着写一写

第2讲:使用协程和channel的方式加快处理速度
沿着上节课,我们改进下代码,使用一些模式来加快读取和处理效率

第3讲:使用文件分块的方式加快文件读取速度
今天我们在上节课的基础上加入分块读取

第4讲:使用1亿条数据 测试 文本读取3种方式的性能 试听
前面课时我们使用几万条数据测试,不过瘾。现在我们找1亿条数据进行读取测试,10秒以内搞定

第5讲:使用内存映射的方式读取文件
今天进入优化的第二阶段,我们还能再次压榨下性能



第6讲:使用mmap读取文件后进行行数据处理
在上节课的基础上加入行数据分块处理代码。






本课程不定期更新
会讲故事的程序员
shenyi
管理员
管理员
  • UID1
  • 粉丝45
  • 关注0
  • 发帖数856
沙发#
发布于:2024-04-03 02:20
更至第6讲
会讲故事的程序员
游客

返回顶部