index: 3개의 글
이번 포스팅할 내용은 짧은 내용이다. 아래와 같은 Document가 있다고 생각해보자. {_id:"1234",name:"yeoseong",age:"28",address:"aaa"} 위의 도큐먼트에서 인덱스된 필드가 "name"필드라고 가정하자. 위의 도큐먼트를 검색하기 위해서는 아래와 같은 쿼리를 작성할 수 있을 것이다. db.users.find({name:"yeoseong"}) 위 쿼리의 조건에는 이미 인덱스로 스키마가 등록된 필드이기 때문에 데이터를 풀스캔하는 것이 아니라 인덱스를 서칭해서 결과값을 받아올 것이다. 하지만 조건 값에 일부로만 검색을 하면서 인덱스를 스캔하기 위해서는 어떻게 해야할까? 인덱스 프리픽스(Prefix) 스캔 : 문자열 좌측 일치 검색 문자타입의 필드 인덱스가 있고 일부 문자..
package com.lucene.study; import java.io.File; import java.io.FileFilter; import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import org.apache.lucene.analysis.standard.StandardAnalyzer; import org.apache.lucene.document.Document; import org.apache.lucene.document.Field; import org.apache.lucene.index.IndexWriter; import org.apache.lucene.index.IndexWrite..
Index 개요 Index는 MYI (MySQL Index)파일에 저장 됩니다. Index가 설정되지 않았다면 Table Full Scan이 일어 나 성능이 저하 되거나 치명적인 장애가 발생 합니다. Index는 검색 속도를 향상 시키는 장점이 있지만, update, insert, delete 속도는 저하 됩니다. 이는 Table의 Index 색인 정보를 갱신하는 비용이 추가 되기 때문입니다. Index 설정시 이런 부분들을 위의 하여 효율적인 컬럼 선정이 이루어 져야 합니다. 주 목적은 다음과 같습니다. 조건과 일치하는 열을 빨리 찾기 위해 사용. JOIN시 다른 Table의 열을 추출 하기 위해 사용. Max, Min값을 찾기 위해 사용. 다음과 같은 사항을 고려 하여 사용하면 좋습니다. Index의..