«index» 태그된 질문

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

1
큰 데이터베이스 쿼리 최적화 (max () 및 GROUP BY를 사용하여 2 천 5 백만 행 이상)
Postgres 9.3.5를 사용하고 있으며 데이터베이스에 큰 테이블이 있으며 현재 2,500 만 개가 넘는 행이 있으며 훨씬 더 빨리 커지는 경향이 있습니다. 다음과 같은 간단한 쿼리 를 사용하여 특정 행을 선택하려고합니다 ( 각 행 마다 unit_id최신 행만 있음 unit_timestamp). SELECT unit_id, max(unit_timestamp) AS latest_timestamp FROM all_units GROUP BY unit_id; 인덱스가 없으면이 …

1
기본 키를 파일 그룹으로 이동 (SQL Server 2012)
클러스터 된 기본 키를 새 파일 그룹으로 옮기려면 어떻게해야합니까? 이미 가능한 "알고리즘"을 찾았지만 끔찍하게 비효율적입니다. 비 클러스터형 인덱스를 삭제 (리조트 및 재 구축해야 함) 클러스터형 인덱스 삭제 (전체 테이블을 사용해야 함) 새로운 기본 키 제약 조건 만들기 (거대한 정렬 작업) 비 클러스터형 인덱스를 모두 만듭니다 (정렬 및 쓰기 필요) 더 …

4
GROUP BY 및 ORDER BY가있는 큰 테이블에서 느린 쿼리
나는 720 만 튜플이있는 테이블을 가지고 있습니다. table public.methods column | type | attributes --------+-----------------------+---------------------------------------------------- id | integer | not null DEFAULT nextval('methodkey'::regclass) hash | character varying(32) | not null string | character varying | not null method | character varying | not null file | character varying | not …

1
채우기 비율을 기반으로 한 인덱스의 데이터 동작
기본 채우기 비율이 20 인 데이터베이스가 있다고 가정 해 보겠습니다. 데이터를 삽입 할 때마다 최대 20 %까지 채워진 페이지 만 작성합니까? 내 이해에서, 데이터가 삽입되면 페이지에 대략 20 %의 데이터가있을 것입니다. 그러나 데이터가 업데이트되면 색인을 20 % 이상 확장하여 데이터를 채우고 페이지 분할을 생성 할 수 있습니다.

1
`WHERE field IS NULL`로 쿼리를 인덱싱하는 방법은 무엇입니까?
필드 ( uploaded_at) 중 하나를로 설정하여 삽입이 많은 테이블이 있습니다 NULL. 그런 다음 주기적 작업은 모든 튜플을 선택하고 WHERE uploaded_at IS NULL처리하고 업데이트 uploaded_at하여 현재 날짜로 설정 합니다. 테이블을 어떻게 인덱싱해야합니까? 나는 다음과 같은 부분 인덱스를 사용해야한다는 것을 이해합니다. CREATE INDEX foo ON table (uploaded_at) WHERE uploaded_at IS NULL 또는 …


1
SQL Server 압축 인덱스는 데이터 압축을 지정하지 않고 재 구축시 압축 상태를 유지합니까?
페이지 압축 ( ALTER INDEX IX1 REBUILD PARTITION = ALL WITH (DATA_COMPRESSION = PAGE))을 사용하여 SQL Server 인덱스를 재 구축 한 후 , 일부 재 구축 스크립트 (특정 조각화 임계 값을 지난 과거의 재 구축)에서 데이터 압축을 다시 지정해야합니까? 그렇지 않으면 인덱스가 효과적으로 압축 해제됩니까?

3
512 바이트는 SQL Server의 8KB 데이터 페이지에서 사용되지 않습니다
다음 테이블을 만들었습니다. CREATE TABLE dbo.TestStructure ( id INT NOT NULL, filler1 CHAR(36) NOT NULL, filler2 CHAR(216) NOT NULL ); 그런 다음 클러스터형 인덱스를 만들었습니다. CREATE CLUSTERED INDEX idx_cl_id ON dbo.TestStructure(id); 다음으로 각 크기가 256 바이트 인 30 행으로 채 웁니다 (테이블 선언에 따라). DECLARE @i AS int = 0; …

