Лучший способ автоматизировать обновление хранилища данных движка приложений Google из внешнего источника? - PullRequest
3 голосов
/ 25 июля 2011

Я прочитал «Лучший вариант для хранилища данных Google App Engine и внешней базы данных» , и я уже рассмотрел SDC (мы уже используем его для некоторых целей).Тем не менее, мне нужно иметь возможность автоматизировать обновление хранилища данных каждые 15 минут или около того.При использовании cronjob в AppEngine пользователь не присоединяется к действиям, поэтому он не может аутентифицироваться в SDC.Обратите внимание, что внешняя БД находится за брандмауэром (если это не было очевидно из приведенного выше оператора SDC).

Есть ли способ заставить SDC работать с каким-либо запланированным + автоматическим действием?Если нет, то какой будет рекомендуемая альтернатива?

1 Ответ

1 голос
/ 03 августа 2011

Я знаю, что глупо отвечать на ваш собственный вопрос, но подумал, что могу также опубликовать свое решение, поскольку здесь нет ответа.

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

Я использовал Remote API и создал приложение Python, которое будет находиться за брандмауэром. В запланированном cron я запрашиваю данные с SQL Server, запрашиваю данные из хранилища данных для приложения, а затем добавляю / обновляю / удаляю хранилище данных только с теми вещами, которые изменились с момента последнего запуска приложения. В этот момент я отправляю данные обратно в хранилище данных. Для повышения эффективности вы также можете настроить его на выдачу партиями (как проповедуется в документации Datastore).

Это решение будет работать для текущего приложения, но я определенно мог видеть настройку службы RESTful с аутентификацией для ситуаций, которые не будут лучшим планом атаки.

...