2011-02-16 442 views
1

我目前正在使用Zend Framework開發一個大型管理系統(在PHP中使用Zend Framework,但這不是真正解決這個問題的方法),在這個系統中我必須管理多個條目。每個條目都有許多字段,並以1對多關係(通過一個外鍵)跨越兩個表。第一個表中大約有50個字段,第二個表中有30個字段。數據庫條目修改歷史

我現在處於對用戶(和一些自動化任務)所做的不同修改進行歷史跟蹤的階段。每個條目可能會最終部分或全部回滾到先前的值。

我在考慮使用類似於CMS Typo3中存在的系統。一個表來管理整個歷史具有以下字段

  • history_id
  • entry_id
  • entry_table
  • last_modifcation_timestamp
  • last_modification_user
  • 數據

的數據將是「連載「以json或xml格式。

我通過這種方法擔心的是加班時間,歷史表的內容會成指數增長。爲了解決這個問題,我想我可以建立一個新的數據庫來管理這個歷史,然後每年向用戶顯示歷史數據。

我在尋找有關改進此解決方案和簡化實施的方法的建議。任何意見或文件,以幫助我將受到歡迎

+0

你只是序列化舊數據,並假設最新版本的數據在其他表中? – Chris 2012-03-26 12:15:13

回答

1

我會添加一個閾值,並刪除或轉儲到外部文件所有條目超過一定的時間。