首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Parse objectId转换为Mongo ObjectId?

将Parse objectId转换为Mongo ObjectId?
EN

Stack Overflow用户
提问于 2016-07-07 20:28:34
回答 1查看 2.2K关注 0票数 2

我正在尝试将数据从Parse迁移到一个使用Mongo作为数据库的新项目(没有Parse/Parse Server)。由于两个项目之间的模式不同,我正在手动编写一个迁移脚本来实现这一点。

据我所知,Parse似乎对其对象使用10字符长的it (数字、小写字母和大写字母的组合),而Mongo使用24个字符的长it(12个字节表示为十六进制)。

现在,当将文档的数据从旧项目迁移到新项目时,我使用了一个函数,该函数将解析ID转换为惟一的ObjectId (它将每个字符转换为2位数字的十六进制值,然后用4个零填充20个字符的字符串)。

这样做好吗?我避免使用Mongo的自动ObjectId生成,以防我需要重新迁移任何旧的Parse文档,并在新数据库中找到匹配的文档。我知道在Mongo中自动生成的ObjectIds还嵌入了一些其他信息,比如创建日期,但是我认为这并不重要,我可以使用我的自定义ObjectId生成器吗?但是,我不确定对性能的影响/如果我只是以错误的方式进行这种迁移。

EN

回答 1

Stack Overflow用户

发布于 2016-07-07 21:23:12

默认情况下,MongoDB使用_id作为主键。为了避免碰撞,_id必须是唯一的。将唯一的ObjectId生成到_id的方式是很好的。只要它们是独一无二的,你甚至可以减少20个字符的衬垫,以节省空间。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/38254689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档