如何为未使用的Symfony数据实现冷存储?

时间:2018-06-13 14:33:31

标签: php symfony doctrine

我正在运行一个Symfony 2.8网络应用,允许用户存储和管理多个不同的数据实体

随着时间的推移,数据库越来越大,大量数据属于不再使用的非活动/放弃帐户。

当然,识别这些帐户非常容易,并且可以简单地删除相应的数据。但是,我永远无法确定用户是否可以返回其帐户并重新开始使用他的数据。因此,我想实施两个步骤:

  1. 如果用户3个月未访问其数据,则数据将从生产数据库移至冷存储。这只是另一个包含必要表以保存用户数据的数据库。
  2. 如果用户12个月未访问其帐户,则帐户和数据将被删除。
  3. 如何设置这样的冷藏库?

    根据Symfony文档,使用两个不同的EntityManagers来连接两个不同的数据库应该没问题。

    但是如何管理和设置冷存储数据库?

    如何告诉Symfony / Doctrine为生产数据库和冷存储库中的EntityAEntityB实体(数据)创建表,但{{1}表仅在生产数据库中(例如用户设置)?

    如何将实体从一个数据库/ EntityManger移动到另一个数据库/ EntityManger?有没有更有效的解决方案来实现这一点,而不是仅从一个EntityManger加载实体并将其持久保存在另一个实体管理器中?

    有什么最佳做法可以解决这个问题吗?

0 个答案:

没有答案