«index» 태그된 질문

디스크 공간을 희생하고 쿼리 / 삽입 속도를 느리게하여 쿼리 속도를 향상시킬 수있는 데이터베이스 구조. 정렬 된 하나 이상의 열 사본을 저장하지만 더 빠르게 액세스 할 수 있도록 데이터를 다르게 구성합니다.

3
선택도가 높고 선택도가 낮은 복합 인덱스 순서의 필드 순서
30 억 개가 넘는 행이있는 SQL Server 테이블이 있습니다. 내 쿼리 중 하나가 너무 오래 걸리므로 최적화를 고려하고 있습니다. 쿼리는 다음과 같습니다. SELECT [Enroll_Date] ,Count(*) AS [Record #] ,Count(Distinct UserID) AS [User #] FROM UserTable GROUP BY [Enroll_Date] [Enroll_Date]는 가능한 값이 50 개 미만인 낮은 선택도 열이며, UserID 열은 2 …


1
내 인덱스를 찾는 것이 올바른 행 수를 추정 할 수 있는데 정렬 연산자가 할 수없는 이유는 무엇입니까?
조건 자에서 함수를 사용하는 쿼리는 다음과 같습니다. commentType = 'EL' AND commentDateTime >= DATEADD(month,datediff(month,0,getdate()) - 13,0) 40K 행이있는 commentType에 필터링 된 인덱스가 있으며 쿼리를 실행할 때 인덱스 검색의 예상 행 수는 매우 정확하지만 (약 11K) 다음 단계 (정렬 연산자)의 경우 통계를 완전히 무시하고 필터링 된 인덱스의 총 행 수를 추정합니다. …

1
많은 양의 데이터가있는 기존 테이블에 인덱스를 추가하면 어떻게됩니까?
약 1,500 만 건의 레코드가 포함될 테이블이 있습니다. 이제 테이블에 인덱스를 추가해야합니다. 색인을 추가하면 테이블의 모든 항목을 업데이트하는 데 시간이 걸립니다. 인덱스를 추가하면 가동 중지 시간이 발생하는지 혼란 스럽습니다. 그렇다면 다운 타임을 어떻게 극복 할 수 있습니까?

1
사용량이 많은 테이블에서 인덱스 생성
우리는 insert\select매번 많은 테이블을 가지고 있습니다 (매초마다 100 대의 기계를 삽입 / 업데이트하는 것과 같은) 잠깐이라도 잠글 수없는 테이블에 인덱스를 작성하는 가장 좋은 방법은 무엇입니까? 인덱스를 만들면 요청이 잠길 것이라고 확신하며 할 수 없습니다. 1 백만 행 이상의 큰 테이블입니다.

1
다른 테이블에서 ORDER BY를 사용하여 TOP 1을 선택할 때 인덱싱 된 뷰를 설정하는 방법
다음 시나리오에서 인덱스 된 뷰를 설정하여 다음 쿼리가 두 개의 클러스터 된 인덱스 스캔없이 수행되도록 고심하고 있습니다. 이 쿼리에 대한 인덱스 뷰를 만들어서 사용할 때마다 내가 넣은 인덱스를 무시하는 것 같습니다. -- +++ THE QUERY THAT I WANT TO IMPROVE PERFORMANCE-WISE +++ SELECT TOP 1 * FROM dbo.TB_test1 t1 INNER …


3
하나 또는 두 개의 인덱스?
내 데이터베이스의 테이블에 다음 색인을 만들었습니다. CREATE INDEX [idx_index1] on [table1] (col1, col2, col3) 서버는 다음과 같은 '누락 된'색인을 제안합니다. CREATE INDEX [idx_index2] on [table1] (col1, col2) INCLUDE (col3, col4, col5, col6....) 유지 관리해야 할 새 인덱스를 만드는 대신 제안 된 열을 포함하도록 기존 인덱스 정의를 수정하는 것이 논리적으로 보입니다. …

2
다른 테이블에 대해 조인 할 때 인덱스를 사용하지 않는 MySQL
두 개의 테이블이 있는데 첫 번째 테이블에는 CMS 내의 모든 기사 / 블로그 게시물이 포함되어 있습니다. 이 기사 중 일부는 잡지에 나타날 수도 있으며,이 경우 잡지 관련 정보가 포함 된 다른 테이블과 외래 키 관계가 있습니다. 다음은 필수적이지 않은 일부 행이 제거 된이 두 테이블에 대한 테이블 작성 구문의 단순화 …

2
99 %의 일일 인덱스 조각화를 방지하는 방법
나는 100.000 플레이어를위한 최고 점수 테이블을 가지고 있으며, 이는 플레이어 당 하나의 레코드로 하루에 2 번 삽입됩니다. 하루가 끝나면 해당 테이블의 인덱스에 대한 인덱스 조각화는 99 %입니다. 설정을 조정하여이를 방지 할 수있는 방법이 있습니까? CREATE TABLE HighScore( [id] [int] IDENTITY(1,1) NOT NULL, [user] [int] NULL, [player] [int] NULL, [round] [tinyint] …

3
포함 된 열과 필터링 된 인덱스
우리는 현재 이름이 tb_tranfers 인 테이블로 작업합니다 . 이 테이블에는 4 천만 개의 행이 있으며 크기는 ~ 26GB (11GB 데이터, 15GB 인덱스)입니다. 행의 10 ~ 15 %가 일시 삭제 된 행입니다 ( DeletedDate 가 널이 아님). 응용 프로그램은 DeletedDate 가 null 인 행만 사용합니다 . 이 테이블에 대한 모든 쿼리에는 …

2
데이터베이스는 어떤 시점에서 트랜잭션의 인덱스를 업데이트합니까?
인덱스와 트랜잭션이 모두 포함 된 삽입의 이벤트 시퀀스를 이해하려고합니다. 예를 들어, Oracle 설명서에는 다음이 명시되어 있습니다. 데이터를로드하기 전에 하나 이상의 인덱스를 작성하거나 갖는 경우 데이터베이스는 각 행이 삽입 될 때마다 모든 인덱스를 업데이트해야합니다. 그러나 트랜잭션을 만들고 5 개의 행을 삽입 한 다음 커밋하면 어떻게됩니까? 삽입 할 때마다 또는 커밋 지점에서 …

2
사용하지 않은 인덱스 모범 사례
이 쿼리를 기반으로 적은 양의 총 읽기 (1 또는 2와 같이 0 또는 0에 매우 가깝 음)와 높거나 중간 정도의 사용자 업데이트 (이 쿼리로 삽입 또는 삭제를 찾을 수 없음)가 표시되는 경우 행 수가 많으면 이론적 으로 인덱스를 제거 해야합니다 . SELECT DISTINCT OBJECT_NAME(s.[object_id]) AS ObjectName , p.rows TableRows , …

2
MySQL에서 NULL 값을 가진 열의 인덱스를 디자인하는 방법은 무엇입니까?
4 천만 개의 항목이있는 데이터베이스가 있고 다음 WHERE절을 사용하여 쿼리를 실행하려고합니다. ... WHERE `POP1` IS NOT NULL && `VT`='ABC' && (`SOURCE`='HOME') && (`alt` RLIKE '^[AaCcGgTt]$') && (`ref` RLIKE '^[AaCcGgTt]$') && (`AA` RLIKE '^[AaCcGgTt]$') && (`ref` = `AA` || `alt` = `AA`) LIMIT 10 ; POP1NULL 일 수도있는 float 열입니다. POP1 …
11 mysql  index 

2
LIMIT의 느린 주문
이 쿼리가 있습니다. SELECT * FROM location WHERE to_tsvector('simple',unaccent2("city")) @@ to_tsquery('simple',unaccent2('wroclaw')) order by displaycount 나는 그것에 만족합니다 : "Sort (cost=3842.56..3847.12 rows=1826 width=123) (actual time=1.915..2.084 rows=1307 loops=1)" " Sort Key: displaycount" " Sort Method: quicksort Memory: 206kB" " -> Bitmap Heap Scan on location (cost=34.40..3743.64 rows=1826 width=123) (actual time=0.788..1.208 rows=1307 loops=1)" …

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