SQL 2012 데이터베이스에 응용 프로그램 이벤트를 기록해야합니다. 기본 레코드 구조 요구 사항은 매우 간단합니다.대용량 로그 레코드를 구성하는 올바른 방법은 무엇입니까
CREATE TABLE [dbo].[EventLog]
(
[ProcessId] INT NOT NULL,
[ApplicationId] INT NOT NULL,
[Created] DateTime NOT NULL,
CONSTRAINT [PK_EventLog] PRIMARY KEY CLUSTERED ([ProcessId],[ApplicaionId],[Created] ASC)
)
성능 문제가 있습니다. 하루에 최대 100 만 개의 이벤트가 생성 될 수 있으며 행 수가 증가하면 삽입 성능이 저하되어 로거가 이벤트를 따라갈 수 없습니다.
중간 중간 일반 텍스트 파일에 이미 로그 일괄 처리를 작성한 다음 주 응용 프로그램 로거와 별도로 실행되는 서비스를 사용하여 이러한 파일을 처리하고 있습니다.
나는 그 범인이 색인을 유지하고 있을지도 모른다고 생각하며이 문제에 대해보다 효율적으로/효율적으로 접근 할 수있는 방법에 대한 조언을 드리고 싶습니다.
조언을 주시면 감사하겠습니다.
범위 파티셔닝을 고려 했습니까? – Lennart
나는 그렇지 않다. 솔직히 말해서, 나는 그 용어에 대해 들어 보지 못했지만 조사 할 것이다. - 고마워. – Neilski