Вот моя ситуация: я продаю торговые карты онлайн.Я храню их в пронумерованных «разделах» в коробках для карточек, где каждая секция содержит примерно 60-75 карточек.Имея около 150 разделов, нет простого способа найти карточки, которые люди заказывают без какого-либо программного обеспечения.Я создал скрипт Python, который берет список купленных карт, получает доступ к моей базе данных Firebase (Cloud Firestore) и возвращает разные номера разделов каждой карты.
Вот что я пытаюсь сделать: Я хочу оптимизировать запрос Firebase, чтобы минимизировать количество секций, которые мне нужно найти.У меня много дубликатов карточек, поэтому я считаю, что оптимизация такого запроса сэкономит мне значительное количество времени при поиске карточек.Я действительно понятия не имею, с чего начать.Кто-нибудь может помочь?
Пока что я создал базовый запрос, который получает каждую карточку отдельно и возвращает раздел.
Вот мой текущий запрос:
db = firestore.Client()
collection = db.collection(CARD_COLLECTION_NAME)
docs = collection.where("name", EQUALS, card_name).where(IS_SOLD_PROPERTY, EQUALS, False).get()
for doc in docs:
db.collection(CARD_COLLECTION_NAME).document(doc.id).set({
IS_SOLD_PROPERTY: True
}, merge=True)
return doc._data["inventory_section"]