Mongodb文档建模 - 寻找合理的方法

时间:2014-04-17 14:39:02

标签: mongodb

我有一个大的asp .net应用程序,目前使用sql server作为其数据库。我想将此应用程序转换为使用mongodb。我面临的一个直接挑战是:如何在当前数据模型之间找到一个合理的中间点,这个模型分布在许多表格中,以及面向文档的方法,这将允许大多数(如果不是全部)我的相关实体合并为一个单一文件集。以下是一些细节: 业务领域是IT基础架构,其中一些实体是" BusinessApplication"," Server"," Storage"," Network",& #34;负载&#34 ;.所有这些实体都是相关的:......单个业务应用程序在多个服务器上运行;每个服务器都有一个或多个与之关联的存储单元;每个服务器都有一个或多个与之关联的网络接口;每个业务应用程序可以由一个或多个工作负载等表示...因此,基本上它是一个对象图。我的第一个诱惑是创建一个" Workload"文档,其中每个文档将有多个嵌套的子文档集合:

Workload:
{
    workloadId,
    workloadName,
    workloadEnvironment
    ...

    Applications:
    {
            appId,
            appName,
            appOwner,
            appType
            ...
    }

    Servers:
    {
        serverId,
        serverName,
        serverType,
        etc

        Storage:
        {
            storageUnitId,
            storageType,
            etc...
        }

        Network:
        {
            networkInterfaceId:,
            networkInterfaceType,
            ...
        }

    }


}

我没有为mongodb建模数据的任何经验,所以我的问题是: 这是"超级嵌套的集合"只要嵌套实体彼此相关,或者在某种程度的规范化方面仍然会更好,并将商业应用程序分离出来,那么这种做法是公认的,也是合理的。收集来自"服务器",来自"存储"等...?

0 个答案:

没有答案