Google App Engine: знакомство с API хранилища данных для людей с опытом работы с SQL?

Есть ли у кого-нибудь полезная информация, кроме документации Google App Engine, предоставленной Google, которая дает хороший обзор для людей с опытом работы с MS SQL для эффективного переноса своих знаний и эффективного использования API хранилища данных Google App Engine.

Например, если у вас есть самостоятельно созданная таблица пользователей и таблица сообщений

Каким образом эта структура будет представлена ​​в Google App Engine, если существует связь между пользователями и сообщением (связанными с помощью идентификатора пользователя)?

SELECT * FROM Users INNER JOIN Message ON Users.ID = Message.UserID

person TimLeung    schedule 11.04.2009    source источник
comment
Документы Google App Engine - хорошее место для начала. Читали ли вы их?   -  person Thomas L Holaday    schedule 11.04.2009
comment
Да, я сейчас их читаю. Я не видел вкладку статей перед тем, как опубликовать этот вопрос. Простого пошагового руководства и схемы API было недостаточно. Ссылки приведены ниже :)   -  person TimLeung    schedule 12.04.2009


Ответы (6)


Вот хорошая ссылка: Один ко многим Присоединяйтесь с помощью Google App Engine.

http://blog.arbingersys.com/2008/04/google-app-engine-one-to-many-join.html

Вот еще одна хорошая ссылка: Многие ко многим присоединяются с помощью Google App Engine:

http://blog.arbingersys.com/2008/04/google-app-engine-many-to-many-join.html

Вот хорошее обсуждение двух приведенных выше ссылок:

http://groups.google.com/group/google-appengine/browse_thread/thread/e9464ceb131c726f/6aeae1e390038592?pli=1

Лично я нахожу этот комментарий в обсуждении очень информативным о хранилище данных Google App Engine:

http://groups.google.com/group/google-appengine/msg/ee3bd373bd31e2c7

В масштабе вы совершаете кучу вещей, которые кажутся неправильными, но этого требуют цифры, которые мы используем. Пойдите, посмотрите переговоры EBay. Или прочтите сообщения о том, сколько экземпляров базы данных работает FaceBook.

Простая правда в том, что то, что мы узнали в uni, отлично подходит для приложений автоматизации бизнеса малых и средних корпоративных приложений, где нагрузка была предсказуемой, и было достаточно денег, чтобы купить сервер, необходимый для обработки нагрузки 50 человек, выполняющих данные. вход в учетную запись или приложение для бизнес-планирования и контроля ....

Поискал еще немного и наткнулся на эту статью в Google Doc:

http://code.google.com/appengine/articles/modeling.html

App Engine позволяет создавать простые в использовании отношения между объектами хранилища данных, которые могут представлять реальные вещи и идеи. Используйте ReferenceProperty, когда вам нужно связать произвольное количество повторяющихся типов информации с одним объектом. Используйте списки ключей, когда вам нужно разрешить множеству разных объектов совместно использовать другие экземпляры друг с другом. Вы обнаружите, что эти два подхода предоставят вам большую часть того, что вам нужно для создания модели, лежащей в основе великих приложений.

person TimLeung    schedule 11.04.2009

Могу ли я дополнить отличный ответ выше ссылкой на видео:

http://sites.google.com/site/io/building-scalable-web-applications-with-google-app-engine

Это отличный доклад Бретта Слаткина из Google, который в течение часа рассказывает о том, как вам нужно думать о своем приложении, прежде чем вы сможете рассчитывать на его хорошее масштабирование. Есть несколько настоящих WTF (например, no count () в запросах к базе данных), которые заставят вас бороться, если вы исходите из реляционного фона.

person Neil Trodden    schedule 19.05.2009

Я думаю, что это основы: ключи и группы сущностей ищите в документации appengine. (Я здесь новенький, поэтому не могу разместить ссылку)

person Vincnetas    schedule 19.05.2009

Я работал над этим, но не являюсь экспертом, хотя движок приложений Google - это очень хорошая вещь, и это будущее, поскольку он реализует платформу как услугу и программное обеспечение как услугу. Механизм приложений Google предоставляет нереляционную базу данных. Так что здесь нельзя писать отношения.

С уважением, Гаурав Дж.

person Community    schedule 15.06.2009

Эти ссылки великолепны, но в основном они ориентированы на Python, я использую GWT и, следовательно, должен использовать java-аромат GAE, есть ли у кого-нибудь примеры того, как достичь этих эквивалентностей "соединения" в java-версии GAE?

Привет, Джон

person Community    schedule 02.10.2009
comment
Ознакомьтесь с документацией по API на сайте Google App Engine: code.google.com / appengine / docs / java / datastore и более конкретно: code.google.com/appengine/docs/java/datastore/ - person Tom van Enckevort; 02.10.2009

Автономный SDK GAE довольно сложно использовать для ввода данных и извлечения данных из хранилища данных Google App Engine.

«Objectify» - это расширение GAE, которое значительно упрощает эти операции. Вики-страницу Objectify и исходный код можно найти здесь. Я настоятельно рекомендую использовать Objectify в вашем проекте GAE.

http://code.google.com/p/objectify-appengine/

Вот несколько руководств по использованию Objectify с движком приложения. Следуйте этим инструкциям, и вы сразу же сможете сохранять и извлекать данные.

http://www.fishbonecloud.com/2010/11/use-objectify-to-store-data-in-google.html

person Fishbone    schedule 24.11.2010