历史建模中的数据操作模式解析
1. 引言
在数据处理和应用开发中,CRUD(创建、读取、更新、删除)操作是常见需求,但历史建模有其独特规则和能力。为了在历史建模的不可变规则下模拟 CRUD 操作,我们需要深入了解一些关键模式。
2. 实体模式(Entity)
2.1 动机
在表单驱动的数据应用中,用户需要创建新事物的能力。通常,用户点击按钮打开表单,填写并提交后,系统创建一个实体并赋予其身份。
2.2 结构
实体是一个仅包含标识信息的历史事实,包含自然键、GUID、时间戳或其他与位置无关的标识符的组合。
fact Entity {
identifier1: type
identifier2: type
}
2.3 示例
产品可以用一个仅捕获 SKU(库存单位)的事实来表示:
fact Product {
sku: string
}
产品的描述、价格、库存数量、缺货状态等属性不存储在该事实中,因为这些属性是可变的,而事实是不可变的。
2.4 后果
- 实体必须使用与位置无关的身份标识,不能使用自增 ID、URL 或其他与位置相关的标识符。
- 实体不包含可变属性,任何与实体关联的可变属性将通过后续事实应用。
- 如果两个节点创建具有相同
超级会员免费看
订阅专栏 解锁全文
1237

被折叠的 条评论
为什么被折叠?



