重构Mongo内部的数据还是重组?

时间:2015-06-28 20:23:00

标签: mongodb

我有一些简单的事务风格数据,如下所示:

{
    'giver': 'Alexandra',
    'receiver': 'Julie',
    'amount': 20,
    'year_given': 2015
}

任何'给予者'或'接收者'都可以有多个条目。

我主要是根据给予者字段查询这些数据,然后按年分割。所以,我想加快这些问题。

我是Mongo的新手,所以我不确定以下哪种方法是最好的做法:

1。将数据重组为以下格式:

{
    'giver': 'Alexandra',
    'transactions': {
        '2015': [
            {
                'receiver': 'Julie',
                'amount': 20
            },
        ...
        ],
        '2014': ...,
        ...
    }
}

这让我对我最有意义。我们将所有交易放在一个人的子文档中,而不是在整个集合中进行交易。它以我最常查询的形式提供数据,因此通过'giver'然后'transactions.year'查询它应该很快

我不确定是否可以在mongo内部重构这样的数据,或者我是否应该通过某种编程语言将其导出并在mongo之外进行修改。

2。只需通过'给予者'索引

这与我查询这些数据的方式不完全匹配(通过“给予者”然后“年份”),但它可以足够快地完成我正在寻找的事情。在mongo中做起来很简单,并且不需要重组数据。

我应该如何调整数据库以加快查询速度?哪种方式是'蒙古方式'?

0 个答案:

没有答案