Winner4good
V2EX  ›  数据库

600 万行 tsv 打开方式

  •  
  •   Winner4good · Apr 20, 2025 · 5056 views
    This topic created in 568 days ago, the information mentioned may be changed or developed.
    600 万行的 tsv 用 excel 的 powerquery 打开就卡死
    之前最多打开过 300 万行;
    除了给电脑加内存条还有别的办法吗。。
    需要把 raw data 直接给到业务部门,他们自己要各种维度的分析
    29 replies  •  2025-04-22 13:43:24 +08:00
    tsvico
    tsvico
    Apr 20, 2025
    1
    klogg
    levelworm
    levelworm
    Apr 20, 2025 via Android
    2
    直接进数据库?
    512357301
    512357301
    Apr 20, 2025 via Android
    3
    主要得看业务部门会啥,他们要是会 SQL ,那可以转换成 parquet 或者直接导入数据库,把 parquet 或者数据库的地址给他们,让他们自己写 SQL 分析(duckdb 可以读取到 parquet)。
    要是只会 Excel ,那有点麻烦,建议把数据拆分一下,按日期拆分成每个 20 万行的 Excel 或者 csv 。
    还可以在导入数据库之后,搭建一个 metabase ,让他们用可视化的方式分析,meta 上手难度高于 Excel ,跟 Excel 透视表类似,但低于 SQL 。
    不过有时候吧,这帮业务部门人员 Excel 能力不太敢恭维,只是很基础的 Excel 操作。。。
    vopsoft
    vopsoft
    Apr 20, 2025 via Android❤️1
    4
    试试 emeditor 这个还不行别的也不用试了 除非换硬件
    Kite6
    Kite6
    Apr 20, 2025 via Android
    5
    放到 hdfs 集群,走 spark 或 hive 分析
    ETiV
    ETiV
    Apr 20, 2025 via iPhone
    6
    直接给业务部门啊 他们打不开关你什么事
    winglight2016
    winglight2016
    Apr 20, 2025
    7
    业务人员的确超喜欢用 Excel 自己分析数据,我前家公司的业务就这么干的,不过,后来我劝说他们改用 superset 来处理几十万以上的数据。而且,还不需要导出。

    另外,正经的做法是单独建立 BI 数据仓库,避免业务库受影响。
    Lenic
    Lenic
    Apr 20, 2025 via iPhone
    8
    Emeditot ,应该只有这个兜底了
    murmurkerman
    murmurkerman
    Apr 20, 2025 via iPhone
    9
    sqlite ,轻量,单文件。excel 能做的 sql 都能做
    106npo
    106npo
    Apr 20, 2025 via Android
    10
    如果只会 office 那就给 access 建数据源
    TimePPT
    TimePPT
    Apr 20, 2025
    11
    sqlite or duckdb? 一般 raw data 大于 10w 行业务都不会一行行看,聚合计算啥的,不如 sql 方便啊。
    qweruiop
    qweruiop
    Apr 20, 2025
    12
    emeditor 小 case ,我经常用。
    dayeye2006199
    dayeye2006199
    Apr 20, 2025
    13
    Dask
    snw
    snw
    Apr 20, 2025 via Android❤️1
    14
    这个数据量建议做成 sql 服务,反正 power query 也能读 sql 。标准解决方案应该是搭 BI ,但几百万行数据量又太少了,而且业务部门不一定肯出钱。

    如果一定要用 tsv/csv ,先检查 Excel 一定用 64 位,内存至少 16G (多多益善)。
    Power Query 默认预读 1000 行,如果只是读取 csv 这类顺序文件就算读全表也只是慢一些,不应该卡死,除非做了其他操作,或者内存瓶颈导致缓存到了硬盘。

    如果业务部门还不满意,让他们提方案,比如聚合掉一些不需要的字段,很多时候业务并不需要看每一笔 transaction 。
    FgHh07ObvBiST5po
    FgHh07ObvBiST5po
    Apr 20, 2025
    15
    AI 可以拆分处理
    aminobody
    aminobody
    Apr 20, 2025
    16
    @tsvico #1 真的好用
    qiuyue0
    qiuyue0
    Apr 20, 2025
    17
    emeditor 试试吧
    laminux29
    laminux29
    Apr 20, 2025
    18
    600w 行的规模,早就应该上数据库了,Excel 不是用来对付这种级别规模的。

    专业的需求,请上专业的方案。
    unnatural
    unnatural
    Apr 20, 2025
    19
    按照跟业务部分打交道的经验,就拆分成多个 csv 给他们,其中一个文件小一些,几万行左右。他们会根据这个文件再提具体需求的,然后再用 SQL 或 pandas 处理好。
    levelworm
    levelworm
    Apr 20, 2025 via Android
    20
    @snw #14
    这个是比较好的,就是成本高一些。要不看看有没有免费工具可以读取 sqllite 的。
    xgdgsc
    xgdgsc
    Apr 20, 2025
    21
    https://github.com/JuliaComputing/TableView.jl 用 CSV.jl mmap 方式打开文件用这个浏览?如果除了浏览还要分析就看分析需要的内存了
    sdshiyan2005
    sdshiyan2005
    Apr 20, 2025 via Android
    22
    无脑 duckdb ,或者 polars 。数据不算大
    70k
    70k
    Apr 20, 2025
    23
    先拿一小部分给 ai 看看分析下结构 然后让 ai 给你写脚本 你直接运行就可以看到想要的结果了
    xmdbb
    xmdbb
    Apr 21, 2025
    24
    早期:access 开权限,业务经理自己链表操作查看数据。
    中期:导出 excel ,他们自己发挥。
    现在:业务给出需求,系统出对应报表。
    wittyfans
    wittyfans
    Apr 21, 2025 via iPad
    25
    列式存储
    ltux
    ltux
    Apr 21, 2025
    26
    加内存也没用,excel 有明确的行数上限 1048576 ,只能换工具。
    gzldc
    gzldc
    Apr 21, 2025
    27
    网页打开 分页
    xingheng
    xingheng
    Apr 22, 2025
    28
    要啥自行车,直接 less ,手动狗头
    dlllcs
    dlllcs
    Apr 22, 2025
    29
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   3635 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 104ms · UTC 10:05 · PVG 18:05 · LAX 02:05 · JFK 05:05
    ♥ Do have faith in what you're doing.