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

StackOverflow https://stackoverflow.com/questions/739490

Вопрос

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

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

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

SELECT * FROM Users INNER JOIN Message ON Users.ID = Message.UserID
Это было полезно?

Решение

Вот хорошая ссылка:Присоединяйтесь "Один ко многим" с помощью 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, когда вам нужно связать произвольное количество повторяющихся типов информации с одним объектом.Используйте списки ключей, когда вам нужно разрешить множеству различных объектов совместно использовать другие экземпляры друг с другом.Вы обнаружите, что эти два подхода предоставят вам большую часть того, что вам нужно для создания модель, лежащую в основе отличных приложений.

Другие советы

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

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

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

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

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

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

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

Приветствия, Джон

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

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

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

Вот пара руководств по использованию Objectify с app engine.Следуйте этим руководствам, и вы будете хранить и извлекать данные в кратчайшие сроки.

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

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top