是否有MongoDB到MySQL适配器

是否有MongoDB到MySQL适配器,mysql,mongodb,Mysql,Mongodb,我有一个Javascript库(),我想用它将我的WebApp与MySQL数据库同步。然而,这个SincIt目前只适用于MongoDB 我可能会为SincIt编写一个MySQL适配器,因为该库是模块化的,但我想知道是否有一个适配器可以将MongoDB指令转换为SQL。MySQL是一个关系数据库,使用SQL操作关系代数。MongoDB是一个不支持关系或联接的文档数据库 它确实允许文档的层次嵌套,但它只是一个完全不同的范例 本例中最重要的区别是MongoDB没有模式。对于mongo集合,您永远不需要

我有一个Javascript库(),我想用它将我的WebApp与MySQL数据库同步。然而,这个SincIt目前只适用于MongoDB


我可能会为SincIt编写一个MySQL适配器,因为该库是模块化的,但我想知道是否有一个适配器可以将MongoDB指令转换为SQL。

MySQL是一个关系数据库,使用SQL操作关系代数。MongoDB是一个不支持关系或联接的文档数据库

它确实允许文档的层次嵌套,但它只是一个完全不同的范例

本例中最重要的区别是MongoDB没有模式。对于mongo集合,您永远不需要执行与“CREATETABLE”语句等效的操作。此外,mongo对您从一个具有特定json结构的文档开始,然后使用完全不同的结构向该集合添加其他文档没有问题

由于Mongo使用json数据,因此关系数据库也会遇到需要将表数据转换为json文档的问题,反之亦然,这在任何一般意义上都是不可能的

使用MySQL,您当然需要在数据字典中维护表结构,如果有任何更改,您需要更改表。您可能会实现一个通用的行表结构,其中整个数据存储将位于一个blob中,以Sinclt所期望的相同json格式存储,但此时您也可以使用mongo

话虽如此,如果有一些业务规则需要它,那么让它与MySQL一起工作的最快方法可能是按照我刚才的建议,使用一个通用的行结构,如下所示:

id
optype (set, update, delete?)
data (blob storing the json payload)
parent_id

只要快速阅读SincIt文档,您似乎需要一些东西来支持系统的“链表”方面。

它不存在的原因是因为它们有两种完全不同的解决方案。您可能有MySQL->MongoDB,但是Mongo(无模式)到MySQL(模式)需要对应用程序本身了解太多。安装mongo并不难。使用mongo不是一个选项,因为我们需要与已经存在的使用MySQL的系统集成。在我们的项目中,这是不可协商的。顺便说一句,我认为这个问题不值得投否决票。在科学领域,如果你发现某些东西不能按你的想法工作,这也是一项很好的研究。谢谢你澄清这一点。我必须绑定到已经定义的数据库结构,所以泛型表也不是选项。我想我还是得为MySQL编写SyncIt适配器。