当前位置: 首页 > 知识库问答 >
问题:

_schema中未列出MongoDB集合

濮阳
2023-03-14

我正在使用MongoDB 2.6标准。我已经成功地创建了多个集合,插入数据,查询数据等。在Mongo shell内部工作良好,以及从使用MongoSkin的NodeJS应用程序。到目前为止,一切都很好。现在我需要使用第三方工具(D2RQ)来访问数据。似乎D2RQ使用_schema集合来获取集合名称,列名,数据类型等。D2RQ适用于其中三个集合,因为集合在MongoDB中_schema。第四个集合不在_schema,似乎是不可见的。然而,第四个集合存在于MongoDB中。该集合有数据。我可以在Mongo shell中查询集合,并从NodeJS使用蒙古金。知道为什么集合没有出现在_schema吗?这是一个MongoDBbug吗?

共有1个答案

罗法
2023-03-14

这不是MongoDBbug,问题的根本原因是D2RQ使用UnityJDBC驱动程序访问MongoDB。JDBC连接字符串上有一个参数指示是否重建_schema。D2RQ在与MongoDB进行JDBC连接时没有正确传递该参数,导致第一次调用后所有调用的_schema集合都过期。解决方案有两部分:

第一部分是编写一个小型的NodeJS应用程序,它除了在连接时强制重新构建_schema之外什么都不做。这解决了我眼前的问题。

第二部分是将小小的NodeJS应用程序扩展为一个功能齐全的导出过程,从MongoDB生成一个RDF文件。这允许我从解决方案堆栈中删除D2RQ和UnityJDBC驱动程序。

架构中最可靠的组件是不存在的组件”

 类似资料:
  • 我有用于数据库的Spring Boot App和MongoDB。 在数据库中,我有一个集合packageholiday,其中有一些元素,这是JSON: 我的目标是什么: 正如你们所见,我在集合中有这样的数组: 所以我的问题实际上是创建API,它将从集合中返回具有指定的元素。 例如 的API 例如,对于相同的 的API 我怎样才能做到这一点?这样可能吗?

  • 我的问题与[这里][1]相同。我已经创建了一个索引“

  • 我们有一个相对简单的分片MongoDB设置:4个分片,每个分片是一个副本集,至少有3个成员。每个集合都由从大量文件加载的数据组成;每个文件都被赋予一个单调递增的ID,并且根据ID的哈希完成分片。 我们的大部分产品都在按预期工作。然而,我有一个集合似乎没有正确地将块分布到各个碎片上。在创建索引之前,集合加载了大约30GB的数据,并且进行了分片,但是据我所知,这并不重要。以下是该集合的统计数据: 这个

  • 我还遗漏了什么参数吗?

  • 嗨,我的数据结构已附加。 我只需要访问下每个元素下的。我可以单独手动执行,这给了我,但像这样的元素有100个。 我遵循这个问题的解决方案:列表子集的子集 使用此

  • Zeppelin属性配置中是否有任何属性需要设置?? 提前道谢。