본문 바로가기

검색엔진

경쟁력을 키우기 위해선 고부가가치 산업을 육성해야 한다. 또 하나 묵과할 수 없는 말이다. 구부가가치 산업을 육성해야 한다. 이 말을 결국 실업자를 더 많이 만들겠다는 것과 같다. 사실 기존 돈이 많이 안되는 산업을 중국에게 넘기고 돈이 잘 되는 산업만 가지고 있겠다는 것이다.기업 입장에서는 좋은 말이다. 회사의 수익구조가 좋아지기 때문이다. 자 고 부가가치산업에서 사람이 많이 필요할까? 의문이다. 내가 보기엔 적어도 기존 산업보다는 적게 필요할 것이다. 이 남는 사람들은 도대체 뭘 먹고 살아야 하는가? 기존 산업에 종사하는 사람은 중국으로 이민가서 기존에 하던 일을 그대로 해야하는 것인가? 기존 산업에 종사하는 사람은 국내 업체과 경쟁하는 것이 아니라 중국 업체와 경쟁하는 것이다. 그 기존 산업이 전에는 웬만하면 할 수 있는 사업이었지만 현재는 자동차, 반도.. 더보기
다중파일 vs 복합파일 K2로 색인을 만들면 6만 5천개 단위로 segment를 만들게 된다. 이 숫자는 정해져 있기 때문에 바꿀수는 없다. Lucene의 경우 사용자가 지정한 수치에 따라서 segment가 만들어진다. K2와 Lucene 모두 데이터가 늘어나면 색인 파일 갯수도 비례해서 늘어나게 된다. 만약 6억건의 데이터라면 어떻게 될까? K2는 1만개의 파일을 열어야지 검색할 수 있다. 파일 오픈하는데 소요되는 비용이 검색비용보다 더 클수도 있다. 이런 문제를 Lucene에서는 복합파일구조로 해결했다. 논리적으로 기존과 같은 구조이지만 모든 파티션 파일을 하나에 넣는 것이다. 이런 방식이 효율적일 것 같다. 기본적으로 복합파일 구조이나 만약 다중파일구조를 쓰고 싶다면 소스코드에 setUseCompoundFile(false.. 더보기
검색 엔진을 만들어 보자, Nutch 사용자가 간단하게 검색 엔진을 만들 수 있는 오픈소스 도구로 Nutch가 있다. Nutch는 Apache Lucene 인덱싱 API 위에서 동작하는데, Lucene을 편하게 쓸 수 있도록 여러 가지 도구를 추가해서 사용자가 쉽게 검색엔진을 만들 수 있게 해 준다. Nutch에 대한 전반적인 내용 여기 에서 볼 수 있다. 글을 쓰는 지금 안정적인 릴리즈는 0.8.x 이므로, 0.8.x를 어떻게 쓰는지 살펴 보자. 간단하게 한글로 설명하지만, 여기에 있는 내용은 Nutch 0.8.x Tutorial 을 기반으로 하고 있다. Requirements Java 1.4.x, either from Sun or IBM on Linux is preferred. Set NUTCH_JAVA_HOME to the root o.. 더보기