SSIS를 사용하여웨어 하우스에 테이블을로드하고 있습니다. SSIS가 느리므로 테이블에 인덱스를 작성하는 것이 좋습니다.SSIS 작업을위한 인덱스 튜닝
이웨어 하우스에는 기본 키 (따라서 외래 키), 인덱스 (클러스터 또는 기타), 제한 조건이 없습니다. 즉, 100 % 효율이 없습니다.
새 쿼리와 현재 쿼리 성능을 분석하여 인덱스를 사용법에 따라 배치 할 것입니다.
SQL 구문과 실행 계획을 실제로 읽는 우리의 구식 땀과 쓸데없는 방법 대신, 나는 반짝이는 새로운 데이터베이스 엔진 튜닝 어드바이저를 사용할 생각입니다.
SSIS 패키지에서 SQL 로그 오프를 해제하고 "튜닝"추적을 실행하여이를 테이블에 저장하고 튜닝 관리자의 출력을 분석했습니다. 조회의 대부분은 완료로 :
exec sp_executesql N'SELECT [Active], [CompanyID], [CompanyName], [CompanyShortName], [CompanyTypeID], [HierarchyNodeID] FROM [dbo].[Company] WHERE ([CompanyID][email protected]) AND ([StartDateTime] IS NOT NULL AND [EndDateTime] IS NULL)',N'@P1 int',1
exec sp_executesql N'SELECT [Active], [CompanyID], [CompanyName], [CompanyShortName], [CompanyTypeID], [HierarchyNodeID] FROM [dbo].[Company] WHERE ([CompanyID][email protected]) AND ([StartDateTime] IS NOT NULL AND [EndDateTime] IS NULL)',N'@P1 int',2
exec sp_executesql N'SELECT [Active], [CompanyID], [CompanyName], [CompanyShortName], [CompanyTypeID], [HierarchyNodeID] FROM [dbo].[Company] WHERE ([CompanyID][email protected]) AND ([StartDateTime] IS NOT NULL AND [EndDateTime] IS NULL)',N'@P1 int',3
exec sp_executesql N'SELECT [Active], [CompanyID], [CompanyName], [CompanyShortName], [CompanyTypeID], [HierarchyNodeID] FROM [dbo].[Company] WHERE ([CompanyID][email protected]) AND ([StartDateTime] IS NOT NULL AND [EndDateTime] IS NULL)',N'@P1 int',4
분석 할 때, 이러한 진술은 이유 "이벤트가 어떤 테이블을 참조하지 않습니다"가. 응? FROM dbo.Company가 보이지 않습니까 ?? !! 여기서 무슨 일이 일어나고있는거야? 일괄 무엇을 제출하지 나는 내 추적에서 실행되는 실제 문을 캡처 할 수 어떻게
- :
그래서, 나는 여러 질문이?
- SQL Server 2008에 대해 실행되는 SSIS 패키지와 관련된 성능 조정을 위해 따라야 할 모범 사례가 있습니까?
귀하의 의견을 바탕으로 편집 된 질문 . 나는 DMV를 사용하지 않고있다. 나는 창고에 단지 FK 또는 PKs가 없다. 검사 제약 조건 없음 - 기본값은 Constaints입니다. DMV를 배울 수있는 자료가 있습니까? –
http://blogs.msdn.com/bartd/archive/2007/07/19/are-you-using-sql-s-missing-index-dmvs.aspx – onupdatecascade