Я хотел бы услышать ваше мнение об эффективной реализации отношений "один ко многим" с NDB Python. (например, Person (one)-to-Tasks (many))
В моем понимании есть три способа его реализации.
- Использовать аргумент 'parent'
- Использовать "повторное" структурированное свойство
- Использовать свойство "repeat" Key
Я выбираю способ, основанный на логике ниже, но имеет ли это смысл для вас? Если у вас есть более логичная логика, пожалуйста, научите меня.
-
Используйте аргумент 'parent'
- Транзакционная операция требуется между этими объектами
- Двунаправленная ссылка требуется между этими объектами
- Сильно намерены отношения "родитель-ребенок"
-
Используйте 'repeat' Структурированное свойство
- Не нужно использовать "много" сущность отдельно (всегда, используется с "одной" сущностью)
- "много" сущность ссылается только на "единую" сущность
- Число повторений меньше 100
-
Использовать свойство 'repeat' Key
- Необходимо использовать индивидуальность "много"
- "много" сущность может передаваться другими объектами.
- Число повторений более 100
No.2 увеличивает размер объекта, но мы можем сохранить операции хранилища данных. (Нам нужно использовать проекционный запрос, чтобы уменьшить время процессора для десериализации). Поэтому я использую этот способ как можно больше.
Я очень ценю ваше мнение.