备份AppEngine数据库(Google云端存储?) [英] Back up AppEngine database (Google cloud storage?)

查看:312
本文介绍了备份AppEngine数据库(Google云端存储?)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个AppEngine应用程序,目前有大约15GB的数据,在我看来,使用当前的AppEngine批量加载程序工具来备份这种大小的数据集是不切实际的。因此,我开始调查其他备份方式,并有兴趣了解人们可能用来备份其AppEngine数据的实际解决方案。

I have an AppEngine application that currently has about 15GB of data, and it seems to me that it is impractical to use the current AppEngine bulk loader tools to back up datasets of this size. Therefore, I am starting to investigate other ways of backing up, and would be interested in hearing about practical solutions that people may have used for backing up their AppEngine Data.

一开始,我开始认为Google Cloud Storage可能是一个不错的选择。我很想知道是否有人使用Google云端存储作为他们的AppEngine数据的备份经验,以及他们的经验,以及如果有任何指针或事情,我应该注意在下去这条路径之前。

As an aside, I am starting to think that the Google Cloud Storage might be a good choice. I am curious to know if anyone has experience using the Google Cloud Storage as a backup for their AppEngine data, and what their experience has been, and if there are any pointers or things that I should be aware of before going down this path.

无论我最终采用哪种解决方案,我想要一个备份解决方案来满足以下要求:

No matter which solution I end up with, I would like a backup solution to meet the following requirements:

1)合理地快速备份,并且合理快速恢复(即,如果严重的错误/数据删除/恶意攻击命中我的网站,我不想在恢复数据库的同时将其多次下来 - 通过快我是指小时,而不是天)。

1) Reasonably fast to backup, and reasonably fast to restore (ie. if a serious error/data deletion/malicious attack hits my website, I don't want to have to bring it down for multiple days while restoring the database - by fast I mean hours, as opposed to days).

2)我的AppEngine数据中的单独位置和帐户 - 即。我不想让有管理员访问我的AppEngine数据的人必须对备份数据位置有写/删除访问权限 - 例如,如果我的AppEngine帐户被黑客入侵,或者一个不满的员工决定删除我的所有数据,我想要与AppEngine管理员帐户分开的备份。

2) A separate location and account from my AppEngine data - ie. I don't want someone with admin access to my AppEngine data to necessarily have write/delete access to the backup data location - for example if my AppEngine account is compromised by a hacker, or if a disgruntled employee were to decide to delete all my data, I would like to have backups that are separate from the AppEngine administrator accounts.

总而言之,考虑到从云中获取数据似乎很慢/我想是一个基于云的备份解决方案,模拟磁带备份在过去将提供的作用 - 如果我有一个备份磁带,没有人可以修改该磁带的内容 - 但由于我不能得到一个磁带,我可以存储我的数据的安全副本某处,只有我可以访问吗?

To summarize, given that getting the data out of the cloud seems slow/painful, what I would like is a cloud-based backup solution that emulates the role that tape backups would have served in the past - if I were to have a backup tape, nobody else could modify the contents of that tape - but since I can't get a tape, can I store a secure copy of my data somewhere, that only I have access to?

种类尊敬的
亚历山大

Kind Regards Alexander

推荐答案

这里有几个选项,虽然没有一个是(目前)你想要的。

There are a few options here, though none are (currently) quite what you're looking for.

借助最新版本的1.5.5版SDK,我们现在可以直接与Google Storage进行连接,您可以查看此处。这样,您可以将数据写入Google存储空间,但据我所知,没有办法编写该应用程序无法删除的文件。

With the latest release of version 1.5.5 of the SDK, we now support interfacing with Google Storage directly - you can see how, here. With this you can write data to Google Storage, but to the best of my knowledge there's no way to write a file that the app will then be unable to delete.

实际上收集数据,您可以使用 App Engine mapreduce API 。它内置支持写入App Engine blobstore;

To actually gather the data, you could use the App Engine mapreduce API. It has built in support for writing to the App Engine blobstore; writing to Google Storage would require you to implement your own output writer, currently.

WoLpH建议的另一个选择是使用Datastore管理工具将数据备份到另一个应用程序。有一点额外的努力,你可以修改remote_api存根以禁止删除目标(备份)应用程序。

Another option, as WoLpH suggests, is to use the Datastore Admin tool to back up data to another app. With a little extra effort you could modify the remote_api stub to prohibit deletes to the target (backup) app.

你应该肯定做的一件事是,为您的Google帐户启用双重身份验证;这使得任何人更难控制您的帐户,即使他们发现您的密码。

One thing you should definitely do regardless is to enable two-factor authentication for your Google account; this makes it a lot harder for anyone to get control of your account, even if they discover your password.

这篇关于备份AppEngine数据库(Google云端存储?)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