Domain driven design cqrs中的报告-不可预见的统计数据

Domain driven design cqrs中的报告-不可预见的统计数据,domain-driven-design,cqrs,ncqrs,Domain Driven Design,Cqrs,Ncqrs,我知道,当域模型中的事件生成时,可以动态计算read模型中的基本统计信息。这真的适用于更复杂的情况吗?如果将来需要新的统计数据,会发生什么?您是否回顾性地针对新的读取模型运行过去的事件?如有任何与报告和CQR相关的反馈,将不胜感激 我想您谈论的是事件源,因为CQR并不一定意味着您要存储事件 在事件源的情况下,是的,您可以将整个读取模型从过去的事件中删除并重新水化。事件源的想法是,您的事件流是所发生的一切的日志 read模型只是这些事件的投影。当你的洞察力发生变化时,你可以改变这种预测(或者为此添

我知道,当域模型中的事件生成时,可以动态计算read模型中的基本统计信息。这真的适用于更复杂的情况吗?如果将来需要新的统计数据,会发生什么?您是否回顾性地针对新的读取模型运行过去的事件?如有任何与报告和CQR相关的反馈,将不胜感激

我想您谈论的是事件源,因为CQR并不一定意味着您要存储事件

在事件源的情况下,是的,您可以将整个读取模型从过去的事件中删除并重新水化。事件源的想法是,您的事件流是所发生的一切的日志


read模型只是这些事件的投影。当你的洞察力发生变化时,你可以改变这种预测(或者为此添加预测)。这是事件源的一大优势。

我指的是这个示例:特别是这个代码:在这里,域模型生成用于创建(报告)读取模型的事件。我想这需要明确的事件来源,但我不是100%确定……我目前正在研究一种解决方案,我们每天都会收集所有事件,并根据这些事件生成发票,这对报告也会起到同样的作用。我们在30秒内预测了1.000.000个事件。谢谢听起来很酷-只是一个简单的例子-让我们说报告ui上也有一些过滤器。“投影”是什么样子的?我想很难为所有可能的过滤器组合创建所有可能的事件来“投射事物”?!您可以在后台将其投影到适合于报告的读取模型,例如关系数据库。您仍然可以通过编写查询来实现过滤器。我想我完全明白了,但我真的很想看到一个关于这方面的严肃例子。不像这个非常基本的例子:-任何指针都将非常感谢。