Architecture 使用DocumentDb或事件源处理DDD/CQR中包含大型集合的聚合
我正在从事一个项目,该项目管理批量生产大量文档。 工作流程Architecture 使用DocumentDb或事件源处理DDD/CQR中包含大型集合的聚合,architecture,domain-driven-design,storage,cqrs,Architecture,Domain Driven Design,Storage,Cqrs,我正在从事一个项目,该项目管理批量生产大量文档。 工作流程 用户根据定义其需求的模板(需求通常是用户必须上传并由系统处理的文件),使用应用程序创建一个新的“批处理” 一旦满足所有要求,系统将处理所有输入并生成大量文档(数千份) 这些文件需要及时进行后期处理 某些批处理操作必须完成,例如,发布所有文档,在这种情况下,所有这些文档都需要先进行后处理 对于哪些操作可以同时运行,每个文档最多只能进行一次后处理等都有限制 我目前已将“批处理”本身建模为聚合根,但不将生成的文档列表存储在“批处理”对象本身中
仅供参考,使用.net、c#、服务总线,使用一个由SQL支持的过于简化的通用存储库,计划在不久的将来切换到MongoDb。恐怕我没有一个快速的答案。我认为这取决于您的域的设计——特别是事务性和最终的一致性。很难摆脱以数据为导向的思维模式。 我发现沃恩·弗农的原著后续书非常有用。他的书是以他的散文为基础的。我发现他们在这方面很有见地