1
삭제 명령문에서 클러스터 된 인덱스가 사용되지 않음
다음과 같이 정의 된 SQL Server 테이블이 있습니다. CREATE TABLE [dbo].[Production_Detail] ( [Id] [bigint] NOT NULL DEFAULT (NEXT VALUE FOR [dbo].[Production_Detail_Seq]), [Meta_Data_ID] INT NOT NULL , [Production_Detail_Time] DATETIME NOT NULL, [Production_Detail_Time_Local] DATETIME NOT NULL, [Production_Detail_Value] FLOAT NULL, [IntegratedDM] BIT NOT NULL DEFAULT 0, [DailyIntegratedDM] BIT NOT NULL DEFAULT 0, [InsertedDate] …

2
큰 mysql 테이블에 인덱스 추가
나는 테이블이있다 | base_schedule_line_items | CREATE TABLE base_schedule_line_items( idint (10) unsigned NOT NULL AUTO_INCREMENT, installmentint (10) unsigned NOT NULL, on_datedate NOT NULL, actual_datedate DEFAULT NULL, payment_typeint (11) NOT NULL, scheduled_principal_outstandingdecimal (65,0) NOT NULL, scheduled_principal_duedecimal (65,0) NOT NULL, scheduled_interest_outstandingdecimal (65,0) NOT NULL, scheduled_interest_duedecimal (65,0) NOT NULL, currencyint (11) NOT NULL, updated_atdatetime …

2
큰 테이블에서 그룹당 가장 큰 가치를 얻는 효율적인 쿼리
주어진 테이블 : Column | Type id | integer latitude | numeric(9,6) longitude | numeric(9,6) speed | integer equipment_id | integer created_at | timestamp without time zone Indexes: "geoposition_records_pkey" PRIMARY KEY, btree (id) 이 테이블에는 2 천만 건의 레코드 가 있으며 비교적 많은 수의 레코드 가 아닙니다. 그러나 순차적 스캔이 …


2
인덱스를 정의 할 때 특정 열 순서에 이점이 있습니까?
예를 들어 두 개의 인덱스가있는 경우 : CREATE INDEX IDX_1 ON MY_TABLE_1 (ITEM, DATE, LOCATION) COMPUTE STATISTICS; CREATE INDEX IDX_2 ON MY_TABLE_1 (DATE, LOCATION, ITEM) COMPUTE STATISTICS; 이것이 IDX_2중복이됩니까? 그렇지 않은 경우 열 선언 순서를 어떻게 결정합니까? 일반 쿼리에 맞게 인덱스를 조정해야합니까?
13 oracle  index 

2
PostgreSQL에서 기존 인덱스를 기본 키로 승격시키는 방법
테이블 내에서 기본 키를 만드는 방법을 알고 있지만 기존 인덱스를 기본 키로 만들려면 어떻게해야합니까? 한 데이터베이스에서 다른 데이터베이스로 기존 테이블을 복사하려고합니다. 표를 표시하면 맨 아래의 색인은 다음과 같은 형식입니다. "my_index" PRIMARY KEY, btree (column1, column2) 나는 다음을 사용하여 색인을 만들었습니다. CREATE INDEX my_index ON my_table (column1, column2) 그러나 기본 키를 …

2
sys.allocation_units 및 sp_spaceused의 공간 사용량
DMV가 페이지 수와 행 수에 대한 정확한 정보를 가지고 있지 않다는 것은 알려진 사실입니다. 그러나 통계를 업데이트하면 왜 그렇지 않은지 알 수 없습니다. 모니터링 도구를 사용하고 있으며 각 인덱스 및 데이터의 디스크 크기 등을 알고 싶습니다. 결국 올바른 채우기 비율 및 기타 사항을 찾고 싶습니다. 내 함수와 이전 sp_spaceused에서 사용하는 …

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