Поддерживает ли движок приложений google с mysql (Cloud SQL) ГИС?

Я попытался найти некоторую документацию по этому поводу на сайтах движка приложений и облачных sql, но в любом случае не могу найти ничего, относящегося к нему. Я знаю, что вы можете выполнять ГИС-запросы с их настраиваемой опцией sql, и я знаю, что mysql поддерживает ГИС из коробки, но я также знаю, что для этого требуются некоторые библиотеки C, поддержка которых ограничена.

В частности, мне интересно узнать, поддерживает ли geo-django с использованием mysql gis с использованием комбинации app engine / cloud sql. (Или, может быть, если их индивидуальное предложение поддерживает геоджанго?)


person CoatedMoose    schedule 29.06.2012    source источник


Ответы (2)


GeoDjango с Cloud SQL не поддерживается. GeoDjango зависит от нескольких библиотек, которые недоступны в движке приложения. Любое приложение, зависящее от django.contrib.gis.db.models, выдает ошибку белого списка на сервере разработки ядра приложений. Предположительно, эквивалентная ошибка возникнет в экземпляре действующего движка приложения.

person CoatedMoose    schedule 30.07.2012

Да, Cloud SQL поддерживает пространственные запросы. Я не знаю, работает ли это с geodjango, но я не понимаю, почему это не так.

Имейте в виду, что для геопространственных запросов Mysql требуются таблицы myisam. Таблицы Myisam могут быть повреждены намного легче, чем таблицы innodb, поэтому вы должны быть очень осторожны при их использовании. В частности, если ваши данные часто меняются, вам следует ожидать, что время от времени придется восстанавливать их из резервной копии. В этом случае рассмотрите возможность использования вместо этого API поиска для геопространственных запросов. Если данные меняются нечасто (например, физический указатель магазина), таблицы myisam, вероятно, будут работать нормально.

person Ken Ashcraft    schedule 29.06.2012
comment
В моем случае данные либо изначально устанавливаются, а затем игнорируются, либо часто меняются и являются одноразовыми, поэтому я не ожидаю каких-либо проблем, но спасибо за указатель - я учту их при работе над будущими проектами. - person CoatedMoose; 30.06.2012
comment
Я также не знаю, что просто наличие поддержки в mysql означает, что она доступна в движке приложения. MySQL требует нескольких дополнительных библиотек (libcgeos + другие) для поддержки пространственных запросов. - person CoatedMoose; 30.06.2012
comment
@CoatedMoose Какая у вас была последняя настройка для Geodjango на Google App Engine и насколько успешно вы ее использовали? - person andilabs; 20.02.2015
comment
@andi мой ответ объясняет возникшие проблемы. В конечном итоге проект был зарезервирован, а затем полностью закрыт, поэтому никаких дальнейших попыток сделать движок приложения проекта совместимым не было. В последнее время я не исследовал ни Cloud SQL, ни GeoDjango, поэтому ситуация, возможно, изменилась. - person CoatedMoose; 21.02.2015
comment
MySQL innodb поддерживает пространственные запросы, начиная с версии 5.7. - person glmvrml; 14.03.2017