Moqui 自定义应用程序的数据建模问题
Data modeling Issue for Moqui custom application
我们正在 Moqui 框架之上开发一个自定义项目管理应用程序。我们的要求是,我们需要通过电子邮件将工单的任何更改通知与项目相关的开发人员。
目前我们正在使用 WorkEffortParty 实体来存储与项目相关的所有各方,然后使用 PartyContactMech 实体来存储他们的电子邮件地址。在这里,我们需要每次遍历 WorkEffortParty 和 PartyContactMech 以获取我们每次需要发送电子邮件以更改工单的所有电子邮件地址。
为了避免这些迭代,我们现在正在考虑提供在项目级别添加以逗号分隔的电子邮件地址的功能。项目管理员可以添加关联方的电子邮件地址或邮件列表地址,他需要向其发送票证更改的电子邮件通知。
为了这个需求,我们研究了数据模型,但没有找到合适的地方来存储这些信息。我们是否需要为此扩展任何实体,或者是否有任何最佳实践?此要求在任何项目管理应用程序中都非常有用。我们感谢您对此数据建模问题的任何帮助。
最佳做法是使用可用的现有数据模型元素。拥有规范化的数据模型需要更多的数据查询工作,但在不更改数据结构的情况下也可以更灵活地满足各种需求。
在这种情况下,使用联合查询,您可以根据项目的 workEffortId 在单个查询中获取电子邮件地址列表。如果您正在处理海量数据和消息量,那么有比非规范化源数据更好的解决方案,但我怀疑是这种情况......除非您每天处理超过数千个项目和数百万条消息,否则基本查询和迭代方法会工作得很好。
如果您需要超越此范围,使用 Moqui 的最简单方法是使用 DataDocument 和 DataFeed 将动态更新发送到 ElasticSearch,然后将其用于您的大量查询和过滤(使用任意复杂的过滤,等要求)。
您的问题过于开放,无法直接回答,数据建模是一个复杂的主题,如果不充分理解上下文和预期用途,就没有好的答案。一般来说,最好从基于数十年经验并在大量生产系统中使用的数据模型开始。 Mantle UDM 就是这样一种模型。
我们正在 Moqui 框架之上开发一个自定义项目管理应用程序。我们的要求是,我们需要通过电子邮件将工单的任何更改通知与项目相关的开发人员。
目前我们正在使用 WorkEffortParty 实体来存储与项目相关的所有各方,然后使用 PartyContactMech 实体来存储他们的电子邮件地址。在这里,我们需要每次遍历 WorkEffortParty 和 PartyContactMech 以获取我们每次需要发送电子邮件以更改工单的所有电子邮件地址。
为了避免这些迭代,我们现在正在考虑提供在项目级别添加以逗号分隔的电子邮件地址的功能。项目管理员可以添加关联方的电子邮件地址或邮件列表地址,他需要向其发送票证更改的电子邮件通知。
为了这个需求,我们研究了数据模型,但没有找到合适的地方来存储这些信息。我们是否需要为此扩展任何实体,或者是否有任何最佳实践?此要求在任何项目管理应用程序中都非常有用。我们感谢您对此数据建模问题的任何帮助。
最佳做法是使用可用的现有数据模型元素。拥有规范化的数据模型需要更多的数据查询工作,但在不更改数据结构的情况下也可以更灵活地满足各种需求。
在这种情况下,使用联合查询,您可以根据项目的 workEffortId 在单个查询中获取电子邮件地址列表。如果您正在处理海量数据和消息量,那么有比非规范化源数据更好的解决方案,但我怀疑是这种情况......除非您每天处理超过数千个项目和数百万条消息,否则基本查询和迭代方法会工作得很好。
如果您需要超越此范围,使用 Moqui 的最简单方法是使用 DataDocument 和 DataFeed 将动态更新发送到 ElasticSearch,然后将其用于您的大量查询和过滤(使用任意复杂的过滤,等要求)。
您的问题过于开放,无法直接回答,数据建模是一个复杂的主题,如果不充分理解上下文和预期用途,就没有好的答案。一般来说,最好从基于数十年经验并在大量生产系统中使用的数据模型开始。 Mantle UDM 就是这样一种模型。