暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle Database API for MongoDB

甲骨文云技术 2021-12-27
1380

今天我们将向您介绍Oracle自治数据库的新API:Oracle Database API for MongoDB。通过适用于 MongoDB 的 Oracle 数据库 API,您可以将为MongoDB 编写的应用程序连接到Oracle自治数据库,并且用起来就像连接到MongoDB数据库一样。Oracle Database API 将 MongoDB操作转换为等效的SQL/JSON操作,以便您的数据始终处于一致状态,请注意这项服务并不是复制模式。您的MongoDB collection在Oracle数据库中进行存储、更新和查询。
这个API依旧允许您继续重用您的 MongoDB技能、驱动程序和框架,但同时它打开了丰富的 Oracle 生态系统。例如,您可以在MongoDB collectio上使用SQL的全部功能。比如,运行分析查询或报告。现有的 MongoDB 应用程序可以轻松迁移到Oracle 数据库 。因为Oracle Database API for MongoDB支持大多数为MongoDB编写的工具。例如,您可以使用 mongoimport导入您的 BSON 数据。BSON 文档将自动转换为Oracle高效的OSON格式。虽然 MongoDB开发人员可以继续使用他们的MongoDB 技能和喜爱的框架,但 Oracle Database API for MongoDB 现在开放了更多功能,例如:
  • GeoJSON 数据的空间处理

  • 具有文本搜索功能的完整文档索引

  • 跨文档和集合的完整 ACID 事务支持

  • 将 JSON 数据映射到关系视图、触发器、数据库存储过程

  • 使用 APEX 的低代码开发、实时仪表板

除了以上这些功能,还有其他丰富的功能等待您去探索。
Oracle开发人员会惊喜的发现,他们现在可以使用Oracle数据库以前不支持的语言驱动程序、框架和ORM。
Oracle Database API for MongoDB目前可用于自治 JSON 数据库 (AJD),以及自治事务处理数据库 (ATP)。这个API允许您将MongoDB工具或驱动程序连接到Oracle数据库。您可以与 Oracle 数据库中的JSON文档集合进行交互,就像连接到MongoDB数据库一样。
接下来我就通过实际操作为您演示,如何使用这项新技术。
1、首先登录Oracle云端控制台。

2、在左侧的导航栏中,找到 Oracle Database,然后找到Autonomous JSON Database。

3、在控制台中,我们点击创建按钮来创建自治JSON数据库。

4、您只需给出数据库的名称,然后选择JSON数据库,并且给出登录密码即可。

需要注意的是,在数据库的安全选项上,您应该选择只允许特定IP访问,并且根据您的喜好,来设定具体的IP或者IP段。

几分钟后,您的JSON数据库就创建成功了。

5、访问自治JSON数据库

选择服务控制台。

然后选择development。

您将看到Oracle Database API for MongoDB以及两个URL。

您需要将其中的数据库名称获取出来,然后通过命令行工具mongosh,进行链接。今天我们在Windows环境下进行链接,关于mongodb的安装,请参考mongodb的官方网站。

连接完成后,您可以使用Mongo Shell创建一个集合,并添加一些文档。例如,我们可以创建一个名为'emp'的集合,并添加一些JSON格式的员工文档。

当连接到AJD时,除了用户管理命令、索引操作和聚合管道操作外,可以运行大多数Mongo操作。这些操作都可以通过SQL语句来完成。其他MongoDB工具和使用MongoDB驱动程序来链接的应用程序将以类似的方式工作,提供我们上面所用做的URL,并根据需要提供相应凭据。接下来,让我们看看如何通过数据库工具处理集合。

让我们回到控制台,并来到我们的JSON数据库。并且点击database actions。

这将在一个新的浏览器选项卡中启动Database Actions页面。

JSON Workshop将在左边显示您的集合,在右边显示相关文档。您可以在Workshop中创建、编辑和删除集合以及文档。文档上方的框是一个搜索框,您可以在其中输入查询。这些被称为“按示例查询”或qbe。试着输入一个简单的搜索:{"job":"Programmer"},然后点击"Run"按钮。

我们还可以从这里为JSON内容创建索引。您只需用右键点击您的JSON文档,在弹出菜单中选择indexes即可。

在弹出的页面中,点击当前红框所示的加号即可添加索引。

首先您需要给出索引的名称,然后在图中2所示的位置,写入*号,这会显示所有的属性。然后在想添加索引的属性后面选择对号,如图中3所示。

然后您就会看到,索引已经创建成功。

点击红框所示的database actions,让我们回到JSON数据库的主界面,然后看看如何使用SQL对JSON数据进行查询。

6、使用SQL对JSON数据进行查询

在我们的左边,我们会看到“Tables”,我们会看到一个名为EMP的表,这是一个自动创建的表,用来保存我们的“EMP”集合。如果打开它,您将看到它包含几个列,其中一个列称为JSON_DOCUMENT。您可能会猜测它包含了我们的JSON文档,但这是一个二进制表示,如果我们只执行“select * from emp”之类的操作,我们就无法查看其中的内容。但是,我们可以使用JSON_SERIALIZE来查看其中的内容。我们可以看到,三个JSON文档被存储在EMP表中,每个文档对应一行记录。我们可以使用SQL以及mongosh或JSON Workshop从表中获取JSON。

如果想使用普通的SQL语句来查询数据。我们可以使用“简单点表示法”从JSON中获取一个值。注意,为了使用点表示法,我们必须使用表别名,比如给表emp设定别名为e。您可以看到,返回的数据与表列中的关系数据完全一样。实际上,我们可以对这些数据做任何事情,就像我们可以对普通字段做的那样。

让我们计算每种工作的平均工资。

这里我们只涉及了SQL和JSON的简单功能,目的只是向您展示您可以在相同的数据上无缝地使用MongoDB工具、Oracle JSON工具和SQL/JSON。要了解更多关于Oracle JSON功能的细节,请点击“阅读原文”。今天的内容就到这里,感谢您的阅读,谢谢。

编辑:殷海英

文章转载自甲骨文云技术,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论