데이터베이스가 너무 커져 현재 몇 가지 성능 문제가 있습니다. 지난 10 년 동안 저장된 데이터가 있으며 2 년이 지난 데이터를 새 데이터와 동일한 테이블에 저장해야하는 이유는 알 수 없습니다.
데이터베이스 관리에 대한 심오한 경험이 없기 때문에 오래된 데이터를 보관하는 가장 좋은 방법을 찾고 있습니다.
정보
데이터베이스에는 총 310'000'000 개의 레코드가 있습니다.
데이터베이스는 하드 디스크에 250GB가 필요합니다.
- 서버 버전은 호환성 수준이 SQL Server 2005 (90) 인 SQL Server 2008이지만 곧 SQL Server 2012로 업그레이드 할 계획입니다.
두 가지 가능성에 대해 생각했습니다.
새로운 데이터베이스
프로덕션 서버의 데이터베이스와 유사한 데이터베이스를 작성하고 모든 이전 데이터를 새 데이터베이스에 삽입하십시오.
- 단점 : 우리 환경에서는 연결된 서버를 사용할 수 없으므로 필요한 경우 기존 데이터를 결합하기가 어렵습니다.
역사 스키마
프로덕션 데이터베이스에서와 동일한 테이블을 사용하여 새 스키마 fe [hist] 를 작성하십시오 . 이 새 테이블의 모든 이전 데이터를 새 스키마에 삽입하십시오.
- 장래에 오래된 데이터가 필요한 경우 쉽게 결합
- 다른 솔루션 중 하나를 선호합니까?
- 왜?
- 더 나은 가능성이 있습니까?
- 이 작업을 쉽게 수행 할 수있는 기존 도구가 있습니까?
- 다른 생각?
미리 감사드립니다
편집하다
추가 질문 :
새로 생성 된 아카이브 테이블에도 기본 / 외래 키가 필요합니까?
아니면 열이 있어야하지만 키 / 제약 조건이 없어야합니까?