csv大文件处理方案-数据量超表格最大容纳行数解决方案
csv大文件处理方案-数据量超表格最大容纳行数解决方案
结论先行
查看
Windows系统查看:下载Emeditor查看--推荐
Mac系统查看:Vscode查看
汇总计算
优雅方式
- 表格的Power pivot
- Tableau
- 编程计算
不优雅但可行方法
切分为多个小文件
-
linux使用split命令切分
-
使用工具切分--推荐
-
编程切分--适合懂编程小伙伴
情况
1.一个表格sheet最大容纳数据量104万行,数量太大不宜用表格装载数据,使用csv格式装载数据(表格设计不是用来存储数据的,存储数据用数据库)
2.csv为逗号分割符文件(处理数据一种很好的格式),本质为文本文件,数据量不大可用表格直接打开,数据量大建议用文本编辑器EmEditor(只有Windows系统有此软件)打开,此编辑器会对csv文件特殊排版处理
3.如果表格打开csv文件是乱码,请用文本编辑器打开转换成ANSI编码(也可以不转换编码,用表格里的数据->获取外部数据->自文本导入)
4.数据量104万以上的数据量表格计算方法
a.使用office 2013以上版本的Power pivot进行计算,对表格使用水平要求很高,能否计算出来还和计算机内存有关
b.使用tableau等BI工具计算
c.先细分好几个小表格计算,再合并汇总数据,此法及其麻烦,非常不建议此方法(不符合批量操作原则)
产生这种需求原因:
1.大部分是对表格不熟悉,不知道104万行以上对表格意味着什么
2.有一部分需要这数据,但不知道数据有多少,一查发现超104万行
3.一部分对数据不信任与不放心
4.极个别需求确实逃不开104万行数据的(主要是要明细数据)
正确解决方案:
1.对于原因1与原因2,弄清楚需求方要做什么,做这件事的流程是什么,主要关键变量是什么。
经典案例:某同事,要了半年某省结算记录(2000万左右数据量),原因是他们领导一句话要分析某某数据。正确做法就给相对应类型数据的统计即可。
2.没有信任成本会比较高昂,难以把控做事的粒度。
替代方案:
给统计数据+SQL截图+抽样明细
经典案例:一同事,曾经经常想要1000多万明细,他对数据不放心,想存底留一份数据以后备用。问了几个问题,数据以后你看吗,你用什么打开这数据,你怎么计算这数据,你主要看数据的什么指标。发现数据给他他什么都做不了,然后给他了解决方案,他要的数据主要就是看月份、金额,以后只要统计即可。
3.有极个别需求确实逃不开明细的
有极个别需求必须要超过104万行以上数据,也归属在不合理需求范畴,因为是绝大部分需求方处理不了这数据。
弄清楚为什么必须得是明细,我们能在明细级别上,根据对应要求在系统里帮忙实现吗
现实状况
1.解释这件事有时费时费力,个人时间、精力往往不够,数据先直接给需求方csv格式
2.不是对方业务线,不了解需求方业务,想帮忙处理也发现较难(我有数据处理技术无业务技术逻辑,对方有业务技术逻辑但没处理这数据的技术)
总结
百万,千万级别数据,人看不过来,表格难以处理。正确做法是知道自己要做什么,是求和还是计数。清楚了自己要做什么,数据才有意义。需求合不合理只是相对的,如果对方完全有技术能力处理大型数据,需求是合理的。实际大部分需求方都没这种能力,大部分是要把表格拆成好几个表,再计算,计算完再合并,这是很不提倡的做法,但对于他们可能确是唯一的处理方法。
Changelog
210122新增结论先行
191213新增原因
180807创建
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步