做本地优先工具两年,被问得最多的一句话是:
「你的数据能带走吗?」
这个问题不好答,因为"能导出"和"能带走"是两件事:很多工具导出给你一叠页面,图片散在别处、目录结构拍平、正文引用失效——它确实给了你文件,但你搬不走。
下面四份清单,是我自己判断「一个工具到底能不能带走」时用的。可以直接抄。
清单一:导出分三层
| 层 | 装什么 | 什么时候用 |
|---|---|---|
| 单页包 | 正文 + 附件(按内容哈希命名)+ 清单 | 导出给别人、存进别的系统 |
| 空间包 | 目录树是唯一真相;导入时重算 id、重写正文引用 | 换设备、迁到另一台机器 |
| 整库备份 | 连数据库的 WAL 一起拷;恢复是整份替换 | 换机不丢、出事能回滚 |
三层不是"三个按钮",是三种用途不同的东西:单页包是给别人的,空间包是搬家用的,整库备份是救命的。
另外补一句:三层包里的校验和要互相钉住——清单里存正文和附件的哈希,清单本身再被哈希钉一次。这样包坏了你打开就知道,而不是半年后才发现少了一页。
清单二:一条墓碑测试
假设明天这个软件关停,你多久能恢复全部内容?超过一天 = 不合格。
这条判据的好处是它不问你"有没有备份",只问"备份能不能用"。很多人的备份从来没验证过——那不叫备份,叫心理安慰。
怎么执行:把整库备份恢复到一台干净机器(或另一个目录),打开看三样——目录树还在不在、附件能不能打开、正文里的图片引用有没有断。
清单三:三个可测指标
"库很乱"不是指标,下面三个是:
| 指标 | 怎么量 | 目标 |
|---|---|---|
| 单次检索耗时 | 随手记 10 次搜索,从输入到点开目标页,取中位数 | < 10 秒 |
| 检索命中率 | 搜 10 次,几次找到了原本想找的那条 | ≥ 8 次 |
| 月度复用率 | 这个月打开过的、创建超过 90 天的笔记占比 | ≥ 20% |
每月记一次,比"感觉库很乱"可靠。如果检索耗时在涨、复用率在跌,说明问题不在"你需要整理",而在"检索路径变长了"。
清单四:本地优先产品的自检 5 问
- 数据在谁的盘上?(断网还能读写吗)
- 导出带不带结构?(目录树、附件、正文引用三样齐不齐)
- 包坏了能不能当场知道?(有没有校验和)
- 恢复是"整份替换"还是"合并"?(合并式恢复会把旧数据混进新数据)
- AI 能读什么,是默认全开还是由你点开?
这五问没有一条需要"更高明的工具",只取决于做产品的人愿不愿意把它做进去。
最后
四份清单到这里就完了,没有方法论,全是能立刻用的东西。
我自己在做的是一个本地优先的笔记(数据默认放本机,导出就是上面那三层),所以这几条不是纸上标准,是每天在跑的东西。
如果你也在做本地优先的工具,欢迎拿这四份清单来对一下;如果你在用别人的工具,第 2 条墓碑测试今天就值得做一次——5 分钟,比任何评测都准。
(作品/文档入口:shuyo.cn)