合并两个集合并在MongoDB中生成文件

时间:2015-12-07 08:02:06

标签: java mongodb mongodb-java

我是MongoDB的新手。我使用MongoDB作为我的主数据库。在我的数据库中,我有多个集合,我在我的集​​合中存储了大量数据。以下是一些集合名称

  • 名字
  • 名称
  • 地址
  • IBAN 等...

我开发了一个客户端,该客户端将请求数据。客户端将根据我需要生成数据并将其发送到客户端来发送对象。比如说,客户端有一个名为 Person 的POJO类,它有3个字段。这些是FirstName,LastName和Name。客户端将此对象作为参数发送到服务器。我的服务器代码分析该对象并将数据泵送到客户端。我的问题是,数据存在于多个集合中。如何将这3个系列合二为一,以及如何发送数据。

我在互联网上看到了多个论坛,每个论坛都显示了map-reduce示例。但就我而言,它不涉及聚合函数。那么如何在发送给客户端之前填写数据呢?任何人都可以帮助我。?

提前致谢, Amar.T

2 个答案:

答案 0 :(得分:1)

每个字段都有不同的集合,并且所有集合中都没有公共字段。它如何将firstname映射到其姓氏。据我说,你有两个选择:

  1. 合并所有收藏品,因为它们没有任何意义。
  2. 为所有集合分配一些常见属性,例如person_id,并为同一个人分配相同的值。

答案 1 :(得分:0)

根据您的上一条评论,我建议您将数据存储在一个集合中。 MongoDB文档是无模式的,每个文档可以有不同的模式。您只需将所有字段存储在一个集合中,查找查询将在查询时过滤掉相关结果。

关于开销,与使用单个集合相比,在一个集合中存储所有字段的开销很小,但是,在查询数据时应该使用性能增益,因为多个集合之间的连接会很慢。