전체 텍스트 검색 아키텍처

업데이트: 2006년 4월 14일

Microsoft SQL Server 2005의 전체 텍스트 검색은 SQL Server용 Microsoft 전체 텍스트 검색 엔진(MSFTESQL)을 사용합니다. MSFTESQL 서비스는 인덱싱 지원과 쿼리 지원의 두 가지 역할을 수행합니다.

다음 그림에서는 SQL Server의 전체 텍스트 검색 아키텍처를 보여 줍니다.

전체 텍스트 검색 아키텍처 다이어그램

아키텍처는 다음 프로세스로 구성됩니다.

  • SQL Server 프로세스(Sqlserver.exe)
  • SQL Server용 Microsoft 전체 텍스트 검색 엔진 프로세스(Msftesql.exe)
  • Microsoft 전체 텍스트 검색 엔진 필터 데몬 프로세스(Msftefd.exe)

이러한 각 프로세스에는 아래 섹션에서 설명하는 여러 구성 요소가 포함되어 있습니다.

SQL Server 프로세스

SQL Server 프로세스는 다음 구성 요소로 구성됩니다.

  • 사용자 테이블
    이 테이블은 전체 텍스트 인덱싱할 데이터를 포함합니다.
  • 키 맵
    이 구성 요소는 전체 텍스트 키 열의 데이터 값과 내부 문서 ID 간의 매핑을 포함합니다.
  • SQL Server 쿼리 프로세서
  • Microsoft 전체 텍스트 Gatherer
    이 구성 요소는 전체 텍스트 카탈로그를 모니터링하고 전체 텍스트 인덱스 채우기를 예약 및 수행합니다.

SQL Server용 Microsoft 전체 텍스트 검색 엔진(MSFTESQL) 프로세스

MSFTESQL 서비스는 다음 작업을 수행합니다.

  • 전체 텍스트 카탈로그 채우기 및 관리
  • SQL Server 데이터베이스의 테이블에 대한 전체 텍스트 검색을 손쉽게 수행할 수 있도록 지원

MSFTESQL 프로세스에서는 다음 표에 나열된 구성 요소를 호스팅합니다.

구성 요소 설명

필터 데몬 관리자

Microsoft 전체 텍스트 검색 엔진 필터 데몬(MSFTEFD) 프로세스의 상태를 모니터링합니다.

인덱서

인덱싱된 토큰을 저장하는 데 사용되는 반전된 인덱스 구조를 작성합니다. 자세한 내용은 전체 텍스트 인덱스 구조를 참조하십시오.

동의어 사전 파일

검색어의 동의어를 포함합니다. 자세한 내용은 사전을 참조하십시오.

의미 없는 단어 파일

검색에 유용하지 않은 자주 검색되는 단어의 목록을 포함합니다. 자세한 내용은 의미 없는 단어를 참조하십시오.

단어 분리기 및 형태소 분석기

모든 전체 텍스트 인덱싱된 데이터에 대해 언어 분석을 수행합니다. 단어 분리기는 전체 텍스트 인덱싱 중인 행의 텍스트 스트림에서 단어의 경계를 결정하는 구성 요소입니다. 형태소 분석기는 지정된 단어의 어근을 추출합니다. 예를 들어 "running", "ran" 및 "runner"는 "run"이라는 단어의 여러 가지 형태입니다. MSFTESQL 서비스는 쿼리가 FREETEXT 쿼리이거나 활용 형태상의 확장을 요청하면 쿼리 시 형태소 분석기를 호출합니다.

자세한 내용은 단어 분리기 및 형태소 분석기를 참조하십시오.

MSFTESQL 서비스에 대한 자세한 내용은 SQL Server용 Microsoft 전체 텍스트 검색 엔진을 참조하십시오.

Microsoft 전체 텍스트 검색 엔진 필터 데몬(MSFTEFD) 프로세스

MSFTEFD는 전체 텍스트 인덱싱 프로세스를 수행하는 동안 MSFTESQL 서비스에 의해 시작됩니다. MSFTEFD는 테이블 데이터 액세스 및 필터링, 단어 분리 및 형태소 분석 작업을 수행하는 다음 구성 요소를 호스팅합니다.

  • 프로토콜 처리기
    SQL Server 2005에서 이 구성 요소는 지정된 데이터베이스의 테이블에 있는 데이터에 액세스합니다.
  • 필터
    문서에서 텍스트 정보 스트림을 추출하고 텍스트 이외의 모든 서식 정보를 삭제합니다. 자세한 내용은 전체 텍스트 검색 필터를 참조하십시오.
  • 단어 분리기 및 형태소 분석기

내부 테이블

전체 텍스트 검색에서는 다음과 같은 내부 테이블을 사용합니다.

  • fulltext_index_map은 전체 텍스트 키 열 및 문서를 고유하게 식별하는 내부 ID 간 매핑을 저장합니다.
  • fulltext_catalog_freelist는 사용하지 않은 문서 ID를 저장합니다.

[!참고] 이러한 테이블은 내부에서 사용하기 위한 것입니다. 이러한 테이블을 수정하거나 이를 대상으로 쿼리를 실행할 수 없습니다. 이전 버전과의 호환성이나 다음 SQL Server 릴리스에서 사용할 수 있음을 보증하지 않습니다.

참고 항목

개념

SQL Server용 Microsoft 전체 텍스트 검색 엔진
전체 텍스트 인덱싱 및 쿼리 프로세스

관련 자료

내부 테이블

도움말 및 정보

SQL Server 2005 지원 받기

변경 내역

릴리스 내역

2006년 4월 14일

새로운 내용
  • 내부 테이블에 대한 정보를 추가했습니다.