Я запутался в том, что Firestore считает своим составным пределом индекса 200.
Например, допустим, у меня тысячи пользователей, а у каждого пользователя тысячи символов. Я хочу, чтобы каждый пользователь мог сортировать своих персонажей, основываясь на разных параметрах этих персонажей. У меня есть следующая структура, где {} обозначает подстановочный знак:
users:
{user_ID}
user_name: {user_name}
user_email: {user_email}
characters:
{characterUID}
name: {name}
strength: {strength}
speed: {speed}
stamina: {stamina}
date_created: {timestamp}
Итак, в Android, я бы тогда сделал это:
Query query = fsDB.collection("users").document("user_ID").collection("characters")
.orderBy("strength").orderBy("name");
Или это:
Query query = fsDB.collection("users").document("user_ID").collection("characters")
.orderBy("speed").orderBy("date_created");
Затем я бы создал составной индекс в консоли Firebase как:
Collection Group: characters
Fields Indexed: strength , name
и
Collection Group: characters
Fields Indexed: speed, date_created.
Итак, это всего лишь 2 составных индекса в соответствии с Firebase? Или это умножается на количество пользователей, которых я имею?
Если оно умножается на количество пользователей, как мне следует реструктурировать мои данные, чтобы я не столкнулся с этой проблемой?
Спасибо -
Jeff