«execution-plan» 태그된 질문

쿼리 최적화 프로그램이 쿼리를 처리하기 위해 선택한 전략입니다.

1
Query Store Force Plan 기능이 작동하지 않습니다
Query Store Force 계획 기능이 계획을 시행하지 않는 것 같습니다. 나는 알고 있어요 쿼리 스토어 - 항상 힘에 의한 것은 아니다 강제 ; 그러나 계획이 크게 변경되지는 않지만 쿼리 최적화 프로그램은 계속 잘못된 인덱스, 루프 선택 등을 선택할 수 있습니다. 기본적으로 : 그것은 나의 강제 계획 선택을 존중하지 않습니다. 나는 …

3
인덱스 스캔 대신 PostgreSQL 순차 스캔 왜?
안녕하십니까. PostgreSQL 데이터베이스 쿼리에 문제가 있으며 누군가 도울 수 있는지 궁금합니다. 일부 시나리오에서는 내 쿼리는 두 개의 테이블을 조인에 사용되는 제작 한 것을 인덱스 무시하는 것 data등을 data_area. 이 경우 순차적 스캔을 사용하므로 쿼리 속도가 훨씬 느려집니다. 순차적 스캔 (~ 5 분) Unique (cost=15368261.82..15369053.96 rows=200 width=1942) (actual time=301266.832..301346.936 rows=153812 loops=1) …

