процессе работы программа шлёт каждому юзеру один раз одно сообщение. Когда он его получает, я выставляю некий флажок is_get_message в БД со значением TRUE. теперь больше он не получит сообщение. Работает. Отлично.
Наступил такой момент, что я создал много разных функций в своей программе, логика в которых устроена именно таким образом, что каждый раз проверяется какой-то флажок, и при некоторых условиях, он меняется и больше он по сути не нужен, кроме как для удостоверения того, что пользователь уже выполнял это действие и так постоянно (флажок больше не изменит значение). Так в моей модели Пользователя существует ОЧЕНЬ много флажков и их значения не изменяются, и они засоряют базу данных, но и убрать я их не могу, так как программа начнет неправильно работать без них.
Поделитесь опытом, что бы вы сделали в таком случае и как правильно выстроить архитектуру программы, избегая этих флажков.
Созревает вопрос: а зачем их убирать, если все и так работает отлично? Моя интуиция подсказывает что я что-то делаю не так и эти дополнительные столбцы, возможно, замедляют работу (но это не точно). Прошу помочь 🆘
Можно кодировать флажки битами в целом поле. Если нет необходимости делать быстрый поиск и сортировку по флажкам.
Обсуждают сегодня