尘土与星辰 -1992|第141章|坏道与刻度|中文
屏幕右下角的时间跳到03:14。机箱风扇的嗡鸣声在寂静的堂屋里被无限放大,像一台缺机油的拖拉机在陡坡上挣扎。林尘盯着终端里滚动的红色报错:`MemoryError`。十二万八千条数据,全量读入内存,这台二手笔记本的512M内存彻底撑不住。 他停下敲击键盘的手。
第141章 坏道与刻度
屏幕右下角的时间跳到03:14。机箱风扇的嗡鸣声在寂静的堂屋里被无限放大,像一台缺机油的拖拉机在陡坡上挣扎。林尘盯着终端里滚动的红色报错:MemoryError。十二万八千条数据,全量读入内存,这台二手笔记本的512M内存彻底撑不住。
他停下敲击键盘的手。左膝的肿胀已经蔓延到小腿肚,皮肤绷得发亮,指尖按下去,凹陷半天回弹不起来。他掀开裤腿,用毛巾裹着昨晚冻好的冰袋敷上去。刺骨的凉意顺着神经往上爬,勉强压住了骨头缝里的钝痛。
不能硬扛。内存溢出,说明数据读取策略错了。他删掉刚才的循环逻辑,重新翻开那本翻卷了边的《Python核心编程》。流式处理。他改用csv模块的迭代器,按五千条一个批次读取。读一批,清洗一批,用字典做临时聚合,写入结果后清空内存。代码量增加了三倍,但内存占用能压到安全线以内。他敲下def chunk_aggregate(filepath, chunk_size=5000):。手指因为长时间保持悬空姿势有些僵硬,腕关节发出轻微的咔哒声。他活动了一下手腕,继续。
窗外的天色由浓黑转为灰蓝。村尾传来第一声鸡鸣。脚本跑通了第一遍沙盒测试。他灌下半杯凉白开,胃里泛起一阵酸水。35.3元变成828.3元,只是账本上的数字。真正的考验是交付。老赵要的不是“能跑”,是“稳定”。他加上日志记录模块,把每次批次的处理条数、耗时、异常值数量都写进report.log。万一出错,能定位到具体行。这是给自己留退路,也是给甲方看态度。
早上七点四十。中巴车摇晃着驶入县城。林尘背着电脑包,左腿不敢吃劲,重心全压在右腿和临时找的硬木棍上。老街的茶馆还没开门,老赵已经坐在门口的小马扎上抽烟。看见他,老赵掐灭烟头,起身让开堂屋的门。“进来。老板九点来拿报表。”
林尘把U盘插上老赵的台式机。运行脚本。进度条缓慢推进。老赵站在一旁,没说话,只是看着屏幕。十分钟后,终端跳出[INFO] Report generated successfully. Total rows: 128400.。老赵点开生成的Excel。透视表、分类汇总、格式对齐,分毫不差。他翻了几页,又拉到底部,核对了几家门店的周环比数据。
“比财务室那三个人干得快。”老赵转过头,把烟灰弹进搪瓷缸里,“老板看了,没挑毛病。包月的活,定下来了。一千二一个月,每周一上午交。预支五百,剩下的月底结。干不干?”
一千二。在2010年的县城,这相当于普通工人一个月的工资。林尘没有立刻点头。他看着屏幕上的日志文件。“源数据如果有合并单元格或者隐藏列,脚本会跳过并记录。这部分需要你们前端录入的人规范格式。否则清洗时间会翻倍,报表也会失真。”
老赵笑了,眼角的皱纹挤在一起。“你小子,干活前先立规矩。行,我跟老板说。录入那边我去盯。钱你拿着。”他从抽屉里数出五张红票子,推过来。
林尘接过。指尖触到纸币的粗糙边缘。他没有推辞,把钱装进内袋。加上之前的828.3,余额突破一千五。胃里那种长期的紧缩感彻底松开了。但他知道,这只是开始。一千二买的是他的时间和技术,不是自由。他必须把这套流程固化下来,否则下个月数据量再涨,他的旧电脑和旧膝盖都撑不住。
走出茶馆,阳光刺眼。林尘没有直接回村。他拐进县医院旁边的药店,买了两盒双氯芬酸钠缓释片和一卷弹性绷带。又去新华书店,挑了一本《Python数据分析实战》和一本《Excel高级函数与VBA》。结账时,收银员扫了一眼他磨破边的电脑包,没多问。
回村的路比来时更慢。左膝的麻木感在药效作用下转为迟钝的沉重。他坐在中巴车最后一排,膝盖上摊着新书。书页翻动,油墨味混着车厢里的汽油味。他看着窗外倒退的田野,脑子里盘算着下一步。网吧的机器跑不动大数据,家里的堂屋太吵,小满的咳嗽声和母亲的脚步声会打断思路。他需要一张安静的桌子,一台能跑复杂计算的二手台式机。县城边缘的城中村,有隔断单间,月租一百五。押一付三,六百。加上买药和书,手里还剩九百。够撑两个月。
他拿出账本,划掉旧条目,写下:8月10日。支出:药38,书45,车费6。收入:500(预付)。余额:1539.3。计划:租单间,二手台式机。
笔尖停顿。他想起小满的画册,想起母亲灶台上的柴火,想起父亲沉默的烟头。钱能买来药,能买来时间,但买不来安稳。技术这条路,一旦踏上去,就没有回头路。他必须跑得比时间快,比病痛快,比老赵的耐心快。
傍晚回到堂屋。王桂英正在给小满喂药。看见他手里的药盒,手顿了一下。“又去县里了?腿怎么样?”
“没事。买了药。”林尘把电脑包放下,插上电源。风扇突然发出一声尖锐的摩擦音,接着是“咔哒、咔哒”的规律异响。硬盘读取灯狂闪,屏幕画面卡死。他心头一紧,长按电源键强制关机。再开机,BIOS自检通过,但进入系统时再次卡住。硬盘坏道。老化的磁头在连续读写大量数据后彻底罢工。
他坐在黑暗中,听着硬盘垂死的咔哒声。十二万条数据的源文件、V3.0的源码、这半个月的调试记录,全在这块盘里。没有备份。
手机在口袋里震动。是一条陌生号码发来的短信:“林尘同学,省理工计算机学院暑期实训营录取通知已下发。请于8月15日前缴纳实训费800元,逾期视为放弃。附:实训优秀者可获一线大厂内推资格。”
他盯着屏幕。硬盘的咔哒声还在继续。800元。实训营。大厂内推。
他慢慢站起身,走到水缸边,舀起一瓢冷水,浇在发烫的机箱上。水珠顺着金属外壳滑落,滴在地上。
路还长。但台阶,突然断了半截。
他擦干手,走回桌前。从抽屉里翻出一把十字螺丝刀。拧开侧板。灰尘扑面而来。
得把数据救出来。今晚就得动手。
More from WayDigital
Continue through other published articles from the same publisher.
Comments
0 public responses
All visitors can read comments. Sign in to join the discussion.
Log in to comment