«query-performance» 태그된 질문

데이터베이스 쿼리의 성능 및 / 또는 효율성 향상에 대한 질문

4
큰 쿼리를 여러 개의 작은 쿼리로 분리하는 것이 더 낫습니까?
원하는 결과를 얻기 위해 여러 테이블을 sub select 문과 함께 여러 테이블을 조인해야하는 상황이 있습니다. 내 질문은, 여러 개의 작은 쿼리를 사용하고 DB를 두 번 이상의 호출로 쿼리하여 논리적 작업을 응용 프로그램 계층으로 가져와야합니까? 예를 들어 다음 쿼리를 고려하십시오. SELECT * FROM `users` WHERE `user_id` IN (SELECT f2.`friend_user_id` FROM `friends` …

1
PostgreSQL 9.6에서 원하지 않는 Nest 루프와 해시 조인
PostgreSQL 9.6 쿼리 계획에 문제가 있습니다. 내 쿼리는 다음과 같습니다 SET role plain_user; SELECT properties.* FROM properties JOIN entries_properties ON properties.id = entries_properties.property_id JOIN structures ON structures.id = entries_properties.entry_id WHERE structures."STRUKTURBERICHT" != '' AND properties."COMPOSITION" LIKE 'Mo%' AND ( properties."NAME" LIKE '%VASP-ase-preopt%' OR properties."CALCULATOR_ID" IN (7,22,25) ) AND properties."TYPE_ID" IN …

3
SQL Server 2014에서 쿼리 속도가 100 배 느리면 행 수 스풀 행이 원인을 추정합니까?
SQL Server 2012 에서 800 밀리 초로 실행 되고 SQL Server 2014에서 약 170 초가 걸리는 쿼리가 있습니다. 나는 이것을 Row Count Spool운영자 의 열악한 카디널리티 추정치로 좁혔다 고 생각합니다 . 스풀 연산자 (예 : here 및 here ) 에 대해 약간 읽었 지만 여전히 몇 가지 사항을 이해하는 데 …

2
PostgreSQL에서 DISTINCT ON 속도를 높이는 방법은 무엇입니까?
station_logsPostgreSQL 9.6 데이터베이스에 테이블 이 있습니다. Column | Type | ---------------+-----------------------------+ id | bigint | bigserial station_id | integer | not null submitted_at | timestamp without time zone | level_sensor | double precision | Indexes: "station_logs_pkey" PRIMARY KEY, btree (id) "uniq_sid_sat" UNIQUE CONSTRAINT, btree (station_id, submitted_at) 에 대해 level_sensor에 대한 …

1
SQL Server의 느린 순서
내 응용 프로그램에는 "파일"테이블에서 검색을 수행하는 쿼리가 있습니다. "files"테이블은 "f". "created"로 분할됩니다 (테이블 정의 참조 및 클라이언트 19에 대해 ~ 2,600 만 행 ( "f". "cid = 19). 여기서 요점은 내가이 쿼리를 수행하는 것입니다. SELECT "f"."id" AS "FileId" , "f"."name" AS "FileName" , "f"."year" AS "Fileyear" , "f"."cid" AS "clientId" …

3
병렬 처리를 방해하지 않는 방식으로 사용자 정의 스칼라 함수 에뮬레이션
쿼리에 특정 계획을 사용하도록 SQL Server를 속이는 방법이 있는지 확인하려고합니다. 1. 환경 다른 프로세스간에 공유되는 데이터가 있다고 가정하십시오. 따라서 많은 공간을 차지하는 실험 결과가 있다고 가정합니다. 그런 다음 각 프로세스에 대해 사용하려는 실험 결과의 년 / 월을 알고 있습니다. if object_id('dbo.SharedData') is not null drop table SharedData create table dbo.SharedData …

3
매우 느린 간단한 JOIN 쿼리
간단한 DB 구조 (온라인 포럼) : CREATE TABLE users ( id integer NOT NULL PRIMARY KEY, username text ); CREATE INDEX ON users (username); CREATE TABLE posts ( id integer NOT NULL PRIMARY KEY, thread_id integer NOT NULL REFERENCES threads (id), user_id integer NOT NULL REFERENCES users (id), date timestamp …

2
이 쿼리를 리팩터링하여 병렬로 실행할 수 있습니까?
서버에서 실행하는 데 약 3 시간이 걸리는 쿼리가 있는데 병렬 처리를 이용하지 않습니다. (에서 약 1,150 만 개의 레코드, dbo.Deidentified에서 300 개의 레코드 dbo.NamesMultiWord). 서버는 8 개의 코어에 액세스 할 수 있습니다. UPDATE dbo.Deidentified WITH (TABLOCK) SET IndexedXml = dbo.ReplaceMultiWord(IndexedXml), DE461 = dbo.ReplaceMultiWord(DE461), DE87 = dbo.ReplaceMultiWord(DE87), DE15 = dbo.ReplaceMultiWord(DE15) WHERE …

1
쿼리에서 스칼라 UDF를 한 번만 평가하도록하려면 어떻게해야합니까?
스칼라 UDF 결과에 대해 필터링 해야하는 쿼리가 있습니다. 쿼리는 단일 문으로 전송되어야하며 (UDF 결과를 로컬 변수에 할당 할 수 없음) TVF를 사용할 수 없습니다. 스칼라 UDF로 인한 성능 문제를 알고 있습니다. 스칼라 UDF는 전체 계획을 순차적으로 강제 실행, 과도한 메모리 부여, 카디널리티 추정 문제 및 인라인 부족을 포함합니다. 이 질문에 …

1
postgres_fdw 성능이 느립니다
외국인에 대한 다음 쿼리는 320 만 행에서 실행하는 데 약 5 초가 걸립니다. SELECT x."IncidentTypeCode", COUNT(x."IncidentTypeCode") FROM "IntterraNearRealTimeUnitReflexes300sForeign" x WHERE x."IncidentDateTime" >= '05/01/2016' GROUP BY x."IncidentTypeCode" ORDER BY 1; 일반 테이블에서 동일한 쿼리를 실행하면 0.6 초로 반환됩니다. 실행 계획은 상당히 다릅니다. 일반 테이블 Sort (cost=226861.20..226861.21 rows=4 width=4) (actual time=646.447..646.448 rows=7 …

1
하나의 인덱스를 먼저 찾은 다음 다른 인덱스를 찾도록 쿼리를 최적화하는 방법
위성 데이터에서 시간 필드 (평균 julian 날짜의 경우 mjd)와 지리 위치 (GeoPoint, spacial)가있는 두 개의 지구 측정 세트가 있으며 두 세트 간의 시간이 임계 값과 일치하도록 두 세트 사이의 일치를 찾고 있습니다 3 시간 (또는 .125 일) 및 거리 200km 이내 테이블과 공간 테이블 모두에서 mjd 필드에 대한 인덱스를 만들었습니다. …

2
SQL에서 두 개의 큰 데이터 세트를 비교하는 효율적인 방법
현재 고유 한 StoreKey/ProductKey조합 을 포함하는 두 개의 데이터 세트를 비교하고 있습니다 . 첫 번째 데이터 세트는 StoreKey/ProductKey2012 년 1 월 시작과 2014 년 5 월 말 사이에 고유 한 판매 조합 (결과 = 450K 회선)을 갖습니다 . 두 번째 데이터 세트는 StoreKey/ProductKey2014 년 6 월에 시작하여 오늘까지 (결과 = …

4
CXPACKET 대기 처리-병렬 처리를위한 비용 임계 값 설정
Sharepoint 사이트 문제 해결에 대한 이전 질문에 대한 후속 조치로 CXPACKET 대기에 대해 뭔가 할 수 있는지 궁금했습니다. 나는 무릎을 꿇은 해결책이 MAXDOP를 1로 설정하여 모든 병렬 처리를 해제하는 것임을 알고 있습니다. 그러나 또 다른 아이디어는 병렬 처리가 시작되기 전에 비용 임계 값을 늘리는 것입니다. 실행 계획 비용의 기본값 인 …

3
GROUP BY 절을 사용하지 않고 집계 쿼리를 사용하는 것보다 집계 쿼리가 훨씬 빠른 이유는 무엇입니까?
왜 집계 쿼리가 GROUP BY없는 경우보다 절을 사용하여 쿼리가 훨씬 빨리 실행되는지 궁금 합니다. 예를 들어이 쿼리를 실행하는 데 거의 10 초가 걸립니다. SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = 1 이건 1 초도 걸리지 않지만 SELECT MIN(CreatedDate) FROM MyTable WHERE SomeIndexedValue = 1 GROUP BY CreatedDate CreatedDate이 경우에는 하나만 …

5
SQL Server의 삭제 속도 향상
우리는 거대한 생산 데이터베이스를 가지고 있으며 크기는 약 300GB입니다. 삭제 쿼리의 성능을 향상시키는 방법이 있습니까? 현재 삭제 속도는 분당 1-10k 사이이며 매우 느립니다.

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