gpt4 book ai didi

sql-server - 事件源和 SQL Server 多个关系表

转载 作者:行者123 更新时间:2023-12-02 16:42:52 25 4
gpt4 key购买 nike

我们在 SQL Server 2016 中使用事件溯源。我们有完整的客户产品应用程序,每个应用程序都由 CustomerId 标记,并在事件存储中获取单个指南行项目。这是写入事件存储指南的主要标识符。产品应用程序附带许多不同的关系事物,(没有引导,但有自然键)每个客户都有多个地址、帐户、多个采购订单。写入事件存储将按照我们选择的任何方式映射到关系数据库表。在数据库中,我们尝试通过代理键而不是自然键来关联连接。

代理键可以是 Guid,还是我们可以利用整数(也许是 Identity)来加快连接速度?

请记住,写入事件存储中唯一的主要标识符是来自客户 ID 应用程序的 Guid(带有我们想要建模的一堆表列属性的大 json blob),但是子关系表可以在读取模型中随时更改, Write 事件存储中没有子 Guid。

最佳答案

是的,您可以在特定的读取模型实现中使用您需要的任何内容,但您需要考虑到读取模型应该可以在任何时候重建时间。因此,当重新构建读取模型时,它可能会使用其他代理ID,或者您只需以每次获得相同ID的方式实现它(我指的是自动增量 功能)。

附注你为什么不尝试对你的数据进行非规范化呢?在事件溯源中,通常避免使用连接,而不是在读取模型中使它们更快。

关于sql-server - 事件源和 SQL Server 多个关系表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46289332/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com