Ruby로 짜본 구글 PageRank 알고리즘

오늘 집에 있으려니 좀이 쑤셔서 요즘 공부하고 있는 Ruby로 그동안 틈틈히 봐두었던 Google PageRank 알고리즘을 짜보았다. 물론 콘솔 기반으로 만들었고 이해하기 위해서는 약간의 링크 메트릭스에 대한 지식이 필요하다. 노드의 갯수? 이것은 웹문서의 갯수라고 생각하면 된다. 스샷에서는 3개라고 했으니 이 프로그램 전체에 있는 웹문서는 3개뿐이다. 이 3개 노드 사이에서 서로 링크에 관련된 정보가 필요한데 이것이 바로 […]

계속 읽기

Search Engine Matrix Revolution 10월 10일을 기대하며!

검색엔진 개발자의 로망인 구글 R&D센터에 대한 상세 발표가 이제 몇일 남지 않았다. 서명덕 기자님의 블로그에 들어갔다가 재미난 동영상이 있어 두고두고 볼려구 퍼왔다. 이름하여 Search Engine Matrix Revolution 메트릭스 동영상인데 갑자기 집에 내려가면서 메트릭스3를 보고 싶은 생각에 사로잡혔다. ㅎㅎ 구글이 R&D 센터를 국내에 설립하는건 검색엔진 개발자로서는 쌍수를 들고 환영할 일이다. 그 “don’t be evil”이라는 구글의 구호처럼 […]

계속 읽기

집에 오자마자 정석책 보고나서 글쓰기…

서울에 있는 내 방에서 가장 오래된 책은 바로 ‘수학의 정석’이다. 대학원 공부하면서도 심심치 않게 꺼네보는 책도 역시 ‘수학의 정석’이다. 그때 아무 느낌없이 다가오던 걸듯이 왜 이제서야 커다란 의미로 다가오는지….쩝 구글 페이지 랭크 공부하면서 Matrix부분에 대한 공부가 좀 필요할거 같아서 “선형대수학”(서점에서 가장 얆은 책은 골랐다)을 구입해서 잼나게 보구 있는데, 여기서 벡터의 내적쪽에 가니까 코사인 제2법칙이 나오더라. […]

계속 읽기

구글 R&D 센터 건립 가시화

구글 한국 투자 계획 밝힌다. 10월 10일 발표 드디어 소문만 무성했던 구글 R&D센터 건립이 기정 사실화 되는군. 워낙에 양치기 소년 역할을 많이 해서 주변 분위기는 잠잠한듯 하다. 그런데 대체 어디다가 투자를 하는거시야? 안테나를 세워보니 구글에 뽑혔다는 개발자는 한명도 레이더에 안걸리고… 사람 없이 개발센터가 건립이 되려나? 하님 회사를 통째로 인수를 하나? 10월 10일이 무척 기대가 된다. […]

계속 읽기

색인문서 파싱에서 정규식 사용할까?

HTML이든 뭐든 원본문서에서 일단 임시 구조화된 문서로 파싱을 한것을 다시 설정에 따라 파싱을 하는 작업을 하고 있다. 인덱싱에서 0.01초의 퍼포먼스 저하도 용납이 안되니 여러가지를 고민하지 않을 수가 없다. 일단 그 임시구조문서 파싱을 하는것인데, 파싱시 정규식을 쓸까 말까 고민을 많이 했다. 이 정규식이라는 놈이 정규식을 어떻게 쓰느냐에 따라 엄청난 퍼포먼스 차이가 나는 놈인지라 쓸데 안쓸데를 가려서 […]

계속 읽기

웹 지도

전에 “링크“라는 책에서 웹의 지도라는 항목이 나왔었는데 이제서야 Google Pagerank 알고리즘을 분석하면서 웹 그래프를 보고 싶어 찾아봤다. from : http://mundi.net/maps/maps_020/ 정말 해파리 처럼 생겼군. ㅋ Munzner의 아이디어를 활용해 Hyun이 자바로 구현한 프로그램으로 만든 웹 그래프이다.(535,102노드와 601,678링크로 이루어 졌다.) 전체적인 웹의 지도를 의미하는건 아닌듯 하고 예제라고 하는데.. 아마도 이런부분에 대한 연구는 구글에서 하고 있지 않을까 한다.구글은 […]

계속 읽기

Lucene KoreanAnalyzer : 사전 인터페이스 및 음절정보테이블 룩업 메서드 제작 완료

오랫동안 끌어왔던 한국어 사전 인터페이스를 완료 했다. 동적으로 커넥션 관리(품사별로 음절 길이에 따른)를 하게끔 제작을 했고 말이 많았던 Hash, Trie모듈을 이용한 메모리 로딩은 잠시 미루기로 했다. Eclipse로 그려본 사전쪽 클래스 구조다. (품사 음절별 사전 객체는 무조건 하나만 생성된다. 그리고 그 사전객체의 커넥션은 접속을 끊기전에는 계속 연결시켜 놓았다.(색인시 종종 쓰기보다는 매우 자주 사용되기 때문이다.)) 그리고 제공 […]

계속 읽기

이 책 살까 말까?

Google’s PageRank and Beyond 이 책 보신분? 수학이 나온다니 일반인을 위한 책은 아닌거 같고. 그렇다고 전문가 수준의 책인가? 5월달에 나온 책인데 별다른 서평도 없다. 궁금하군. 아 쉬~~~~ 그나저나 Building Search Applications with Lucene and Nutch책이 올해 10월에 나오기로 했는데 내년 3월로 연기가 되어 버렸다. 이런 낭패가… ㅜㅜ 참으로 기대를 많이한 책인데.. 쩝

계속 읽기

typos님의 블로그 검색엔진

typos님의 2천만건의 데이터를 색인한 결과물이 나왔다. 물론 Lucene 기반이지. 시범적으로 서버 두대로 색인하셨다는데 아직 테스트 버전이다. http://www.blogreader.co.kr 아직 가지고 계신 1억 3천만건의 블로그 데이터를 색인하지는 않았지만 조만간 뭔가 결과물들을 보여주시지 않을까 한다. 그런데 매일 한국어 분석기가 없다고 하시는데 할말이 없다. (현재 공적이든 사적이든 무지 바쁜 나날을 보네고 있다. 하긴 휴가 이후로 분석기 소스코드 손도 못데고 […]

계속 읽기

좋은 봇, 나쁜 봇

봇을 개발해봤고 개발하고 있는 개발자 입장에서 좋은 봇과 나쁜 봇에 대해 정의된 글이 있어서 소개해본다. 좋은 봇 robots.txt를 준수하는 로봇 굉장히 빠른 속도로 크롤링해서 사이트에 부담을 주지 않는 로봇 적당한 시간에 신선한 자료를 가져오는 로봇 특정한 사이트를 크롤링하는데 소요한 트래픽 자료를 리턴한다. 나쁜 봇 컨텐츠를 접근하기 위해 수단과 방법을 가리지 않는다. robots.txt를 지키지 않는 봇 […]

계속 읽기