Skip to content

性能表现

This content is not available in your language yet.

星汉AI表格的数据就存在你自己电脑上的一个 .xh 文件里,读写都在本机、不走网络。下面的数字全部是真实实测出来的,你也可以下载同样的样例文件,自己上手感受一下。

每张表都预置了「类型 × 状态」两个分组条件的分组视图(下文会解释这是刻意构造的极限场景),字段涵盖文本 / 单选 / 多选 / 数字 / 日期 / 成员 / 附件等常见类型。

样例内容体积下载
1 千 ~ 10 万行合集一个文件里 6 张表:1千 / 5千 / 1万 / 3万 / 5万 / 10万行,共用字段82 MBperf-all.xh
100 万行大表单表 100 万行416 MB性能演示-100万行.xh

下载后在星汉AI表格里「打开文件」即可,本地读写、无需联网。

想体验仪表盘:销售看板与 200 万行项目

Section titled “想体验仪表盘:销售看板与 200 万行项目”

仪表盘章节提供两份配置好的项目:1,200 条模拟订单的销售看板(ZIP 约 50 KB),以及 200 万行仪表盘(ZIP 约 42 MB,解压后约 684 MB)。下载解压后直接打开 .shing 文件,可以体验指标、趋势、占比、Top N,以及点击图表后每页 200 条的明细分页。章节中也附有实际界面截图和适用版本说明。

想试导入速度:两个原始数据文件

Section titled “想试导入速度:两个原始数据文件”

上面两个 .xh 是已经建好的表,下载了直接打开。如果你想试的是把一个大文件导进来要多久,用下面这两个 —— 它们是原始的 Excel / CSV,在星汉里新建项目后走「导入」。两个文件都是 15 列,涵盖文本 / 数字 / 单选 / 日期等常见类型。

样例行数体积下载
Excel(xlsx)70 万行60 MB导入测试-70万行-15列.xlsx
CSV450 万行663 MB导入测试-450万行-15列.csv

综合表格界面 —— 打开一张多字段表

打开一张大表时,星汉只加载你当前屏幕看得到的那些行(大约一屏 100 行),你往下滚,它才继续加载下面的 —— 就像手机上刷朋友圈、刷长列表一样。所以行数翻 100 倍,打开时间并不会跟着翻 100 倍:1 万行约 90 毫秒,100 万行约 570 毫秒,都在大半秒内。

行数确实还是有影响的(表越大,从中取出那一屏本身要多花点时间),只是增长得很慢 —— 到 450 万行时首屏约 1 秒。真正会让你等的是超大表,见下面的导入行数上限。

(很小的表 —— 5000 行以内 —— 干脆一次全读进来,分组、排序、筛选都在你本机瞬间完成,连一次网络都不用。)

下面是实测的耗时,都是毫秒级:

数据量打开表格看到数据每往下滚动一屏
1 千行即时(本机,< 50 毫秒)即时
5 千行即时(本机,< 50 毫秒)即时
1 万行约 90 毫秒约 40 毫秒
3 万行约 100 毫秒约 15 毫秒
5 万行约 150 毫秒约 25 毫秒
10 万行约 300 毫秒约 70 毫秒
100 万行约 570 毫秒约 500 毫秒

二级分组:一个刻意构造的极限场景

Section titled “二级分组:一个刻意构造的极限场景”

分组是分两步算的:先按第一个条件分出所有一级组;你展开某个一级组时,才在这组里按第二个条件分二级组。

数据量分出所有一级组展开一个组、分二级组
5 千行以内本机即时本机即时
1 万行约 86 毫秒约 30 毫秒
3 万行约 238 毫秒约 77 毫秒
5 万行约 310 毫秒约 142 毫秒
10 万行约 950 毫秒约 280 毫秒
100 万行约 9–11 秒(第一次)展开哪组才算哪组

即便这么极限,我们也做了三层兜底,把它对日常的影响压到最小:

  • 大表默认收起分组:打开时只把一级组分出来、全部收起;你展开某个组时才现算它的二级组,不会一上来就把所有组都算一遍。
  • 算过一次就记住:同样的分组条件再看(切来切去、来回翻)直接用上次的结果,不再重算;调列宽、改排序这类操作也不会触发重新分组。
  • 小表根本不用算:5000 行以内的表分组在你本机瞬间完成。

所以就算是「100 万行 + 两层分组」这种极端组合,第一次也就等 9–11 秒(把整张表彻底聚合一遍),之后再看同样的分组是秒开的。

导入分两段,界面上你会依次看到:

  1. 上传 + 扫描 —— 文件传给本机后端,然后从头到尾读一遍。这一遍是为了搞清楚每列有多少个不同取值(这样在你选字段类型之前,就能提示「这列 3 万个取值,选了单选也会按文本导入」),顺便数出精确行数。扫完弹出预览,你可以逐列改类型。
  2. 灌行 —— 确认后开始真正写入,状态栏显示「已导入 N / 共 M 行」。

下面是上面那两个样例文件的实测:

样例上传 + 扫描灌行合计
70 万行 xlsx(60 MB)约 19 秒约 35 秒约 1 分钟
450 万行 CSV(663 MB)约 9 秒约 1 分 41 秒约 2 分钟
行数会发生什么
100 万行以内直接导入
100 万 ~ 500 万行先弹一次确认,说明「导入本身很快,但导完之后表格会明显变慢」,你确认了就继续
超过 500 万行不允许单次导入,会建议你只导需要的列和行、或拆成几张独立的表

选 CSV 文件之后,还没开始上传就会先估一把行数:明显超过上限的,当场就会告诉你,不用等整个文件传完、再整份扫一遍才知道结果。估出来的行数在导入进度里也会显示(写成「约 300 万行」)。

估的依据是文件体积除以头几千行的平均宽度,所以是个量级而不是准数 —— 万一估偏了,仍然可以选「仍然继续」,最终以服务端数出来的精确行数为准。Excel 文件是压缩包,字节数和行数没有对应关系,估不出来,只能照旧上传后再看。

导出时把表里的行从头到尾过一遍,一边读一边写进文件。行数越多耗时越长,但是成正比的 —— 行数翻一倍、时间大约也翻一倍,不会卡住也不会越导越慢。导出过程中底部状态栏会实时显示「已导出 N / 共 M 行」的进度。

数据量导出耗时生成的 Excel 体积
1 千行66 毫秒65 KB
5 千行331 毫秒296 KB
1 万行542 毫秒582 KB
3 万行1.65 秒1.7 MB
5 万行2.67 秒2.8 MB
10 万行4.92 秒5.6 MB
100 万行约 51 秒57 MB
  • 打开 / 滚动:只加载你眼前这一屏,1 万到 100 万行都是大半秒内打开、滚动跟手 —— 这是你日常面对的速度。
  • 导入:70 万行的 Excel 约 1 分钟,450 万行的 CSV 约 2 分钟;同样的数据 CSV 比 xlsx 快得多。超过 100 万行会先提醒你「慢的不是导入、是导完之后」,超过 500 万行不允许单次导入。
  • 两层分组:样例里的「两个分组条件」是刻意压出来的最费劲场景;平时按一个条件、或筛选后再分组要快得多,还有默认收起、算过就记住、小表本机算三层兜底。
  • 导出:几行花几行的时间,从 1 千行的几十毫秒到 100 万行的约 1 分钟,全程显示行数进度;100 万这种超大表想更快可以导 CSV(约 10 秒)。