저는 직원 목표 웹 응용 프로그램을 작성 중입니다.데이터베이스 아카이브 대 시간대 기반 테이블/필드
리드/관리자는 팀 구성원과 논의한 후에 팀 구성원을위한 목표를 설정합니다. 이것은 조직이 따르는 감정주기에 따라 매년/반년/분기입니다.
이제는 기간 기반 필드를 추가하거나 이전 분기/년 데이터를 보관하는 것이 더 좋은 방법입니다. 사용자가 이전 목표 (너무 자주 활동하지 않음)를보고 싶을 때 해당 날짜에 속한 아카이브를 임시 테이블에 복원하여 직원에게 보여줄 수 있습니다.
포인트
보관에 시작 : 데시벨 크기, 간단한 DB 쿼리의 결과를 감소, 누군가가 오래된 데이터를 볼려고 오버 헤드가 추가됩니다.
시간 기간 기반 필드/테이블 : 쿼리에서 하나 이상의 추가 조인, 이전 데이터가 현재 데이터와 유사하게 처리되므로 이전 데이터를 검색하는 데 오버 헤드가 발생하지 않습니다.
추신 : 성능면에서 최적화를 달성 할 수 있다면 공간 비용이 들지 않습니다. 이는 웹 앱이며 최고 시간대에 조직의 모든 직원이보고/업데이트 할 것이기 때문입니다. 그래서 기간을 제거하면 내 쿼리가 훨씬 간단 해집니다. 감사합니다.
시간 필드를 제공하지 않는 장점은 삽입/업데이트/삭제와 관련된 쿼리가 훨씬 간단해진다는 것입니다. 따라서 우리는 향상된 성능과 확장 성을 얻을 수 있습니다. –