Firebase правильно составить структуру RealtimeDatabase
У меня есть структура вида :
-tasks
--$taskUid
---key1:value1
---key2:value2
Перед получением сортирую бд по определенным ключам и беру по 10 за раз :
ref.queryOrdered(byChild: child).queryEnding(atValue: lastValue).queryLimited(toLast: 10)
Появилась задача фильтровать по двум ключам/значениям сразу, но тк firebase позволяет фильтровать сразу по одному значению за раз, пришлось смотреть в сторону пересмотра структуры.
Что именно мне нужно сделать : получать tasks не все подряд, а в зависимости от страны пользователя + сортировка по определенному ключу (это готово)
Я предположил такую структуру :
-countries
--all
---$taskUid
----key1:value1
----key2:value2
--us
---$taskUid
----key1:value1
----key2:value2
--ru
---$taskUid
----key1:value1
----key2:value2
но, тк я хочу оставить возможность брать все подряд (не зависимо от страны), то мне придеться вести изменения сразу в двух ветках all и в определенной стране (допустим, us), если же выведу все в отдельную ветку, а тут оставлю только ссылки на uid, то не смогу фильтровать. Подскажите, оптимальный ли способ я выбрал (вести изменения сразу в двух ветках) или же есть способ по лучше ?