如何从现有的写入数据库生成 CQRS 中的读取数据?
How to generate read data in CQRS from existing write database?
目前我们有一个 Asp.net 应用程序,它使用 SQL 服务器作为一个普通的单体应用程序来写入和读取查询。
现在我们要转移到 CQRS。
在 CQRS 中,读取模型是根据事件生成的。
但是对于我的应用程序之前的交易数据,我们没有任何事件或日志。
那么我们如何从我们现有的 SQL 服务器数据库的数据在 NoSql 数据库中生成读取模型。
在CQRS中,一般不需要从事件中生成读取模型,CQRS是将读取与写入分开的方法,它与事件无关。
对于迁移到 CQRS 的第一步,您可以使用与现在相同的模型(来自数据库的相同表)。只有你会拆分 API 逻辑的所有修改系统状态的操作,如创建更新删除操作,都应该通过执行命令来完成。并按查询阅读。
如果您的情况确实需要单独的读取模型,是的,您将需要在下一步中实现将生成读取模型的事件和事件处理程序。为了更容易,你可以看看 AppFactory project CQRS
目前我们有一个 Asp.net 应用程序,它使用 SQL 服务器作为一个普通的单体应用程序来写入和读取查询。
现在我们要转移到 CQRS。
在 CQRS 中,读取模型是根据事件生成的。
但是对于我的应用程序之前的交易数据,我们没有任何事件或日志。
那么我们如何从我们现有的 SQL 服务器数据库的数据在 NoSql 数据库中生成读取模型。
在CQRS中,一般不需要从事件中生成读取模型,CQRS是将读取与写入分开的方法,它与事件无关。
对于迁移到 CQRS 的第一步,您可以使用与现在相同的模型(来自数据库的相同表)。只有你会拆分 API 逻辑的所有修改系统状态的操作,如创建更新删除操作,都应该通过执行命令来完成。并按查询阅读。
如果您的情况确实需要单独的读取模型,是的,您将需要在下一步中实现将生成读取模型的事件和事件处理程序。为了更容易,你可以看看 AppFactory project CQRS