8. 역 파일 생성기 만들기

역 파일 생성기는 검색 효율을 높이기 위해 형태소 이름으로 포함하는 웹 페이지를 빠르게 검색할 수 있는 역 파일을 생성하는 엔진입니다.

 

역 파일 생성기는 웹 로봇에서 수집한 내용을 형태소 분석기로 분석한 결과를 역 파일 목록에 추가하는 작업을 수행합니다. 역 파일 목록에 추가하는 작업에서는 새로운 형태소를 발견하면 역 파일 목록에 형태소를 추가하고 추가한 형태소마다 테이블을 동적으로 생성합니다. 그리고 생성한 동적 테이블에 웹 페이지 주소와 참조 개수를 추가합니다. 대부분의 이를 수행할 수 있는 작업은 저장 프로시저로 만들었습니다.

 

여기에서는 미리 작성한 저장 프로시저를 이용하는 역 파일 생성기를 만듭시다.

 

역 파일 생성기에서는 검색 질의 내용에 포함한 형태소 이름으로 포함하고 있는 웹 사이트를 검색할 수 있게 하여 빠른 검색을 제공합니다. 그리고 여기에서는 페이지 내에 포함한 전체 형태소 개수에서 특정 형태소의 참조 개수를 기억하여 이를 기반으로 빈도에 따라 TF값을 산정할 수 있는 정보를 생성하고 보관합니다. 또한 전체 수집 페이지 개수와 특정 형태소를 포함하는 페이지 개수의 비율로 DF값을 산정할 수 있는 정보도 보관합니다.

 

따라서 여기에서 작성하는 역 파일 정보는 검색과 동시에 검색 결과를 순위화하는 랭커엔진에 필요한 정보를 생산하는 역할도 수행합니다.

[그림 8.1] 역 파일 생성기 예광탄 메인 폼 자식 컨트롤 배치
[그림 8.1] 역 파일 생성기 예광탄 메인 폼 자식 컨트롤 배치
번호 컨트롤 이름 컨트롤 유형 설명
1 gp_posted GroupBox 수집한 웹 정보 그룹 박스
2 lb_title_info Label 정보 표시
3 tbox_title TextBox 타이틀 입력 창
4 lb_paddr_info Label 정보 표시
5 tbox_paddr TextBox 수집한 웹 사이트 주소 입력 창
6 lb_oaddr_info Label 정보 표시
7 tbox_oaddr TextBox 수집 요청한 사이트 주소 입력 창
8 lb_depth_info Label 정보 표시
9 nud_depth NumericUpDown 상대적 깊이
10 lb_pdate_info Label 정보 표시
11 dtp_posted DateTimePicker 수집한 일시
12 lb_content_info Label 정보 표시
13 tbox_content_info TextBox 수집한 페이지 내용 입력 창
14 btn_parse Button 형태소 분석 버튼
15 lb_result_info Label 정보 표시
16 lv_result ListView 분석 결과 목록
17 ch_name ColumnHeader 컬럼 헤더(형태소 이름)
18 ch_rcnt ColumnHeader 컬럼 헤더(참조 개수)
19 gv_inv_file GroupBox 역 파일 그룹 박스
20 lb_mname_info Label 정보 표시
21 tbox_mname TextBox 형태소 이름 입력 창
22 btn_ref_inv Button 역 파일 참조 버튼
23 lv_mo_site ListView 역 파일 상세 정보 목록
24 ch_addr ColumnHeader 페이지 주소
25 ch_refcnt ColumnHeader 참조 개수

[표 8.1] 역 파일 생성기 메인 폼의 자식 컨트롤