QCon北京「鸿蒙专场」火热来袭!即刻报名,与创新同行~ 了解详情
写点什么

Southbank Software 推出 MongoDB 开源数据库开发工具 dbKoda

  • 2017-09-17
  • 本文字数:1697 字

    阅读完需:约 6 分钟

Southbank Software 公司最近发布了 dbKoda 0.6.0 ,这是该软件的首个发布版。dbKoda 是一款开源的 MongoDB 开发工具,采用 JavaScript、 React Electron 开发。下图显示了 dbKoda 的用户图形界面,突出特点是提供了一个连接管理器(Connection Manager)和代码编辑器(Code Editor),其中代码编辑器给出了丰富的 MongoDB 数据操作特性。

连接管理器

连接管理器维护多个数据库连接的配置信息(Profile)。在连接管理器窗口的下半部分,显示了包含每个活跃数据库连接及相应集合(Collection)的列表。点击鼠标右键,就会弹出一系列菜单选项,包括构建查询、执行 CRUD 操作、索引和导入导出数据(如下图左侧所示)。连接配置信息编辑器用于创建新的数据库连接,它支持所有形式的数据库连接语法(如下图右侧所示)。

代码编辑器

代码编辑器中包括了查询输入输出窗口,该窗口用于编写和执行 MongoDB 的 Shell 命令。编辑器的特性包括了代码格式化、代码自动完成、代码折叠和语法高亮显示。用户可以在代码编辑器中手工编写查询,也可以使用查询构建器构建查询(如下图所示)。查询构建器可以在代码编辑器中动态地生成相应的 MongoDB 的 Shell 命令。该特性在编写复杂的 MongoDB Shell 命令时非常有用,它消除了如何正确格式化大括号和圆括号的一系列繁琐操作。

在 Southbank Software 最新发布的 dbKoda 0.7.0 版中,提供了如下新特性:

  • 聚合构建器(Aggregation Builder);
  • 存储下钻(Storage Drilldown);
  • SSH 隧道连接(SSH Tunneling Connections);
  • 改进的 JSON 查看器;
  • 导入和导出。

聚合构建器的功能类似于查询构建器,支持构建需要aggregate聚合函数的更复杂查询。在下面的例子中,publications集合(Collection)使用$lookup操作符执行与authors集合的做内连接运算。

复制代码
db.publications.aggregate({"$lookup": {
"localField" : "author_id",
"from" : "authors",
"foreignField" : "_id",
"as" : "authorinfo"
}})

如下图所示,聚合构建器仅需输入localFieldfromforeignFieldas等键值域所需的内容,就可动态生成内连接运算。

Southbank Software 公司 CTO Guy Harrison 就 dbKoda 产品接受了 InfoQ 的采访。

InfoQ:开发 dbKoda 产品的灵感来自于哪里?

Guy Harrison:当我撰写《下一代数据库》(Next Generation Databases)一书时,敏锐地意识到我们正经处于数据库系统的第三次变革中。新一代的数据库专业人士需要新一代的数据库工具。考虑到我本身就具有数据库和软件开发的背景,因此我认为自己应该尝试创立一家公司,去推出下一代的数据库工具。

InfoQ:dbKoda 为什么以 MongoDB 为首选?

Harrison:“NoSQL”生态系统中杰出者众,我第一时间能想到就有 Cassandra、Couchbase、Hadoop、park 和 Neo4J 等。但是就 MongoDB 当前已具有三千万次下载使用而言,它无疑是遥遥领先的。

InfoQ: dbKoda 未来是否会提供对其它数据库的支持?如果是这样,它将会支持哪些数据库?时间节点如何?

Harrison:我们的确规划在未来的一年中提供对更多数据库的支持,其中包括一些关系型数据库,也有一些非关系型数据库。

InfoQ:dbKoda 未来将如何发展?您能为我们详细介绍一下 1.0 版本的规划吗?

Harrison:我们目前正致力于为在 NodeJS 等框架中使用 MongoDB 的开发人员提供更深入的支持,其中包括提供 SQL 查询功能(通过 Apache Drill ),并改进查询的构建和输出处理。

我们期待 1.0 版将具备基于订购的托管功能,并且是面向服务器的产品版本,其中包括更深入的性能分析功能、提供协作特性,并持续为编程人员使框架对 MongoDB 编程提供支持。

InfoQ:您在 Southbank Software 任职多久了?能为我们介绍一下您当前的职责吗?

Harrison:我是 Southbank Software 的 CTO 及创始人,也是 Toba Capital 的合伙人。Toba Capital 是投资 dbKoda 的风险投资商之一。我身兼多重职责,包括企业管理、产品特征设计、编写自动测试以及部分特征的编码工作。我们的团队具有六位 dbKoda 的全职开发人员。

Harrison 给出了一个五分钟时长的 YouTube视频,其中展示了dbKoda 入门指南。

查看英文原文: Southbank Software Introduces dbKoda, an Open Source Database Development Tool for MongoDB

2017-09-17 19:002659
用户头像

发布了 391 篇内容, 共 142.0 次阅读, 收获喜欢 257 次。

关注

评论

发布
暂无评论
发现更多内容

PHP7内核实现原理-基本环境和C基础

菜皮日记

php

行为型设计模式-状态 State

菜皮日记

设计模式

行为型设计模式-模板方法 Template Method

菜皮日记

设计模式

前辈从业多年的心得分享 - 读《这就是软件工程师》

菜皮日记

读书笔记

MongoDB 官方文档笔记之存储 Storage

菜皮日记

mongodb

PHP7内核实现原理-启动过程

菜皮日记

php

行为型设计模式-观察者(发布订阅) Observer

菜皮日记

设计模式

行为型设计模式-访问器 Visitor

菜皮日记

设计模式

MongoDB 官方文档笔记之索引 Indexes

菜皮日记

mongodb

好奇是开启智慧的钥匙 - 读《朝闻道》

菜皮日记

读书笔记

PHP 使用 nikic/php-parser 处理 AST

菜皮日记

php

PHP7内核实现原理-内存管理

菜皮日记

php

使用基于 tideways 的 php-monitor 搭建 PHP 性能监控平台

菜皮日记

php

Java 中反射、注解、动态代理、AOP 之间的联系

菜皮日记

Java aop

PHP7内核实现原理-变量的基本结构

菜皮日记

php

PHP7内核实现原理-数组的实现

菜皮日记

php

京沪永远涨是否会涨到永远 - 读《菜场经济学》

菜皮日记

读书笔记

PHP Composer 的自动加载

菜皮日记

php composer

2020 年书单

菜皮日记

读书笔记

tornado 的协程调度原理

菜皮日记

tornado

PHP7内核实现原理-词法和语法分析

菜皮日记

php

MongoDB 官方文档笔记之分片 Sharding

菜皮日记

mongodb

Java 动态代理原理

菜皮日记

Java 动态代理

PHP7内核实现原理-基本架构

菜皮日记

php

行为型设计模式-备忘录 Memento

菜皮日记

设计模式

MongoDB 官方文档笔记之复制 Replication

菜皮日记

mongodb

四种常用限流算法对比

菜皮日记

限流

行为型设计模式-策略 Strategy

菜皮日记

设计模式

Southbank Software推出MongoDB开源数据库开发工具dbKoda_数据库_Michael Redlich_InfoQ精选文章