3
BULK INSERT 문의 성능을 어떻게 조사합니까?
주로 Entity Framework ORM을 사용하는 .NET 개발자입니다. 그러나 ORM 사용에 실패 하고 싶지 않기 때문에 데이터 계층 (데이터베이스) 내에서 일어나는 일을 이해하려고합니다. 기본적으로 개발 중에 프로파일 러를 시작하고 쿼리 측면에서 코드의 일부 부분을 생성하는지 확인합니다. 내가 완전히 복잡한 것을 발견하면 (ORM이 간단한 LINQ 문에서도 신중하게 작성되지 않은 경우에도 끔찍한 쿼리를 …

1
탐색 술어와 술어의 차이점
SQL Server 2014 Enterprise의 쿼리 성능을 조정하려고합니다. 나는 SQL 센트리 계획 탐색기에서 실제 쿼리 계획을 개설하고 나는 그것이 것을 하나 개의 노드에서 볼 수있는 술어를 탐색 도 및 술어 Seek Predicate 와 Predicate 의 차이점은 무엇입니까 ? 참고 :이 노드에 많은 문제가 있음을 알 수 있습니다 (예 : Estimated vs …

2
DELETE 쿼리가 다른 형식보다 한 형식으로 실행되는 이유는 무엇입니까?
중복을 제거하려는 특정 정리 코드가 있습니다. 이것은 많은 고객 사이트에서 완벽하게 실행됩니다. 로그는이 쿼리에서 최소 1 초에서 최대 45 초를 소비한다고 알려줍니다. DELETE FROM [tbl] WHERE [Id] NOT IN ( SELECT MIN([Id]) FROM [tbl] GROUP BY [IdProject], [IdRepresentative], [TimeStart] ) 그러나이 쿼리가 4 시간 이상 (지금까지는 끝나지 않고) 실행되는 고객이 …

2
Int / Smallint가 Varchar로 암시 적으로 변환되는 이유는 무엇이며 카디널리티 예상치에 실제로 영향을 미칩니 까?
실제 실행 계획에서 SSMS (Show Plan Analysis)를 사용하여 성능이 느린 쿼리를 작성하는 데 문제가 있습니다. 분석 도구는 계획의 일부 위치에서 반환 된 결과에서 행 수에 대한 추정치가 벗어나고 암시 적 변환 경고를 제공한다고 지적합니다. 나는 int를 Varchar로 암시 적으로 변환하는 것을 이해하지 못합니다. 참조 된 필드는 쿼리의 매개 변수 / …

1
SQL Server 쿼리 계획 XML : QueryPlanHash 길이
업데이트 : 이것은 분명히 버그입니다. 자세한 내용은 이 연결 항목을 참조하십시오 . sp_BlitzCache (전체 공개, 필자는 필자 중 하나)에 대한 일부 변경 사항을 테스트하는 동안 코드에서 버그라고 생각한 부분을 발견했습니다. 어느 시점에서 쿼리 비용을 얻기 위해 쿼리 계획 해시를 일치시킵니다. 우리는 그렇게 그렇게합니다 : statement.value('sum(/p:StmtSimple[xs:hexBinary(substring(@QueryHash, 3)) = xs:hexBinary(sql:column("b.QueryHash"))]/@StatementSubTreeCost)', 'float') 내가 …

4
SQL Server가 간단한 bijection에서 인덱스를 사용하지 못함
이것은 또 다른 쿼리 최적화 프로그램 수수께끼입니다. 어쩌면 나는 쿼리 최적화 프로그램을 과대 평가하거나 무언가를 놓치고있을 수도 있습니다. 나는 간단한 테이블이있다 CREATE TABLE [dbo].[MyEntities]( [Id] [uniqueidentifier] NOT NULL, [Number] [int] NOT NULL, CONSTRAINT [PK_dbo.MyEntities] PRIMARY KEY CLUSTERED ([Id]) ) CREATE NONCLUSTERED INDEX [IX_Number] ON [dbo].[MyEntities] ([Number]) 인덱스와 수천 개의 행이 …

2
홀수 스트림 집계 동작
질문: declare @X xml = ' <item ID = "0"/> <item ID = "1"/> <item/> <item/>'; select I.X.value('@ID', 'int') from @X.nodes('/item') as I(X); 결과: ----------- 0 1 NULL NULL 실행 계획 : 맨 위 분기는 XML을 4 개의 행으로 분리하고 맨 아래 분기는 속성 값을 가져옵니다 ID. 이상한 점은 Stream …

3
왜 갑자기 인덱스가 필요하거나 쿼리를 변경해야하는지에 대한 답변 방법
3 년 경력의 주니어 DBA입니다. 우리의 임무는 쿼리를 미세 조정하거나 개발자에게 특정 코드를 다시 작성하거나 인덱스가 필요하다는 것을 알리는 것입니다. 개발자 팀이 자주 묻는 한 가지 간단한 질문은 "어제 잘 작동했습니다. 갑자기 무엇이 바뀌 었습니까?" 인프라 측면을 확인하라는 메시지가 표시됩니다. 모든 문제에 대한 첫 번째 반응은 항상 첫 번째로 확인되는 …

1
쿼리 계획을 재사용성에 대한 문장으로 나누는 것이 더 좋을까요?
쿼리 계획이 쿼리에 의해 컴파일, 저장 및 검색되는 방법에 대한 제한된 지식을 통해 다중 문 쿼리 또는 저장 프로 시저가 쿼리 계획 캐시에 저장되어 향후 실행에서 쿼리에 사용될 쿼리 계획을 생성한다는 것을 이해합니다. 이 계획은 쿼리 해시가있는 쿼리 계획 캐시에서 검색됩니다. 즉, 쿼리를 편집하고 실행하면 해시가 다르고 쿼리 계획 캐시에서 …

2
통계, 실행 계획 및 '오름차순 키 문제'이해
통계, 실행 계획, 저장 프로 시저 실행 간의 관계를 (개념적으로) 더 잘 이해하려고합니다. 통계가 저장 프로 시저에 대한 실행 계획을 만들 때만 사용되고 실제 실행 컨텍스트에서 사용되지 않는다고 말하는 것이 맞습니까? 다시 말해서, 이것이 사실이라면, 계획이 만들어지고 적절하게 재사용되었다고 가정하면 "최신"통계가 얼마나 중요합니까? 나는 내가 읽은 기사 ( 통계, 행 …

2
PARTITION BY가없는 ROW_NUMBER ()는 여전히 세그먼트 반복자를 생성합니다.
나는 순위 및 집계 창 기능, 특히 세그먼트 및 시퀀스 프로젝트 반복자에 대한 내 블로그 게시물을 작성하고 있습니다. 내가 이해하는 방식은 세그먼트가 그룹의 끝 / 시작을 구성하는 스트림의 행을 식별하므로 다음과 같은 쿼리입니다. SELECT ROW_NUMBER() OVER (PARTITION BY someGroup ORDER BY someOrder) 세그먼트를 사용하여 행이 이전 행이 아닌 다른 그룹에 …

1
함수 호출을 통한 예상 및 실제 쿼리 계획
이 쿼리는 SQL 서버, 병합 복제 쿼리에 있습니다. SELECT DISTINCT b.tablenick, b.rowguid, c.generation, sys.fn_MSgeneration_downloadonly ( c.generation, c.tablenick ) FROM #belong b LEFT OUTER JOIN dbo.MSmerge_contents c ON c.tablenick = b.tablenick AND c.rowguid = b.rowguid; 예상 쿼리 계획에는 3 가지 쿼리에 대한 정보가 포함됩니다. 위의 쿼리 fn_MSgeneration_downloadonly에 대한 함수 호출 fn_MSArticle_has_downloadonly_property에 …

1
JOIN 절에서 OR 사용시 이상한 쿼리 계획-테이블의 모든 행에 대한 지속적인 스캔
JOON 절에서 OR를 사용하는 것보다 UNIONing 두 결과 집합이 더 나은 이유를 보여주기 위해 샘플 쿼리 계획을 작성하려고합니다. 내가 작성한 쿼리 계획으로 인해 문제가 발생했습니다. Users.Reputation에서 비 클러스터형 인덱스가있는 StackOverflow 데이터베이스를 사용하고 있습니다. 쿼리는 CREATE NONCLUSTERED INDEX IX_NC_REPUTATION ON dbo.USERS(Reputation) SELECT DISTINCT Users.Id FROM dbo.Users INNER JOIN dbo.Posts ON Users.Id …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.