首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >一种实用的Parse.com数据备份方法

一种实用的Parse.com数据备份方法
EN

Stack Overflow用户
提问于 2014-07-09 16:28:52
回答 3查看 3.6K关注 0票数 19

我们正在使用Parse.com构建一个iOS应用程序,但仍然无法找到有效备份数据的正确方法。

作为前提,我们已经并将拥有大量的数据存储行。假设我们有一个有100万行的类,假设我们已经备份了它,然后想要在发生危险情况(比如生产中的数据丢失)后将它带回Parse。

我们考虑的几个解决方案如下:

1)使用外部服务器进行备份

BackUp:-使用REST API不断地将数据备份到远程MySQL服务器(我们选择MySQL是为了进行自定义分析,因为对于我们来说,使用MySQL处理数据更快、更容易)

ImportBack: a) -从MySQL备份中重新创建JSON对象,并使用REST API发送回解析。假设我们使用批处理操作,允许使用一个查询同时创建50个对象,并假设每个查询需要1秒,100万个数据集将需要5.5小时才能传输到Parse。

b) -从MySQL备份中重新创建一个JSON文件,并使用仪表板手动导入数据。我们刚刚用这种方法尝试了700,000个记录文件:加载指示器大约花了2个小时才停止并显示左窗格中的行数,但现在它再也不会在右窗格中打开(它显示“操作超时”),并且距离上传开始已经超过6个小时了。

所以我们不能依赖1.b,1.a似乎需要太长时间才能从灾难中恢复(如果我们有1000万条记录,就像55小时= 2.2天)。

现在我们考虑以下几点:

2)不断将数据复制到其他应用程序

在Parse中创建以下内容:- production App: A- Replication App: B因此,当A处于生产状态时,每个查询都会复制到B中(不断使用后台作业)。当然,缺点是它会消耗掉A的突发限制,因为它只会使查询量翻一番。所以扩大规模的想法并不理想。

我们想要的是像AWS RDS这样的东西,它提供了一个每天自动备份的选项。我想知道这对Parse来说有什么困难,因为它是基于AWS基础设施的。

请让我知道,如果你对此有任何想法,将很高兴分享技术诀窍。

附言:

我们已经注意到上述想法中的一个重要缺陷。

如果我们使用REST API进行复制,那么所有类的所有objectIds都将被更改,因此每一个1to1或1toMany关系都会被破坏。

因此,我们考虑为每个对象类添加一个uuid。

这种方法有什么问题吗?我们想要实现的一件事是query.include(“ObjectName”)(或者在Obj-C中是“includeKey”),但是我想如果我们不把应用程序逻辑建立在objectId之上,这是不可能的。

正在寻找解决此问题的方法;但基于uuid的管理在Parse的数据存储逻辑下是否有效?

EN

回答 3

Stack Overflow用户

发布于 2014-12-20 10:36:36

我可以证实,今天,Parse确实丢失了我的数据。或者至少看起来是这样的。

在多个应用程序上检测到几个错误(由Parse Status twitter帐户同意)后,我们无法检索应用程序的数据,没有任何错误。

这是因为我们的一个类(类型指针)的一整列消失了,数据不再出现在仪表板中。

我们使用这个指针列来过滤/检索数据,所以返回的查询和集合都是空的。

因此,我们决定手动重新创建该列。一次偶然的机会,用相同的名称和类型重新创建了列,解决了这个问题,数据仍然在那里……我无法解释,但我真的认为,应用程序的反应就像是数据丢失了。

因此,自动备份和还原选项是强制性的,而不是一个选项。

票数 5
EN

Stack Overflow用户

发布于 2017-01-19 16:08:04

我在备份解析服务器数据时遇到了同样的问题。由于解析服务器使用的是mongodb,这就是为什么备份数据不是问题,我只是做了一件简单的事情。已从服务器下载mongodb备份。然后使用以下命令恢复它

mongorestore /path-to-mongodump (提取的文件)

由于解析已经变成了开放的source.Therefore,我们可以采用这种技术。

票数 1
EN

Stack Overflow用户

发布于 2015-07-29 22:03:37

对于意外删除,可以编写一个云函数'beforedelete‘来将当前行备份到另一个类。

对于常规备份,手动导出已更改的记录(使用筛选器)将非常有用。对于恢复,这需要您在数据浏览器中编写脚本/使用导入选项(不是很确定)。你也可以写一个云函数在你的备份服务器上复制数据(还没有尝试过)。

然而,在尝试使用云代码之前,您应该考虑到它的一些限制:https://parse.com/docs/cloud_code_guide#functions-resource

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

https://stackoverflow.com/questions/24648784

复制
相关文章

相似问题

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