MongoDB灵活的模式和丰富的文档结构能够帮助开发人员使用丰富的数据结构快速开发应用。然而,这样的灵活性也有可能使得在一个已知的数据库中理解数据的结构变得困难。
直到现在,如果您想知道您数据的结构,您都不得不在命令行使用MongoDB Shell进行查询来查看数据。MongoDB Compass将是一个更好的方式。
什么是MongoDB Compass?
MongoDB 3.2引入了MongoDB Compass-一个图形化工具,能够帮助您在不需要知道MongoDB查询语法的前提下,便利地分析和理解您的数据库模式,并且帮助您可视化地构建查询。
开发MongoDB Compass工具主要是为了实现以下三个主要目标:
* 模式发现
* 数据发现
* 查询的可视化构建
模式发现
Compass在一个集合的模式中展示字段的数据类型。下面的案例来自于我在测试启动Compass时使用的一个模拟数据库。它展示了集合中包含date
类型last_login
字段文档的报表:
Compass也展示了文档之间不同数据类型的字段中,不同数据类型所占的百分比分布。在这个示例中,81%的文档将phone_no
存储为字符串,剩余的19%则存储为数字:
对于稀疏字段,一些文档并没有存储该值,Compass将缺失值的比例显示为“undefined”。在这里,40%的示例文档缺失了age
字段。
这对于了解您的应用是否正在以您希望的方式存储数据非常有用。想想一个清新:您有一个混合有字符串和数字的字段,也许在应用的某个地方隐藏着bug,正在使用错误的数据类型存储数据。
数据发现
Compass能够以直方图的形式展示一个集合中的数据频率和分布。例如,下面是一个包含着用户年龄的数据集合。我们可以看到最小的年龄是16岁,最大的是56岁,而最普遍的年龄在将近40岁(精确值可以通过将鼠标放置在对应的块上显示)
下面是另一个存储着姓名字段的示例。Compass将会展示该字段随机的一些字符串值:
查询的可视化构建
您是否想以一种更简单的方式输出一个MongoDB查询?Compass中的图表是全方位交互式的。点击一个图表值或者块将会自动在接口中构建一个匹配选定范围的MongoDB查询。
在下面的案例中,点击“JFK”块将会构建一个匹配所有departureAirportFsCode
字段为“JFK”的查询:
点击其它字段值将会向选项中增加字段和范围,构建一个更加复杂的查询。继续我们的示例,除了从JFK机场离开的条件之外,我们还选择了一个特定的flightId
。
一旦您点击应用按钮,Compass将会执行查询并且返回结果!就是这么容易。您可以通过一系列的按钮点击就马上构建出相应的查询。
最后一个话题-我们并没有忘记JSON。您可以在文档浏览面板查看对应的文档,直接通过点击页面右边的文档视图按钮就可以完成。
我知道您一定在好奇-我是在哪里得到这些功能的?!
好的,您可以在mongodb.com的下载中心进行下载。在生产环境中,我们已经为MongoDB专业版和企业高级版用户提供了MongoDB Compass的所有功能。在开发环境,MongoDB Compass也可以免费使用。
这仅仅是Compass的1.0版本-还有更多有用的功能即将到来。作为Compass团队的一员,我特别激动,并且迫不及待地想看到下一个版本的发布。
今天就开始体验MongoDB Compass吧。
下载MongoDB Compass
关于作者-Sam Weaver
Sam Weaver是MongoDB纽约中心有研发经验的产品经理。在加入MongoDB之前,他在Red Hat主要从事Linux,虚拟化及中间件的技术售前咨询。出生于英国的Cheltenham,毕业于Cardiff大学的计算机科学专业。Sam也完成了从伦敦到巴黎的骑行,完成了像TouguMudder之类的几个体育赛事,他还喜欢游泳。
翻译:周颖敏
审核:TJ
原文链接:https://www.mongodb.com/blog/post/getting-started-with-mongodb-compass
Windows版本的只支持windows7 64吗?
Windows 7 32位或者Windows server 2008 R2 64都安装不上。
PS: .NET Framework已经升级到4.5了的。