Answer the question
In order to leave comments, you need to log in
Where to store the data of deleted records in the database?
Подскажите, пожалуйста, есть база на 500тыс записей. В сутки примерно 1тыс удаляется, 1тыс добавляется. Сейчас старые данные просто удаляются, но появилась необходимость просматривать то что было удаленно. Поэтому думаю лучше копировать запись из основой базы в отдельную "базу для удаленных" и удалять из основной (1) или ставить статус deleted = 1 в основной базе и оставлять (2).
Но так получается, что база будет постоянно расти и теоретически нагрузка будет увеличиваться, а производительность уменьшаться. Удаленные записи уже никак не будет использоваться. Только иногда просмотреть. Что то вроде системы логов.
Answer the question
In order to leave comments, you need to log in
It is better to add the deleted field to the tables and write a separate procedure for displaying the deleted ones.
There is a similar question SEE AND HERE.
-------------------------------------------------- -----
What is the right way to deal with unnecessary records in the database...
bases - they always grow;)
Better - mark. You don't need them right now. But the day after tomorrow, you suddenly need to do some kind of analytics ....
When an object is deleted, the time of deletion is recorded in the deleted_at column, and filters are applied everywhere in the model so as not to display deleted objects. To get remote objects, it is better to create a separate scope.
I like how this is implemented in Laravel, you can look at the details in the documentation .
As for MySQL, there is an option to restore recently deleted objects from the logs :mysqlbinlog binary_log_file > query_log.sql
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question