0

Я имею в виду TOTHE датастора инструмент администратора описано здесь: http://code.google.com/appengine/docs/adminconsole/datastoreadmin.htmlЯвляется ли копирование объектов из одного приложения в другое для резервного копирования ваших данных?

Один из способов резервного копирования локально с помощью bulkloader.py, но я любя это решение лучше, как ваши данные остаются в облаке Google и может быть легко переносится из одного приложения в другое с помощью кнопки в консоли администратора на основе сущности по сущности. думая о том, что у вас есть два приложения, один из которых я могу восстановить вручную каждую неделю, а другой, который фактически служит пользователям. Приложение резервного копирования может нести некоторые расходы на хранение, но общие затраты будут минимальными, поскольку не будут использоваться экземпляры Front/Backend, за исключением случаев, когда это необходимо для резервных копий ...

+0

Какая польза от этого? Ваши данные (в обоих приложениях) будут недоступны, если в Google произошел сбой. Если у Google нет сбоев, у них есть свои собственные системы резервного копирования. –

+0

Неправильная строка кода и ваши данные могут быть разрушены, если это произойдет, вы можете восстановить затронутую модель одним щелчком мыши на основе последней резервной копии этой модели. Это всего лишь один сценарий. Но вы правы, что если Google не работает, данные будут заблокированы в обоих. Если это происходит в течение расширенного периода времени, и вы хотите изменить платформы, тогда у вас возникнет гораздо большая проблема переноса вашего приложения на что-то вроде AWS или Heroku. Правильно? –

ответ

1

Резервное копирование данных одного приложения GAE в другое приложение, разумеется, не рекомендуется меня. Для меня есть несколько причин для резервного копирования:

  1. Чтобы защитить себя от катастрофического сбоя со стороны Google.
  2. Для защиты от ошибок программирования с вашей стороны, что приводит к значительной потере данных.
  3. Для защиты от вашего аккаунта Google, который был отозван.

Резервное копирование в другое приложение GAE относительно мало по каждому из них.

  1. Если вы используете High Replication datastore, вы уже распространение данных по всему облаку Google, таким образом, что снова просто кажется излишним, - но не в смысле высокой доступности слова. Единственный способ, которым Google собирается потерять ваши данные, - это катастрофическая катастрофа, и в этом случае оба ваших приложения могут оказаться в опасности.
  2. Если вы создаете резервную копию своих данных локально, вы можете хранить исторические снимки. Если вы просто выполняете резервное копирование в другое приложение, вы не храните исторические данные, поэтому у вас есть небольшая защита от ошибки программиста, если вы не поймаете его между временем, когда происходит ошибка, и когда вы собираетесь делать следующую резервную копию ,
  3. В случае, если Google по какой-либо причине убивает вашу учетную запись, вы теряете как приложения, так и все свои данные.

В конечном счете, создав резервную копию другого GAE, у вас все еще есть все яйца в одной корзине. Вы просто разделили свою корзину. Если ваши данные достаточно важны для резервного копирования вне вашего приложения, это достаточно важно для резервного копирования локально или для другого провайдера целиком. Это мое мнение.

+0

Любите свое объяснение. Спасибо, Кен.Итак, на данный момент вы используете bulkloader как способ хранения исторических снимков на диске? –

+1

Добро пожаловать. И да, я использую app_cfg для загрузки всех моих данных периодически, особенно перед обновлением. Еще лучше планировать его на кроне. –

+0

Просто хотел отметить, что в 1.6.2 есть экспериментальный инструмент, который позволит вам делать резервные копии. Теперь у меня нет никаких подробностей - просто следите за обновлениями и будьте в поиске нового SDK, когда он падает. –

1

Мы периодически копируем наши данные в другое приложение для использования в качестве нашей среды разработки, но, как указывали другие, это не защищает ваши данные от крупной катастрофы приложения (как маловероятно, так как это ...).

Лучшее решение, которое я нашел для архивирования данных для аварийного восстановления, - это вытащить его с помощью скриптов python. Google предоставляет либо EC2, либо локальный диск.

+0

Спасибо, Рик. Можете ли вы подробнее рассказать о том, какие настройки у вас есть с EC2? –

+1

Мы используем комбинацию сценариев оболочки, чтобы вытащить наш blobstore в плоские файлы и файлы хранилища данных в CSV-файлы и некоторые файлы сопоставления промежуточных отношений, а затем просто сохранить их на диске EBS. Мы периодически копируем EBS, чтобы иметь резервные копии. –

+0

Спасибо за объяснение. –