从mysql迁移到MongoDb,任何有助于创建迁移计划的工具

时间:2012-11-13 16:20:29

标签: mysql mongodb

我们计划从mysql迁移到mongoDB。我想知道是否有工具或任何其他资源可以帮助我创建迁移计划。例如(带有公司的表,应先移动,然后移动用户详细信息等),以便迁移顺利进行。

2 个答案:

答案 0 :(得分:1)

您不能简单地将MySQL架构迁移到MongoDB(或任何其他文档数据库存储)。存储数据的方式完全不同。请记住,没有连接,并且您很可能需要对数据进行非规范化,并将某些数据嵌入到其他文档中。这不是可以自动化的东西。

这里的数据库根本不同。您需要从应用程序端查看如何读取和写入数据,在何处进行连接,如何最好地构建新模式以使用 MongoDB工作,而不是仅仅将其用作RDBMs 。搜索“MongoDB架构设计”以了解您需要考虑的事项。

答案 1 :(得分:0)

首先,你必须知道你的表和查询之间的关系。

  1. 根据外键关系对表进行分组。也许有些团体只有一张桌子。您可以先迁移这些。因为这很容易。例如:记录,访客数量。

  2. 然后是一组中的2个表。

    1. 如果关系是1:1,您只需将它们合并到一个表中即可进行迁移。
    2. 如果1:n,您可以将n方嵌入1方。但是合并(嵌入)与否应该根据您的查询。例如:如果两个具有1:1关系的表永远不会一起读取,则可以直接迁移到MongoDB而不进行合并。
    3. 虽然可以使用MongoDB实现n:m,但您必须自己管理大型冗余数据或处理join。但如果你真的想要这样做,那没关系。但性能可能是一个问题。
  3. 如果组中的表数> gt; = 3,我认为你应该在大多数情况下将它们保存在MySQL中。但仍有一些例外。我最近处理了3个表1:11:n关系的表,我刚刚将它们合并并嵌入到一个表中,这很容易,性能也更好。