日志 还是 版本

2025 年 8 月 12 日
 silencegg

最近在做一个业务的基础功能开发,比如仓库管理,或者一些业务基础设置之类的,每次更改都要记录,到底是做成版本还是日志

我想做成版本,version = 'last' 代表最新, 历史版本都是加 1 的概念

如果做成日志的话,我估计我要做的事情就是事务了,日志 与 业务的东西要在一个事务里面

还有的想问下,传统企业的归档是指啥

2983 次点击
所在节点    程序员
9 条回复
litchinn
2025 年 8 月 12 日
你这个应该用版本,至于是同一张表还是单独一个历史表需要看需求
日志一般直接文件系统存储,而且不会回滚,只会向前走,遇到错误是生成一条错误日志表示,而不是删除上一条日志

归档就是将数据挪到另一个不经常使用的地方,可以是另一张表也可以是另一个库,甚至另一种介质
jiakme
2025 年 8 月 12 日
如果是日志且业务为单表的话, 可以考虑使用 cdc 监听方案.
spritecn
2025 年 8 月 12 日
version 的问题是数据量大了,历史 version 是不是要删或走 history
日志更通用,想杂记杂记,需求是会变的,一会需要记录入人,一会需要记审核人
94
2025 年 8 月 12 日
如果是通用的会用操作日志,管理员去按照不同的业务标识去查询。
如果是某一个业务的迭代更新(表单不同版本之类的)会使用版本。

归档的操作有很多,自己问一下 AI 然后选择一个方案就好了。
8355
2025 年 8 月 12 日
我觉得是日志
版本和日志的主要区别在于是否需要支持回滚,你的业务明显只是需要记录。
日志本质上是操作本身+操作人+操作时间+变更信息就行了,可以做成系统整体的操作日志,可能甚至不需要对外公开展示,只要存储就行了,必要时进行查询。
版本可就复杂了需要支持系统的多版本迭代和适配。
8355
2025 年 8 月 12 日
归档可以理解为封存,不能修改或变更,只能查询。
andykuen959595
2025 年 8 月 12 日
我选日志!
SmiteChow
2025 年 8 月 12 日
看你所谓的旧数据是否还需要回滚?需要则自然是不同的版本,不需要则是日志。
julyclyde
2025 年 8 月 13 日
类似于 binlog 选 statement 还是 row 的区别

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://study.congcong.us/t/1151730

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX