1 / 8

제 4 장 요약화일 4.1 소개 텍스트 자료 검색 예 전자 사무실, 도서관, 법률, DNA 유전자탐색, 영상 탐색 … 매우 크고, 거의 수정되지 않는 특성

제 4 장 요약화일 4.1 소개 텍스트 자료 검색 예 전자 사무실, 도서관, 법률, DNA 유전자탐색, 영상 탐색 … 매우 크고, 거의 수정되지 않는 특성 문헌 전체의 검색 -> 도치 -> 요약화일 요약화일: 부정확한 여과장치( filter) 개념에 기반 빠른 테스트, 허위 적중(드롭) 텍스트 화일에 순차적으로 저장된 문헌들의 “ 요약( signature) ” ( 해쉬-코드된 비트 패턴)을 저장. 장점 전체 스캐닝보다 빠르다, 공간 오버헤드가 작다 삽입이 용이하다: 추가-전용-연산 적합한 경우

lily
Download Presentation

제 4 장 요약화일 4.1 소개 텍스트 자료 검색 예 전자 사무실, 도서관, 법률, DNA 유전자탐색, 영상 탐색 … 매우 크고, 거의 수정되지 않는 특성

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 제 4 장 요약화일 4.1 소개 • 텍스트 자료 검색 예 • 전자 사무실, 도서관, 법률, DNA 유전자탐색, 영상 탐색… • 매우 크고, 거의 수정되지 않는 특성 • 문헌 전체의 검색 -> 도치 -> 요약화일 • 요약화일: 부정확한 여과장치(filter) 개념에 기반 • 빠른 테스트, 허위 적중(드롭) • 텍스트 화일에 순차적으로 저장된 문헌들의 “요약(signature)” (해쉬-코드된 비트 패턴)을 저장

  2. 장점 • 전체 스캐닝보다 빠르다, 공간 오버헤드가 작다 • 삽입이 용이하다: 추가-전용-연산 • 적합한 경우 • 중간크기의 DB: 응답시간이 DB 항목수 N에 선형비례하므로 • 매우 큰 DB는 곤란: 허위 드롭 문제 (1로 채워진 요약) • 광디스크, 병렬기계, 분산된 문헌 DB

  3. 4.2 기본 개념 • 중첩기호법 사용 • 문헌을 “논리적 블록”으로 나눈다 • 각 단어별로 “단어 요약”을 만든다 (그림 4.1) • 총 F비트, 그 중 m비트는 1 (해쉬 함수), 나머지는 0 • 단어 요약 -OR연산-> 블록 요약 -연결-> 문헌 요약 • 순차요약화일 (SSF: Sequential Signature File) (그림 4.2) • 요약행렬의 각 열을 순차적으로 저장 • 속도 개선 방안 (큰 DB의 경우) • 압축: 행렬이 희소(sparse)한 경우 • 수직분할: 비트별로 다른 화일에 저장 -> 삽입 비용 개선 • 수평분할: 요약들을 그룹핑 (AND/OR) -> 탐색 개선 • 예) 실행길이 부호화(run length encoding) (그림 4.5)

  4. 4.3 압축 • 희소 구조 요약 생성 후 저장 전 압축 (그림 4.4) 4.3.1 비트-블럭 압축 • 좀 더 빠른 탐색, 블럭당 단어수(1의 개수)의 증가시 유리 • 부분1: 1의 존재여부, 부분2: 1의 개수, 부분3: 1의 위치 01011 | 10 0 0 | 00 11 10 00 (저장형태)

  5. 또다른 예) • 희소 벡터 0000 1110 0000 0010 1000 • 저장 형태 01011 | 110 0 0 | 000110 10 00 * 1의 개수가 많아져도 블럭을 분할할 필요가 없다 4.3.2 가변 비트-블럭 압축 • 비트-블럭 크기 bopt를 변경 가능 (그림 4.8) • 블럭 내 단어수 W(1의 개수와 비례)가 클수록, • bopt가 더 크고, 비트-블럭의 개수가 더 적다 • 부분1이 짧다 • 부분2가 짧다 • 부분3의 각 오프셋의 개수는 적고 오프셋의 크기는 크다

  6. 4.4 수직분할 • 주기억장치에 문헌요약의 꼭 필요한 부분만을 가져오기 위한 것 4.4.1 비트-슬라이스된 요약화일(BSSF) (그림4.11) • 각 비트 위치마다 하나의 서로 다른 화일 F를 이용 • 단어의 탐색: 단어와 비트 화일의 AND => m개의 화일 접근 • 결과: N(총 논리 블럭 개수)비트 중 몇 개가 “1”인 비트벡터 • 새 논리블럭의 삽입: 화일당 한번의 디스크 접근과 한번의 기록 4.4.3 프레임-슬라이스된 요약화일 (그림 4.12) • 각 단어의 요약 비트 중 “1”들이 인접하도록 강제 해쉬 • 두 개의 해쉬 함수 사용: 프레임 선택 & m비트 “1” 세팅 • 프레임 중심으로 저장: 각 프레임을 연속되는 디스크 블럭으로 • 한 단어 질의에 한 프레임만 검색: 단 한 번의 랜덤 액세스

  7. 4.5 수직 분할과 압축 • 매우 희소한 요약행렬을 생성하고, 비트-슬라이스 형태로 저장 4.5.1 압축된 비트 슬라이스 • 비트 슬라이스 방식(SSF보다는 빠른)의 개선 여지 • 탐색 시 m개의 화일 검색, 삽입 시 너무 많은 디스크 액세스 • 개선안: m1로 하고 (매우 희소), 압축하여 저장 (그림 4.14) • S개(비트 슬라이스 수)슬롯의 해쉬 테이블 사용 (그림 4.15) • 논리 블럭 단위로 문헌을 분할하지 않아도 된다 • 비트 화일에 포인터(1의 위치 대신)를 저장함으로써 따로 포인터 화일을 두지 않을 수 있다 • 압축된 비트화일(=포스팅 화일) • Bp바이트 크기의 포스팅 버켓들로 구성 (포인터 포함) • 역화일과의 차이: 실제 단어는 어디에도 저장되지 않는다

  8. 4.6 수평분할 • 비트 슬라이스에서의 순차적 검색을 회피 • 비트별 해쉬 대신 문헌 요약별 해쉬, 혹은 B트리 등 사용 4.6.1 자료 독립적인 경우 (Gustafson의 방법) • 레코드=문헌, 속성=문헌을 묘사하는 키워드 • 키워드 해쉬 함수 h(w)가 모든 키워드를 0~15로 해쉬 • 레코드 요약은 6개의 비트가 1인 총 16비트 • comb(16, 6) = 8,008 가지 • 레코드 해쉬 함수: C(p1, 1) + C(p2, 2) + … + C(P6, 6) • p: 1의 위치 • 한 단어 질의 : C(15,5)=3,003개의 슬롯 접촉 • 두 단어 질의: C(14,4)=1,001개의 슬롯 접촉 • 예: 0100111000100010

More Related