首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >是否有一种可接受的方法来跟踪记录元数据,CreatedOn/By等?

是否有一种可接受的方法来跟踪记录元数据,CreatedOn/By等?
EN

Software Engineering用户
提问于 2019-01-31 10:42:39
回答 2查看 92关注 0票数 -1

我曾与许多现成的系统合作过,一般来说,在数据库级别及以上,它们都有像CreatedBy/On、ModifiedBy/On等元数据,用于记录/实体,以便至少在一定程度上了解谁做了什么和什么时候做了什么。

显然,虽然这些字段相当浅,但您永远不知道谁做了第二次到最后一次编辑,但这些字段可能相当有用。

如果您正在从头构建一个需要某种级别审计的系统,无论是基本创建/修改的字段,还是跟踪与记录的每一个交互,还是一个完整的审计跟踪,它不仅跟踪谁做了什么,而且跟踪了以前的字段,并且after...is那里有一个标准的、可接受的方法来执行这些操作?

我遇到的问题之一,尤其是创建/修改字段时,您的对象模型不应该真正知道或关心应用程序级别上发生了什么,因此试图将这些关注点分开会带来挑战。

所以我想我是在问,这是个解决问题了吗?因为谷歌我似乎找不到一个标准的,普遍接受的方式来做它。

EN

回答 2

Software Engineering用户

发布于 2019-01-31 15:03:22

实现这一目标的方法有很多种,因此,希望这个问题能够解决,因为这是一个很大的领域。但是,我在过去使用过/遇到过的几个例子:

镜像表

作为数据库更新的一部分,可以将以前的数据库保存在镜像表中,以便在数据库使用时可以继续更新。当切换发生时,镜像表被复制到虚拟表中,活动表复制到镜像表,虚拟表复制到虚拟表中。

显然,这只会告诉您在更新之间发生了什么,但是这个工具是存在的,并且可能很有用。

历史表

对于感兴趣的表,历史表与数据的前后图片以及用户和日期时间一起保存。这些表可能会变得非常大,因此只有关键表才会被包括在内。

Mart/repository

有时,将所有数据更改保存在存储库中,并且只保存高性能集市中的最新信息,这是一种权宜之计。既然一切都被保留着,空间就会成为一个问题。

甲骨文闪回

Oracle数据库支持闪回技术,它可以在某个时间点告诉您数据库的状态。通过前后遍历,您可以准确地看到何时进行了更改,以及由谁(前提是您正确地设计了数据库)。

票数 2
EN

Software Engineering用户

发布于 2019-01-31 14:14:30

您所指的一般区域称为“内容管理”或“文档管理”。有许多商业和开源的系统实现,主要集中在这些领域。

信息体系结构领域中,有一些与组织相关的定义元数据的实践和过程。

用于描述数字资源(视频、网页等)的元数据集合的一个具体示例。是都柏林核心。它为诸如版权的“创建者”和“日期”这样的元数据提供了词汇表和用法。请按照这些链接获得各种元数据的更广泛描述。

票数 0
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/386413

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档