【发布时间】:2012-09-05 09:03:18
【问题描述】:
我接手了一个使用现有 MongoDB 的项目。我想获得现有数据的视觉图像(图表等)。显然 MongoDB 与 MySQL 相比是完全不同的情况,但我想还有一些可以可视化的东西?
【问题讨论】:
标签: mongodb visualization
我接手了一个使用现有 MongoDB 的项目。我想获得现有数据的视觉图像(图表等)。显然 MongoDB 与 MySQL 相比是完全不同的情况,但我想还有一些可以可视化的东西?
【问题讨论】:
标签: mongodb visualization
这实际上取决于您对“可视化”的要求。通常,关系数据库图表中大多数更有趣的视觉方面是高级关系和完整性约束(1:1、1:many、主键、外键等)。
MongoDB 具有灵活 模式,从某种意义上说,给定集合中的文档不必遵守预先确定的格式。这并不意味着底层数据不能有某种组织......只是没有强加于集合的单一模式(就像传统关系数据库中的情况一样)。
在 MongoDB 中,许多要可视化的有趣细节需要通过检查集合中的部分或全部文档或查看代码来进行分析。
如果您的应用程序正在使用 ODM(对象文档映射器),例如 Mongoose (Node.js) 或 Morphia (Java),则应用程序代码可能会提供预期架构的快速描述性视图(或在至少是预期架构的最新版本)。适当的语言文档工具(例如 jsdoc 或 javadoc)可能有助于生成对模型类的合理概述。您可能需要添加一些文档注释以获得最佳效果。
模式分析是一种更强力的方法,它涉及查看数据以推断观察到的模式。一种常见的方法是使用Map/Reduce。
有几个不同的 mongo shell 帮助器可以让您了解集合的一般结构(例如,字段/数据类型及其在源文档中的覆盖范围):
这些不是可视的(在图形意义上),但模式分析结果确实提供了对数据的预期形状和常见变化的洞察。
MongoDB 服务器不支持外键关系,这会删除许多可能有趣的视觉注释。
有一些不同的客户端驱动程序方法来创建Database References (DBRefs),但这些都遵循使用约定而不是服务器功能。为了使用 DBRefs 确定集合之间的关系,必须扫描集合中的部分或全部文档。 variety 或 schema.js 尚不支持关系推断。
要更好地了解实际内容,您可以尝试Admin UIs 之一。
【讨论】:
您可以使用Mongo3 或futon4mongo 和MogoVue 是最好的。
整个记录在案的工具列表是here。
【讨论】:
【讨论】: