У меня есть проект биллинговой системы, где у меня есть база данных учетных записей с таблицами, которые хранит долг пользователя, операции, статистика и т.д.Один раз учетная запись пользователя
Теперь помимо обычных пользователей я должен иметь другой тип учетной записи который является временным и требуется только до тех пор, пока пользователь считается использующим предоставленные услуги до тех пор, пока он не выставит счет, а учетная запись будет закрыта.
Первая мысль заключалась в том, чтобы создать нового пользователя для каждой новой продажи/использования услуг, но похоже, что в конечном итоге у меня появятся тысячи аккаунтов.
Второй подход будет иметь временный пул учетных записей. Система будет генерировать новую учетную запись, если нет свободной временной учетной записи или назначить ее из пула по мере необходимости.
Таким образом, в основном это временные счета идентифицируют фактическое лицо и его транзакции в течение ограниченного времени.
Любые идеи для лучших практик в моей ситуации?
Благодарим вас за ответ. Временные пользователи будут фактическими пользователями в базе данных. У меня будет унаследованная таблица, привязанная к базовой таблице пользователей. Итак, при этом все транзакции будут сохранены, и они никогда не будут удалены так же, как для обычных пользователей. Что можно сделать, это периодическое слияние транзакций с одной временной учетной записью, но даже это не требуется. С точки зрения статистики, я не требую знать, для какой конкретной временной транзакции пользователя была сделана, поскольку я воспринимаю их как одного логического гостевого пользователя. Что вы думаете об этом подходе? – NullReference
Если вы действительно можете просто выбросить их, то мой первый выбор будет удалять период с истекшими записями. –