Existem problemas com esta solução 'Soft Delete' usando tabelas EAV?

Eu li algumas informações sobre o lado feio de apenas definir umdeleted_at em suas tabelas para indicar que uma linha foi excluíd

Nomeadament
http: //richarddingwall.name/2009/11/20/the-trouble-with-soft-delete

Há algum problema em potencial ao obter uma linha de uma tabela que você deseja excluir e transformá-la em algumas tabelas EA

Por exemplo

Vamos dizer que tenho duas mesasdeleted edeleted_rowespectivamente descritos a segui

    mysql> describe deleted;
    +------------+--------------+------+-----+---------+----------------+
    | Field      | Type         | Null | Key | Default | Extra          |
    +------------+--------------+------+-----+---------+----------------+
    | id         | int(11)      | NO   | PRI | NULL    | auto_increment | 
    | tablename  | varchar(255) | YES  |     | NULL    |                | 
    | deleted_at | timestamp    | YES  |     | NULL    |                | 
    +------------+--------------+------+-----+---------+----------------+

    mysql> describe deleted_rows;
    +--------+--------------+------+-----+---------+----------------+
    | Field  | Type         | Null | Key | Default | Extra          |
    +--------+--------------+------+-----+---------+----------------+
    | id     | int(11)      | NO   | PRI | NULL    | auto_increment | 
    | entity | int(11)      | YES  | MUL | NULL    |                | 
    | name   | varchar(255) | YES  |     | NULL    |                | 
    | value  | blob         | YES  |     | NULL    |                | 
    +--------+--------------+------+-----+---------+----------------+

gora, quando você deseja excluir uma linha de qualquer tabela, você deve excluí-la da tabela e inseri-la nessas tabelas como ta

    deleted
    +----+-----------+---------------------+
    | id | tablename | deleted_at          |
    +----+-----------+---------------------+
    |  1 | products  | 2011-03-23 00:00:00 | 
    +----+-----------+---------------------+

    deleted_row
    +----+--------+-------------+-------------------------------+
    | id | entity | name        | value                         |
    +----+--------+-------------+-------------------------------+
    |  1 |      1 | Title       | A Great Product               | 
    |  2 |      1 | Price       | 55.00                         | 
    |  3 |      1 | Description | You guessed it... it's great. | 
    +----+--------+-------------+-------------------------------+

Algumas coisas que eu vejo de imediato.

ocê precisará usar a lógica do aplicativo para fazer o pivô (Ruby, PHP, Python, etA mesa pode crescer bastante porque estou usandoblob para lidar com o tamanho desconhecido do valor da linha

Você vê outros problemas gritantes com esse tipo de exclusão suave?

questionAnswers(1)

yourAnswerToTheQuestion