Lucene KoreanAnalyzer : 다시 시작하다.

저번에 검개그 오픈소스 검색엔진 프로젝트 차원에서 형태소 분석기를 만들어 보자는 의견이 있었고, 오늘 그에 대한 첫 비공식 모임을 가졌다. 개발할 시간이 없어서 이래저래 많은 의욕적인 분들과 접촉을 하면서 함께 코웍하기를 그동안 그렇게나 원했지만 기회가 나지 않았다.그동안 안철수 연구소에서 일하시면서 함께 개발하고자 하는 의욕을 보여주신 분도 있었고,(이분은 학교를 외국에서 다닌다며 출국해버렸다. ㅜㅜ) 금전적(ㅜㅜ)으로 도움까지 주시려 하셨던 […]

계속 읽기

Google may use ‘Edit Distance’ in ‘Query suggestion’?

이전 포스팅에 Edit Distance를 설명하고 Lucene의 Fuzzy Query에 대해서 설명을 했는데, 곰곰히 생각을 해보니 Google에서 Edit Distance를 “이것을 원하셨습니까?”에서 사용하지 않을까 생각을 해봤다. (주의 : 전적으로 나의 생각이고 이렇게 하고 있을수도 아니면 다른방법을 쓸수도 있다.) 우리가 단어를 잘못 입력했다는것은 대부분 1글자내지 2글자의 삭제, 갱신, 삽입의 연산 내에 있다는 가정하에….. 1) Delete, Update, Insert에 대한 cost를 […]

계속 읽기

Dynamic Programming : Edit Distance (and Lucene FuzzyQuery)

Lucene에서 Edit Distance를 이용해 쿼리를 날려서 검색 결과를 받는 기능이 있다. 그때 막연하게 시간이 많이 걸린다고 책에서 나와 있는 관계로 왜 많이 걸릴까 고민을 하지 않던 찰라 기회가 생겨서 Edit Distance를 구하는 알고리즘을 공부하고 구현해 봤다. 결과적으로 Dynamic Programming 문제이긴 한데, 이것과 배낭문제 그리고 어제 학교에서 공부했던 Routing Algorithm(최단 라우팅 거리 측정 알고리즘)을 비교해서 보니 […]

계속 읽기

sphere 블로그 검색엔진의 랭킹에 대한 생각

sphere 블로그 검색에 대한 약간의 힌트를 얻을 수 있는 자료들을 모아서 mind map으로 정리를 해봤다. 블로그의 링크 구조에 대한 외국 논문은 약간 구할 수 있었는데, 블로그 검색에 대한 글을 전혀 볼 수가 없었다. 일단 학위논문 주제를 블로그 검색으로 정한봐 이런저런 논문을 보고 있고 정리도 좀 하고 있는데 sphere를 그냥 지나칠 수가 없군. 그래서 sphere에 대한 […]

계속 읽기

MapReduce와 GFS

GFS의 구조를 단적으로 보여주는 그림이다. Master서버에 거의 부하가 가지 않는 그런 구조로 되어 있고, 여러 replics를 두어서 chunk 서버 하나가 다운이 되도 그대로 수행이 가능하게끔 구성이 되어 있다. 64MB의 크기로 chunk가 나뉘어져 있어서 chunk 인덱스를 계산하기가 편하게 되어 있고, 네임 스페이스 검색은 Trie 구조로 되어 있다는것을 그림으로 살짝 엿볼 수 있다. 이런 구조의 가장 큰 […]

계속 읽기

[검.개.그 공지] 검색엔진 개발 프로젝트를 진행하려 합니다.

이런 저런 문제 때문에 오픈소스로 개발하고 있던 형태소 분석기의 소스공개도 못하고 개발할 시간이 없어서 망설이고 있는 시점에 지지난주 주말에 한번 모여서 “하얀눈길”님이 추진하고자 하셨던 공개 검색엔진 개발 프로젝트가 가시화 되는거 같다. 몇일전에 공지 문서 하나가 날라왔었는데 카페에 가보니 드디어 공지가 떳다. 안녕하세요. 카페지기 하얀눈길입니다. 카페차원에서 검색엔진 개발을 시작해 보려 합니다. 자세한 사항은 아래 첨부내용 참고하시구요.. […]

계속 읽기

PageRank와 확률론

Google’s PageRank and Beyond를 보는데 역시나 선형대수학을 넘으니 이제는 확률론이 발목을 잡는다. 확률론은 기초적인 부분만 알지, 여기서 나오는 마르코프 체인 같은 부분은 잘 모른다. HMM에 대한 공부를 해봤지만 여기서 쓰이는 부분에 대한 지식이 없어서 마르코프 체인의 수렴 조건에 대한 이해를 잘 하지 못하고 있다. 그래서 책을 잡았다. (하지만 책도 마지막 쳅터에 이걸 다루고 있다는.. ㅡㅡ;) […]

계속 읽기

BigTable의 Tablet Serving과 Compaction 그리고 Lucene의 Incremental Indexing

김형준님의 강의를 바탕으로 논문을 보고 있는데, 강의 들으면서 낯설지 않은 부분이 Tablet Serving과 Compaction 부분이였다. 한번 정리해 본다. 논문에 나온 그림 새로운 데이터가 들어올때. BigTable의 DB 무결성을 유지하기 위해서 메모리기반의 버퍼를 유지하고 또한 그 버퍼의 Copy를 이용해서 계속 서비스를 유지하게 하면서 minor compaction을 수행한다. 물론 minor compaction이 완료가 되면 메모리를 지운다. 그 강의에는 나오지 않았지만, […]

계속 읽기

Google BigTable에 대한 번개 세미나

오늘 typos님이 주최하신(?) 비공식 BigTable 모임에 참가를 했었다. 이 모임에 맨주먹 불끈쥐고 참가할 수 없어서 잠깐 BigTable논문을 어제 학교 다녀오면서 쬐금 봤었는데 수박 겉핧기로 알고 자리에 참석을 했다. (시간이 없다는 핑계~~~ ㅡㅡ;) XXW0t8lzhe.pdf 한 두어시간 정도 B.T.B 맥주집에서 typos님과 나와, 이름을 밝힐 수 없는 어느분과 http://jaso.co.kr의 운영자이신 김형준님과 함께 자리를 함께 했다. 주로 검색쪽보다는 대용량 […]

계속 읽기

Lucene을 쓰고도…

자신의 검색기술에 Lucene이 기반이 되는데도 그에 대한 말 한마디 없는 사람들 참으로 대단하다는 생각이 든다. 게다가 한술 더떠서 자신의 업체가 검색기술력이 있다고 미디어에 떠들고 다닌다. Lucene을 쓰면서 Lucene의 장점과 단점을 속시원히 말씀하고 다니시는 분들이 있는가 하면, 미디어에 Lucene이 자신의 기술인양 뻥을 치는 곳을 요즘 부쩍 많이 본다.(그런곳은 절대 Lucene을 쓴다는 말을 안한다. ) 무엇보다 가장 […]

계속 읽기