Я делаю простое приложение, в котором можно опубликовать любую вещь, и любой может прокомментировать эту запись. Нужно ли создавать группу сущностей, создающую каждую запись как родительскую и комментарии как дочерние? Если я ошибаюсь, как моделировать данные, содержащие сообщение и комментарии как сущности? Документация говорит, что существует ограничение на 1 запись/сек. Если мое приложение имеет высокий трафик, так как многие люди комментируют одну и ту же запись, в то же время возникнет проблема с транзакционным сбоем. Как это решить?Datastore entity для комментариев
ответ
Прежде чем начать кодирование на новой платформе, сначала сделайте немного исследований и попытайтесь в полной мере понять все функции и нюансы.
Чтобы ответить на ваш вопрос, ДА, вы можете создать группу Entity с исходным постом в качестве родительского, а затем каждый комментарий в качестве дочернего элемента, но ПОЧЕМУ?
Что вы пытаетесь достичь? Имея сообщение с прикрепленными к нему комментариями, верно? Почему бы просто не сохранить их всех в ОДНОМ объекте?
У объектов есть атрибуты (поля); поэтому вы можете иметь POST, COMMENTS в качестве типов полей Entity Thread. Поля COMMENTS attribute/могут быть массивом строк или текста или объектов по вашему усмотрению.
Поэтому, когда вы показываете данные, выбираете объект Thread и отображаете его поле POST (исходное сообщение), а затем под ним отображаете поле COMMENTS (извлекаете строки из массива строк, а затем отображаете их в порядке).
Но проблема, которую я вижу здесь, - это ограничение размера сущности. Если сообщение получает много комментариев, то оно, очевидно, превышает предел размера объекта, то есть 1 МБ тогда? – matrix
Затем вы начинаете новую запись, и когда вы просите детей по теме, вы получаете оба набора комментариев. –
Точно. Как вы храните объект, не имеет значения, что вы должны учитывать, это стоимость. Если вы просто структурируете свою сущность в соответствии с структурой родительских детей без необходимости (путем разделения сообщений/комментариев), вы ВСЕГДА вынуждены делать две выборки и два чтения каждый раз, когда вы вытягиваете сообщение со своими комментариями. Оптимизация данных здесь - название игры; без оптимизации, вы можете поместить КАЖДЫЙ комментарий в объект, если хотите, он работает ... Это просто очень дорого. –
- 1. Google Datastore overusing entity «types»
- 2. Параллельное пишет различные свойства GAE Datastore Entity
- 3. Update Entity Appengine Datastore with Go
- 4. Не удается получить Entity из Datastore Key
- 5. Appengine datastore phantom entity - непоследовательное состояние?
- 6. Что такое Datastore Entity Fetch Ops?
- 7. Форма комментариев для комментариев
- 8. App Engine Datastore и низкоуровневый API
- 9. Python ndb Datastore положить список в Datastore
- 10. GAE Datastore со значением Datastore?
- 11. GAE Datastore: нормализация?
- 12. Почему у объекта Entity Datastore google appengine нет пустого конструктора?
- 13. способ преобразования appengine datastore Entity в мой объект?
- 14. Wordpress Plugin, вставка комментариев для комментариев
- 15. Создать функцию комментариев для комментариев в JavaFX
- 16. Структура mysql для комментариев и комментариев отвечает
- 17. GAE datastore (сохранить объект)
- 18. Cloud Datastore возвращает 413 Request Entity Too Large
- 19. Проверить дублирование в gae datastore
- 20. GAE Чтение из Datastore
- 21. Невозможно использовать приложение datastore для приложений
- 22. Datastore query with limit
- 23. Kinvey DataStore не сохраняет
- 24. Datastore Запрос возвращает нуль
- 25. Facebook фотографии комментариев, комментариев
- 26. GAE PHP Datastore Query
- 27. Как настроить jndi.properties для DataStore?
- 28. Область JavaEE для Morphia Datastore?
- 29. Вычислительная недвижимость для Google Datastore
- 30. Convert Default Dropbox Datastore to Shareable Datastore
Вам нужно сначала поехать, поскольку мы не можем просто написать код для вас - попробуйте, а затем задайте новый вопрос, когда вы столкнетесь с проблемой кодирования. – ArtOfCode
думать об этом как о функции, а не о проблеме. –