트위터의 글들을 분석하다 보니 형태소 분석이 크게 의미가 없다는 결과를 얻게 되었다.

첫번째 이유 .. 중요도에 의한 검색이 무의미 해졌다. 140자가 이미 단문인데... 이 단문에서
중복된 키워드와 짧은 문장에 대한 가중치를 적용할 경우 스팸성 글들이 상위권을 차지하게
된다. 그러므로 시간순으로 나열하게 되는데, 이때 아주 정확하고 광범위한 사전기반 형태소
분석을 하지 않을 경우 검색 품질의 신뢰도에 심각한 영향을 가져 오게된다.

두번째 이유 .. 아무리 노력해도 맞춤법이 100% 맞지 않는것이 현실인데 단문이라는 제약
사항을 충족시키기 위해 많은 사람들이 문법을 의도적으로 축약하거나 붙혀쓰는 경우가
거의 모든 문장에서 엿보인다.
이경우 논리적으로 한권의 논문 분량에 해당하는 맞춤법 처리와 형태소 분석 알고리즘이
필요해진다. 즉, 개발의 주된 목적이... 전도되는 상황을 맞게 된다는...

그렇다면 대안은 무엇일까?

LiveK와 Google 등의 검색패턴을 기계적으로 분석해본 결과!

루씬에서 흉내낼수 있는 모델은 N-Gram 과 사전기반분석을 적절히 혼용한후
StandardAnalyzer 로 검색어를 분리해서 검색하는것이 가장 좋은 모델이 될것 같다.



Posted by 나란트
처음 1.5억건의 트윗을 대상으로 인덱싱 작업을 5대의 서버로 진행 했다. 인덱싱 자체는 오랜기간 숙달된 작업이라 그다지 어렵지 않았으나 루씬이 얼마나 소화해 줄지가 관건이였다.

그런데 한가지 문제가 보유하고 있는 메인서버(PC급)의 메모리가 4GB 였는데 이론적으로 1억건 이상의 자료를 캐쉬할 수 가 없었다.

결국 16GB로 메모리를 업그레이드 하려고 했으나 PC급 서버여서 그런지 8기가 정도 밖에 지원되지 않았다.

1.5억건의 인덱싱을 완료한후 루씬을 가동했는데... 대략 1.2억건을 탑재한 상태에서 7GB 정도의 메모리(기본포함)를 잡아 먹었다.

검색 속도는 만족할 만한 수준이였으나 증분색인과 동시접속을 처리 하기 위해서는 16기가 이상의 메모리가 기본으로 필요할것 같다.

그나저나 루씬... 비록 2.3.1을 사용하고 있지만 설계하기에 따라 1억건 이상도 단일 서버로 운영이 가능하다는걸 최초로 증명한게 아닐까 싶은데...
Posted by 나란트
처음 트위터를 크롤하면서 한국인들이 작성한 트윗이 최소한 1-2억개는 될것이라고
생각했었는데 기본적으로 한글을 사용하는 사용자의 수가 너무 적다는것에 적잖이 실망하기도 했다.

최소 30만명은 될것이라고 봤는데 현재 다봇의 크롤러가 추출해낸 한글 사용자는 2010년 4월 15일 현재 대략 185,000명이다.

이들이 작성한 트윗은 약 4,000만개 안팎인데... 한 계정에 대해 최대로 가져올 수 있는
트윗의 개수가 3,200개로 제한되어 있어 정확한 수치를 가늠하기는 어려운 상태이다.

다봇이 대략 2010/2월 말부터 크롤을 시작했는데 조금 더 일찍 시작 했었으면 하는 안타까움이
있는게 사실이다.

어찌됐든 처음엔 한글 사용자와 한글 사용자가 팔로잉한 외국인 까지 크롤 범주에 넣었는데
대략 3-4억건 정도가 크롤되었다.

이중 한글 트윗이 1-2억건은 될것이라고 봤는데... 그 기대는 여지없이 무너지고... 의외로 한글사용자들이
외국인을 팔로잉한 수가 많고 외국인은 상대적으로 오랜기간 사용하여 트윗이 많다는걸 알 수 있었다.

현재의 다봇은 대략 4,000만건의 트윗을 대상으로 검색과 인덱싱을 진행하고 있다.
Posted by 나란트
◀ PREV : [1] : [2] : [3] : [4] : [5] : ... [7] : NEXT ▶

BLOG main image
포털 검색이 너무 인위적으로 편집되거나 자사의 컨텐츠 위주로 나열되는 모순에 염증을 느낀 아마추어 프로그래머의 검색엔진 도전기! by 나란트

공지사항

카테고리

분류 전체보기 (19)
다봇소개 (2)
개발일기 (3)
횡설수설 (3)
개발관련 (10)

최근에 받은 트랙백

글 보관함

달력

«   2012/01   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31        
Total : 4,658
Today : 3 Yesterday : 8