계획 서버 데이터베이스 유지 관리
업데이트: 2009-04-30
이 문서의 내용
Background of Planning Server databases
Application databases in Planning Server
Staging databases in Planning Server
Outbound databases in Planning Server
Analysis Services databases in Planning Server
Planning Server physical database storage design
이 문서에서는 계획 서버 데이터베이스 관리자를 위한 내용을 다룹니다. 여기에서는 Microsoft Office PerformancePoint Server 2007에 고유한 몇 가지 데이터베이스 구현 영역에 대해 설명합니다. 프로덕션 시스템 구현을 준비하고 있고 사용자가 데이터베이스 관리자인 경우에는 이 문서를 읽어 보는 것이 좋습니다.
계획 서버 데이터베이스의 배경
물리적 데이터베이스 저장소 디자인은 데이터베이스 성능에 직접 영향을 줍니다. 일반적으로 계획 서버 고객은 시스템 데이터베이스의 실제 저장소 특성을 디자인할 때 어느 정도의 유연성을 발휘할 수 있습니다. 이 문서에서는 계획 서버 데이터베이스를 유지 관리하여 서버 시스템 성능을 최적화하기 위한 디자인 지침을 제공합니다.
계획 시스템 데이터베이스 및 계획 서비스 데이터베이스
각 계획 서버 설치에는 계획 시스템 데이터베이스(PPSPlanningSystem)와 계획 서비스 데이터베이스(PPSPlanningService)가 하나씩 있습니다.
계획 시스템 데이터베이스에는 다음과 같은 구성 요소가 들어 있습니다.
계획 시스템 보안 데이터
계획 형식 라이브러리 데이터
계획 시스템 수준 구성 데이터
계획 응용 프로그램 수준 메타데이터
계획 시스템 데이터베이스와 계획 서비스 데이터베이스는 모두 크기가 작으며 비교적 작은 크기로 계속 유지됩니다.
계획 시스템 데이터베이스 및 계획 서비스 데이터베이스는 직접 만들 수도 있고 계획 서버 구성 관리자를 실행하는 동안 만들 수도 있습니다.
계획 서버 구성 관리자에서 이러한 두 데이터베이스를 자동으로 만드는 경우 두 데이터베이스는 주 파일 그룹에 배치되며 기본 데이터 파일 크기와 자동 증가 크기가 50MB로 설정됩니다. 기본 로그 파일 크기와 자동 증가 크기는 20MB로 설정됩니다.
이러한 두 데이터베이스를 직접 만드는 경우 파일 그룹을 선택하고 초기 데이터베이스 및 로그 파일 크기의 기본 설정을 변경할 수 있습니다.
계획 서버의 응용 프로그램 데이터베이스
계획 시스템은 여러 계획 응용 프로그램으로 구성될 수 있습니다. 각 계획 응용 프로그램에는 계획 응용 프로그램 데이터베이스가 하나씩 있습니다. 이 응용 프로그램 데이터베이스에는 계획 응용 프로그램 메타데이터, 참조 데이터, 팩트 데이터, 워크플로 관련 데이터 및 서비스 브로커 데이터를 비롯한 모든 계획 응용 프로그램 데이터가 들어 있습니다. 데이터 보존 정책 및 계획 응용 프로그램에 포함된 모델 사이트와 모델 수에 따라 이 데이터베이스가 매우 커질 수 있습니다.
응용 프로그램 데이터베이스는 응용 프로그램을 만드는 프로세스가 진행되는 동안 만들어집니다. . 수동 또는 자동 방식을 선택하여 응용 프로그램 데이터베이스를 만들 수 있습니다.
계획 관리 콘솔의 응용 프로그램 만들기 사용자 인터페이스에서 수동으로 실행할 응용 프로그램 만들기 스크립트 생성 옵션을 선택하면 데이터베이스 관리자가 응용 프로그램을 만드는 프로세스를 진행하는 CREATE DATABASE/CREATE TABLE을 사용자 지정할 수 있습니다. 특히 데이터베이스 관리자는 응용 프로그램 데이터베이스를 만들 때 파일 그룹 정보를 추가하고 초기 데이터 파일 크기 및 초기 로그 파일 크기를 지정할 수 있습니다. 응용 프로그램을 만드는 프로세스에서 Microsoft SQL Server 2005 스크립트가 생성된 후 데이터베이스 관리자는 CreateAppDB.sql 및 TypeLibMasterSchema.sql을 편집하여 파일 그룹 정보와 데이터 및 로그 파일 크기를 추가한 후 이러한 스크립트를 직접 실행할 수 있습니다.
다른 방법으로 응용 프로그램 만들기 사용자 인터페이스에서 응용 프로그램 만들기 스크립트 자동 실행 옵션을 선택할 수 있습니다. 응용 프로그램 데이터베이스가 자동으로 만들어지고 기본 초기 데이터 파일 크기와 자동 증가 크기가 50MB로 설정됩니다. 기본 로그 파일 크기와 자동 증가 크기는 20MB로 설정됩니다.
계획 서버의 준비 데이터베이스
각 계획 응용 프로그램마다 계획 준비 데이터베이스가 하나씩 있습니다. 이 준비 데이터베이스는 응용 프로그램을 만드는 프로세스를 진행하는 동안 만들 수도 있고 이후에 직접 만들 수도 있습니다. 준비 데이터베이스는 버전 1 릴리스용 응용 프로그램 데이터베이스와 동일한 데이터베이스 서버에 있어야 합니다.
계획 서버의 아웃바운드 데이터베이스
계획 아웃바운드 데이터베이스에는 다른 용도로 사용할 수 있는 계획 서버 데이터가 들어 있습니다. 계획 관리 콘솔을 사용하여 데이터베이스를 데이터 대상으로 만들거나 등록할 수 있습니다.
계획 서버의 Analysis Services 데이터베이스
계획 서버 응용 프로그램의 모델 사이트는 항상 개별 Microsoft SQL Server 2005 Analysis Services 데이터베이스에 대응됩니다. Analysis Services 데이터베이스 이름은 계획 서버에서 자동으로 생성하며, 기본 이름은 <application label>_*<model site label>*입니다.
계획 응용 프로그램의 모든 모델 사이트가 같은 Analysis Services 서버를 가리키고 각 모델 사이트가 서로 다른 Analysis Services 데이터베이스를 가리키도록 구성할 수 있습니다. 계획 응용 프로그램 내의 모델 사이트가 다른 Analysis Services 서버에 있는 Analysis Services 데이터베이스를 가리키도록 구성할 수도 있습니다. 계획 관리 콘솔을 사용하여 모델 사이트 편집 창으로 이동하면 이러한 구성을 관리할 수 있습니다. 각 모델 사이트의 Analysis Services 컴퓨터 이름 필드에 값을 입력합니다. 자세한 내용은 계획 관리 콘솔 도움말을 참조하십시오.
참고
모델 사이트 또는 하위 사이트를 삭제하는 경우 Analysis Services 큐브를 직접 삭제해야 합니다.
계획 서버 물리적 데이터베이스 저장소 디자인
계획 서버 데이터베이스의 실제 저장소를 디자인할 때는 SQL Server의 데이터베이스 저장소 디자인 항목을 참조하십시오. 물리적 데이터베이스 저장소 디자인은 계획 서버 시스템의 전체 성능에 매우 큰 영향을 줍니다. 물리적 데이터베이스를 얼마나 잘 구현하는지에 따라 성능은 물론 시스템의 전반적인 상태가 크게 달라집니다.
이 단원에서는 물리적 데이터베이스 저장소 디자인과 관련된 데이터베이스 데이터 파일 및 로그 파일 배치, 초기 파일 크기, 성능 향상을 위해 적절히 구성된 로그 파일, 파일 그룹 디자인, 계획 서버 시스템의 올바른 임시 데이터베이스 디자인 및 데이터베이스 복구 모델 등의 영역에 대해 설명합니다. 이러한 일반적인 디자인 지침의 대부분은 SQL Server에 설명되어 있습니다.
데이터베이스 데이터 및 로그 파일
SQL Server 2005에서는 일련의 운영 체제 파일을 통해 데이터베이스를 매핑합니다. 데이터와 로그 정보는 별도의 파일에서 관리되며, 각 파일은 데이터베이스 하나에서만 사용됩니다. 데이터베이스 데이터 파일 및 로그 파일에 대한 자세한 내용은 SQL Server을 참조하십시오.
계획 서버에서 자동으로 만든 모든 계획 서버 데이터베이스의 경우 기본 초기 데이터 파일 크기와 자동 증가 크기가 50MB로 설정됩니다.
응용 프로그램 데이터베이스 및 준비 데이터베이스의 경우 고객 측의 계획 서버 데이터베이스 관리자가 용량 계획을 수행하고 조직의 데이터 및 데이터 보존 정책을 사용하여 초기 데이터 파일의 크기를 적절히 결정하는 것이 좋습니다. 예를 들어 각 모델 사이트에 사용할 모델 수와 응용 프로그램에 사용할 모델 사이트 수를 판단합니다.
데이터베이스 데이터 파일 및 로그 파일을 디자인할 때의 일반적인 몇 가지 지침은 다음과 같습니다.
데이터베이스 데이터 및 로그 파일의 크기는 자동으로 커지도록 합니다.
데이터베이스 및 로그 파일에 적절한 초기 크기를 할당합니다.
디스크 공간에 여유가 없을 때 공간이 부족하지 않도록 데이터 파일의 최대 크기를 설정합니다. 이는 데이터베이스가 여러 개인 경우에 특히 중요합니다.
데이터 파일 증가분을 적절한 크기로 설정합니다. 이 경우 순간 파일 초기화 기능을 사용하여 증가분을 1GB 이하로 설정하는 것이 좋습니다.
데이터 파일에 대해 순간 초기화 기능을 적용하는 것을 고려해 봅니다.
파일 데이터 파일 및 로그 파일에 대해 RAID 기술을 적용하는 것을 고려해 봅니다.
로그 파일을 하나만 할당합니다.
로그 파일을 별도의 드라이브에 격리합니다. 성능을 높이려면 데이터 파일이 아닌 로그 파일을 별도의 물리적 디스크에 배치해야 합니다.
로그 파일을 모니터링하는 작업도 중요합니다. 다음 쿼리를 실행하여 로그 파일의 상태를 모니터링할 수 있습니다.
select * from
sys.dm_os_performance_counters
where counter_name like '%Log%'
and instance_name = 'Alpine_Ski_House_AppDB'
자세한 내용은 SQL Server을 참조하십시오.
로그 파일 크기 미리 할당
로그 파일이 자동으로 증가되는 경우를 최소화하려면 로그를 적절한 크기로 미리 할당하는 것이 좋습니다. 로그 파일의 크기는 로그 백업 빈도 및 계획 서버 시스템의 작업이라는 두 가지 요소에 좌우됩니다.
일반적인 지침은 로그 파일을 데이터베이스 파일의 10% 또는 15%로 미리 할당하는 것이지만, 실제 로그 파일 크기는 로그 백업의 빈도에 따라 다릅니다.
로그 파일을 5분마다 백업하고 일반적인 계획 작업을 수행하는 경우 로그 파일의 초기 크기를 다음과 같이 할당하는 것이 좋습니다.
계획 시스템 데이터베이스: 50MB
계획 서비스 데이터베이스: 200MB
계획 응용 프로그램 데이터베이스: 1GB
계획 준비 데이터베이스: 1GB
계획 아웃바운드 데이터베이스: 400MB
로그 백업 빈도에 따라 이러한 숫자를 변경할 수 있습니다. 예를 들어 로그를 10분마다 백업하는 경우 초기 로그 파일 크기를 늘려야 합니다. 로그 파일을 2분마다 백업하는 경우에는 로그 파일 크기를 줄여서 할당할 수 있습니다.
로그 파일의 초기 크기를 적절하게 설정하는 것도 중요하지만, 로그 파일이 자동으로 증가하는 크기를 백분율이 아닌 고정된 양으로 설정하여 로그가 커질 수 있는 최대 크기를 설정하는 것이 좋습니다. 로그 파일의 크기가 무제한으로 커질 수 있도록 설정하면 안 됩니다.
또한 SQL Server 성능을 위해 VLF(가상 로그 파일)를 최소화해야 합니다. 이 작업을 수행하는 방법에 대한 자세한 내용은 SQL Server을 참조하십시오.
로그 파일 백업
로그 파일은 정기적으로 백업하는 것이 좋습니다. 프로덕션 시스템에서는 데이터 손실을 막기 위해 SQL Server를 실행하는 컴퓨터에서 로그 백업을 주기적(예: 매 5분 또는 10분)으로 수행하는 것이 좋습니다. 데이터베이스가 전체 복구 모드인 경우 로그를 장기간 백업하지 않으면 "로그 가득 참" 오류가 발생할 때까지 로그가 계속 커집니다.
로그를 백업할 때는 시스템에 대한 오버헤드가 크지 않으므로 자주 백업해도 성능에 지장을 주지 않습니다. 그러나 로그 파일이 조각화될수록 로그 백업이 성능에 부담을 주게 됩니다. 따라서 시스템에 맞는 적절한 로그 파일 크기를 미리 할당해야 합니다. 이렇게 하면 로그 백업의 성능이 향상됩니다.
로그 파일이 가득 차면 로그를 백업해야 하는 것 이외에는 다른 방법이 없습니다. 로그를 백업하면 비활성 로그가 지워지고 로그 파일의 크기가 줄어듭니다. 로그를 백업할 때 트랜잭션이 아직 커밋되지 않은 활성 로그는 지워지지 않습니다.
데이터가 손실되어도 관계없는 프로덕션이 아닌 환경에서는 로그를 잘라내 지울 수 있습니다. 그러나 데이터가 손실되어도 관계없는 프로토타입, 개발 또는 테스트 시스템에서만 이렇게 해야 합니다.
프로덕션 또는 프로덕션이 아닌 시스템 모두에서 백업 또는 잘라내기를 통해 로그 파일을 적절히 관리해야 합니다. 이렇게 하지 않으면 로그 파일이 빠르게 커지므로 계획 시스템의 성능이 저하됩니다.
샘플 스크립트
이 단원에는 로그 백업 또는 잘라내기를 수행하는 샘플 스크립트가 포함되어 있습니다. SQL Server를 실행하는 컴퓨터에서 다음 스크립트가 실행되도록 예약해야 합니다. 테스트 또는 프로토타입 환경에서 작업하면서 이러한 로그 백업 또는 잘라내기 문제를 처리하지 않으려는 경우 SQL Server Management Studio에서 데이터베이스 속성 페이지를 수정하여 데이터베이스 복구 모드를 기본값인 전체 모드에서 단순 모드로 변경합니다.
![]() |
---|
프로덕션 시스템에서는 단순 모드를 사용하지 말아야 합니다. 데이터베이스 복구 모델에 대한 자세한 내용은 SQL Server을 참조하십시오. |
-- Truncate Log sample script
-- Use only if you are in testing environment and do not care about DB backup.
BACKUP LOG 'Alpine_Ski_House_AppDB WITH NO_LOG
GO
BACKUP LOG 'Alpine_Ski_House_AppDB WITH TRUNCATE_ONLY
GO
USE 'Alpine_Ski_House_AppDB
GO
EXEC sp_helpfile
GO
-- get the log file name for this DB
-- now shrink the log file
USE 'Alpine_Ski_House_AppDB
GO
DBCC SHRINKFILE(Alpine_Ski_House_AppDB_log, TRUNCATEONLY)
GO
-- Backup log sample script
-- For any DB that you care about data loss, you should back up DB and the
-- log, that is the only good way to clear the inactive logs.
-- Create dump devices first
EXEC sp_addumpdevice 'disk', 'ServiceDBData',
'C:\work\ServiceDBData.bak';
GO
EXEC sp_addumpdevice 'disk', 'ServiceDBLog',
'C:\work\ServiceDBLog.bak';
GO
-- Back up database and log file
USE PPSPlanningService
GO
BACKUP DATABASE PPSPlanningService TO ServiceDBLog;
GO
BACKUP LOG PPSPlanningService TO ServiceDBLog
GO
DBCC SHRINKFILE(PPSPlanningService_log, TRUNCATEONLY)
GO
![]() |
---|
성능을 높이고 데이터 손실을 막으려면 프로덕션이 아닌 시스템에서 로그를 잘라내거나 SQL Server를 실행하는 컴퓨터에서 로그를 주기적으로 백업하여 로그 파일의 크기를 줄여줘야 합니다. 로그 파일이 너무 커지게 되면 계획 서버의 성능이 크게 저하되며 시간이 지남에 따라 디스크 공간을 크게 차지하게 됩니다. |
임시 데이터베이스
임시 데이터베이스의 크기는 시스템의 성능에 영향을 줄 수 있습니다. 예를 들어 임시 데이터베이스에 정의된 크기가 너무 작으면 SQL Server(MSSQLSERVER) 서비스를 다시 시작할 때마다 해당 작업을 지원하는 데 필요한 크기로 데이터베이스를 자동 증가시키기 위해 시스템 처리 부하 중 일부가 점유됩니다. 임시 데이터베이스의 크기를 늘리면 이러한 오버헤드를 피할 수 있습니다.
임시 데이터베이스의 실제 배치 및 데이터베이스 옵션 설정에 대한 일반적인 권장 사항은 다음과 같습니다.
필요에 따라 임시 데이터베이스가 자동으로 확장되도록 허용합니다.
공간이 부족하여 파일이 자동으로 확장되지 않도록 임시 데이터베이스 파일의 원래 크기를 적절한 크기로 설정합니다. 임시 데이터베이스가 너무 자주 확장되면 성능이 저하될 수 있습니다.
임시 데이터베이스 파일이 너무 조금씩 커지지 않도록 파일 증분 백분율을 적절한 크기로 설정합니다. 임시 데이터베이스에 기록되는 데이터의 양에 비해 파일이 너무 조금씩 커지면 데이터베이스가 지나치게 자주 확장될 수 있습니다. 이로 인해 성능이 저하됩니다.
성능을 높이기 위해 임시 데이터베이스를 고속 입출력 하위 시스템에 배치합니다. 여러 개의 디스크를 사용하여 스트라이프 볼륨을 만들어 임시 데이터베이스를 저장하면 성능이 향상됩니다. 또한 임시 데이터베이스는 사용자 데이터베이스에 사용되는 것과는 다른 디스크에 배치하는 것이 좋습니다. 임시 데이터베이스를 새 위치로 이동하는 방법에 대한 자세한 내용은 SQL Server을 참조하십시오.
SQL Server를 다시 시작하면 임시 데이터베이스 크기가 초기 구성 크기로 돌아가고 필요에 따라 증가합니다. 따라서 임시 데이터베이스가 조각화되어 오버헤드가 발생할 수 있으며 이는 작업 성능에 영향을 줄 수 있습니다. 이러한 점을 고려해 임시 데이터베이스는 적절한 크기로 미리 할당하는 것이 좋습니다.
계획 서버 데이터베이스에서는 행 버전 관리 기능을 통해 "커밋된 읽기 격리"를 사용하므로 임시 데이터베이스의 크기를 적절히 크게 설정해야 성능이 향상됩니다. 성능을 위해 임시 데이터베이스의 초기 크기를 최소한 500MB로 설정하는 것이 좋습니다. 임시 데이터베이스의 초기 크기를 1GB로 설정하면 성능이 더욱 향상됩니다.
임시 데이터베이스의 여유 공간을 모니터링해야 합니다. 자세한 내용은 SQL Server을 참조하십시오.
파일 그룹
할당 및 관리를 위해 데이터베이스 개체와 파일을 파일 그룹으로 함께 묶어야 합니다.
계획 시스템 데이터베이스 및 계획 서비스 데이터베이스는 계획 서버를 설정하는 동안 만들 수도 있고, 계획 서버 소프트웨어를 설치하기 전에 고객이 직접 준비할 수도 있습니다. 계획 서버 구성 관리자에서 이러한 두 데이터베이스를 자동으로 만드는 경우에는 해당 파일 그룹을 지정할 수 없습니다. 이러한 두 데이터베이스는 크기가 비교적 작으므로 파일 그룹을 사용해도 별다른 이점이 없습니다.
계획 응용 프로그램 데이터베이스는 응용 프로그램을 만드는 프로세스를 진행하는 동안 만들어집니다. 응용 프로그램 데이터베이스를 만들 때는 두 가지 옵션이 있습니다. 고객이 계획 관리 콘솔의 응용 프로그램 만들기 사용자 인터페이스에서 수동으로 실행할 응용 프로그램 만들기 스크립트 생성 옵션을 지정하면 데이터베이스 관리자가 응용 프로그램을 만드는 프로세스를 진행하는 동안 CREATE DATABASE/CREATE TABLE을 사용자 지정할 수 있습니다. 특히 데이터베이스 관리자는 응용 프로그램 데이터베이스를 만들 때 파일 그룹 정보를 추가할 수 있습니다. 응용 프로그램을 만드는 프로세스에서 SQL Server 스크립트가 생성된 후 데이터베이스 관리자는 CreateAppDB.sql 및 TypeLibMasterSchema.sql을 실행하기 전에 이러한 스크립트를 편집하여 파일 그룹 정보를 추가할 수 있습니다.
참고
CREATE DATABASE 또는 ALTER DATABASE에서 파일 그룹을 만들 수 있습니다. CREATE TABLE에서 테이블에 대한 파일 그룹을 지정할 수 있습니다. 새 파일 그룹을 만들 때는 새 파일 그룹에 파일을 추가한 후에 새 파일 그룹을 사용해야 합니다.
파일 그룹에 대한 자세한 내용은 SQL Server을 참조하십시오.