0

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

4

2 回答 2

1

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

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

于 2012-11-13T18:28:07.083 回答
0

首先,您必须了解您的表和查询之间的关系。

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

  2. 然后一组2张桌子。

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

于 2012-11-13T21:11:51.043 回答