sys.fulltext_index_fragments(Transact-SQL)
적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance
전체 텍스트 인덱스는 전체 텍스트 인덱스 조각이라는 내부 테이블을 사용하여 반전된 인덱스 데이터를 저장합니다 . 이 뷰를 사용하여 이러한 조각에 대한 메타데이터를 쿼리할 수 있습니다. 이 뷰에는 전체 텍스트 인덱스를 포함하는 모든 테이블의 각 전체 인덱스 조각에 대한 행이 들어 있습니다.
열 이름 | 데이터 형식 | 설명 |
---|---|---|
table_id | int | 전체 텍스트 인덱스 조각을 포함하는 테이블의 개체 ID입니다. |
fragment_object_id | int | 조각과 연결된 내부 테이블의 개체 ID입니다. |
fragment_id | int | 전체 텍스트 인덱스 조각의 논리적 ID입니다. 이 테이블의 모든 조각에서 고유합니다. |
timestamp | timestamp | 조각 생성과 관련된 타임스탬프입니다. 최신 조각의 타임스탬프는 이전 조각의 타임스탬프보다 큽니다. |
data_size | int | 조각의 논리적 크기(바이트)입니다. |
row_count | int | 조각의 개별 행 수입니다. |
status | int | 조각의 상태( 다음 중 하나) 0 = 새로 만들어졌으며 아직 사용되지 않음 1 = 전체 텍스트 인덱스 채우기 또는 병합 동안 삽입에 사용됨 4 = 닫힘 쿼리 준비 완료 6 = 병합 입력에 사용되며 쿼리를 준비함 8 = 삭제 표시 쿼리 및 병합 원본에 사용되지 않음 상태가 4 또는 6이면 조각이 논리적 전체 텍스트 인덱스의 일부이며 쿼리할 수 있습니다. 즉, 쿼리 가능한 조각입니다. |
설명
sys.fulltext_index_fragments 카탈로그 뷰를 사용하여 전체 텍스트 인덱스로 구성된 조각 수를 쿼리할 수 있습니다. 느린 전체 텍스트 쿼리 성능을 경험하는 경우 다음과 같이 sys.fulltext_index_fragments를 사용하여 전체 텍스트 인덱스에서 쿼리 가능 조각(상태 = 4 또는 6) 수를 쿼리할 수 있습니다.
SELECT table_id, status FROM sys.fulltext_index_fragments
WHERE status=4 OR status=6;
쿼리 가능 조각이 많이 있는 경우 조각을 모두 병합하도록 전체 텍스트 인덱스를 포함하는 전체 텍스트 카탈로그를 다시 구성하는 것이 좋습니다. 전체 텍스트 카탈로그를 다시 구성하려면 ALTER FULLTEXT CATALOGcatalog_name REORGANIZE를 사용합니다. 예를 들어 ftCatalog
데이터베이스에서 AdventureWorks2022
라는 전체 텍스트 카탈로그를 다시 구성하려면 다음을 입력합니다.
USE AdventureWorks2022;
GO
ALTER FULLTEXT CATALOG ftCatalog REORGANIZE;
GO
사용 권한
사용자가 소유하고 있거나 사용 권한을 부여 받은 보안 개체에 대해서만 카탈로그 뷰의 메타데이터를 볼 수 있습니다.