我有一堆来自存储在MySQL数据库中的科学实验的数据,但我想使用MongoDB来利用其map / reduce功能来为某些网络图表提供支持。将新写入MySQL复制到Mongo的最佳方法是什么?我检查二进制MySQL日志并相应更新的一些解决方案,就像标准的MySQL复制一样?
谢谢! 亚历
答案 0 :(得分:1)
MySQL和MongoDB使用截然不同的数据和查询模型,因此无法直接传输数据。
唉,在两者之间移动数据必须手动完成,并且这样做有效地取决于您的数据。例如。您可以将每个表转移到一个单独的集合(大致是MongoDB-lingo中的表),并将表中的唯一属性转换为_id
- 属性。或者,您可以将_id
设为tablename+unique_id
。
基本上,由于文档数据库本质上是自由格式的,因此您可以自由地创建自己的on scheme(只要_id
- 属性在集合中是唯一的)。
答案 1 :(得分:1)
Tungsten Replicator是MySQL的数据复制引擎。
使用异构复制,您可以set up MySQL to MongoDB replication。
答案 2 :(得分:0)
我对MongoDB并不熟悉,但我的快速浏览显示它与mySQL不兼容,所以除非有人写了从mySQL导入的内容,否则你运气不好。
您可以编写自己的导入功能。
假设您的mySQL表使用递增的唯一“id”字段,您可以跟踪mysql中的最后一行,然后在更改时将其发送到mongodb。
更改和删除将更难以处理。如果这很重要,那么在源头插入数据可能是最好的选择。
你需要将数据插入到mysql中吗?你能用mongodb做到这一切并省去所有麻烦吗?
DC