-3

Я делаю простое приложение, в котором можно опубликовать любую вещь, и любой может прокомментировать эту запись. Нужно ли создавать группу сущностей, создающую каждую запись как родительскую и комментарии как дочерние? Если я ошибаюсь, как моделировать данные, содержащие сообщение и комментарии как сущности? Документация говорит, что существует ограничение на 1 запись/сек. Если мое приложение имеет высокий трафик, так как многие люди комментируют одну и ту же запись, в то же время возникнет проблема с транзакционным сбоем. Как это решить?Datastore entity для комментариев

+1

Вам нужно сначала поехать, поскольку мы не можем просто написать код для вас - попробуйте, а затем задайте новый вопрос, когда вы столкнетесь с проблемой кодирования. – ArtOfCode

+0

думать об этом как о функции, а не о проблеме. –

ответ

1

Прежде чем начать кодирование на новой платформе, сначала сделайте немного исследований и попытайтесь в полной мере понять все функции и нюансы.

Чтобы ответить на ваш вопрос, ДА, вы можете создать группу Entity с исходным постом в качестве родительского, а затем каждый комментарий в качестве дочернего элемента, но ПОЧЕМУ?

Что вы пытаетесь достичь? Имея сообщение с прикрепленными к нему комментариями, верно? Почему бы просто не сохранить их всех в ОДНОМ объекте?

У объектов есть атрибуты (поля); поэтому вы можете иметь POST, COMMENTS в качестве типов полей Entity Thread. Поля COMMENTS attribute/могут быть массивом строк или текста или объектов по вашему усмотрению.

Поэтому, когда вы показываете данные, выбираете объект Thread и отображаете его поле POST (исходное сообщение), а затем под ним отображаете поле COMMENTS (извлекаете строки из массива строк, а затем отображаете их в порядке).

+0

Но проблема, которую я вижу здесь, - это ограничение размера сущности. Если сообщение получает много комментариев, то оно, очевидно, превышает предел размера объекта, то есть 1 МБ тогда? – matrix

+0

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

+0

Точно. Как вы храните объект, не имеет значения, что вы должны учитывать, это стоимость. Если вы просто структурируете свою сущность в соответствии с структурой родительских детей без необходимости (путем разделения сообщений/комментариев), вы ВСЕГДА вынуждены делать две выборки и два чтения каждый раз, когда вы вытягиваете сообщение со своими комментариями. Оптимизация данных здесь - название игры; без оптимизации, вы можете поместить КАЖДЫЙ комментарий в объект, если хотите, он работает ... Это просто очень дорого. –

Смежные вопросы