2010-06-21 23 views
0

我正在尋找一個應該是關係數據庫的數據庫系統。但是一個主要特徵是它忘記了條目以適應某個特定條件,比如在特定大小的數據庫上「最近最少使用」。換句話說,我想要一種DB中的'弱引用'。關係數據庫與類似緩存的丟棄行爲

有沒有這樣的解決方案?

你對這個想法有什麼看法:有一個通常的RDBMS,爲每個條目設置一個時間戳,並對某些約束(如DB大小)進行定期檢查。如果需要,最舊條目的X將被刪除,並且引用條目將從現在開始指向一個特殊的sentinel節點,以表示'該條目已消失'。

回答

0

聽起來好像你正在談論關於在RDBMS中存檔數據。我通過ETL程序在RDBMS系統中實現了這一點。

如果您打算刪除數據,您將需要一個單獨的表,您將UNION與,以便您可以在您的應用程序中指出該記錄已被存檔。

這方面的一些想法:

  1. 確保你沒有被歸檔的數據違反任何商業模式。
  2. 確定符合您標準的非活動商業交易。您可能會遇到幾個類別,每個類別都有其不同類型的歸檔規則。不要存檔任何公開交易 - 他們是PITA重建。
  3. 圖進行數據存檔
  4. 確保用戶應用程序透明性,無論數據位置/存檔
  5. 的實施
  6. 通常歸檔數據都會針對每個數據集的該數據保留策略單獨的DB的時間表可能在同一臺機器上運行(推薦用於許可成本purpuses)或另一臺機器。
  7. 即使檔案本身可以通過將真正的舊數據放入文本轉儲來優化。
  8. 備份,備份,備份 - 這是一個非常敏感的操作。 Double,Triple檢查備份。

所有這些都可以用市場上幾乎所有的ETL程序完成。