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