2010-06-21 3 views
0

관계형 데이터베이스 여야하는 데이터베이스 시스템을 찾고 있습니다. 그러나 주요 특징은 DB의 특정 크기에서 '가장 최근에 사용하지 않은'것과 같은 특정 조건에 맞는 항목을 잊어 버리는 것입니다. 다시 말해 DB에 일종의 '약한 참조'가 필요합니다.캐시와 같은 삭제 동작을하는 관계형 데이터베이스

이미 그런 해결책이 있습니까?

일반적인 RDBMS를 가지고 모든 항목에 대한 타임 스탬프를 설정하고 DB 크기와 같은 몇 가지 제약 조건에 대해 주기적으로 확인하는 방법에 대해 어떻게 생각하십니까? 필요한 경우, 가장 오래된 항목의 X가 제거되고 참조 항목이 '해당 항목이 사라짐'을 나타 내기 위해 지금부터는 특수 센티넬 노드를 가리 킵니다.

답변

0

RDBMS에서 데이터를 보관하는 것에 대해 이야기하는 것 같습니다. 필자는 ETL 프로그램을 통해 RDBMS 시스템에서이를 구현했습니다.

데이터를 제거하려는 경우 UNION을 사용하는 별도의 테이블이 필요하므로 앱에서 레코드가 아카이브되었음을 나타낼 수 있습니다. 이에

일부의 생각 :

  1. 는 보관 데이터가 어떤 비즈니스 모델을 파괴하지 있는지 확인합니다.
  2. 귀하의 기준과 일치하지 않는 비활성 비즈니스 트랜잭션을 식별하십시오. 각각 다른 종류의 보관 규칙이있는 여러 범주가 발생할 수 있습니다. 열려있는 트랜잭션을 보관하지 마십시오. 다시 작성하는 PITA입니다. 별도 DB로
  3. 일반적으로 보관 된 데이터가 간다 데이터의 각 세트에 맞게이 데이터 보존 정책에 관계없이 데이터 위치/보관
  4. 사용자를위한 애플리케이션 투명성을 확보 구현
  5. 데이터를 보관의 일정 밖으로
  6. 그림 동일한 컴퓨터 (라이센스 비용 지불 용으로 권장 됨) 또는 다른 시스템에서 실행될 수 있습니다.
  7. 심지어 아카이브 자체는 Really Really old 데이터를 텍스트 덤프에 넣으면 최적화 할 수 있습니다.
  8. 백업, 백업, 백업 - 매우 민감한 작업입니다. Double, Triple로 백업을 확인하십시오.

이 모든 작업은 거의 모든 ETL 프로그램을 통해 수행 할 수 있습니다.

관련 문제