Является ли реализация Parse Array оптимизацией для больших объемов данных?
Допустим, мы объявили класс "Видео", и один из столбцов в этом классе - "Комментарии". Каждый комментарий представляет собой строку, а столбец комментариев представляет собой массив с множеством строк.
Конечно, это архитектура, которая работает, но я не уверен в этом, когда речь идет о большом количестве комментариев на видео.
Предполагая, что есть клиент, который принимает 10 комментариев каждый раз: video.comments[:10]
, Означает ли тот факт, что я получил массив комментариев, что остальные тонны комментариев также были получены? Или Parse сделал оптимизацию для нас, чтобы получать только те комментарии, которые были получены?
Какое решение для таких проблем?
Решение, о котором я думал, это написать сервис на стороне сервера, который отвечает на массив только необходимых комментариев, но это бесполезно, если Parse уже предлагает нам решение, подобное этому, в определении их массива в DB.
1 ответ
Я бы не вставлял их в массивы. Я работал с такими массивами данных, как эта, и могу быстро выйти из-под контроля и неэффективно.
Я бы порекомендовал вам иметь отдельную таблицу, которая включает в себя идентификатор объекта видео, комментарий, пользователя, который сделал это, и т. Д. Затем, чтобы получить комментарии, которые вы запросите в классе VideoComment, equalTo("videoId", videoId);
и вы можете использовать стандартную нумерацию запросов (skip + limit), чтобы получить нужные вам комментарии.