ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • GoogleGuide(How Google Works)
    개발하면서/타인글보면서 2009. 11. 20. 13:03
    반응형
    제가 영어를 공부하고자 시작하였습니다.
    종종 오역이 있을 수 있습니다. 꾸준히 노력해서 줄여야겠지요...
    시간이 지나 양질의 번역글을 많이 썼으면 좋겠네요 : )
    잘못된 부분은 지적해주시면 인신공격빼고는 모두 달게 받겠습니다 : )

    이 페이지는 구글이 어떻게 어떻게 색인을 만들고 쿼리를 가공하여 문서를 보여주는것이 어떻게 하는지 궁금하지 않는 독자는 넘어가도 된다.

    구글은 수천개의 저렴한 컴퓨터를 분산시켜서 일을합니다. 그래서 빠르게 병렬처리를 할수있는것이죠 : )
    병렬 처리는 많은 계산들을 동시에 수행하는것을 말하고, 데이터 처리속도를 크게 높일수있습니다.
    구글만의 세가지 기술은 다음과 같습니다.
    • 구글봇 - 웹 크롤러는 웹페이지를 찾고 내용을 가져옵니다.
    • 색인기 - 모든 페이지의 단어를 정렬하고, 색인된 단어를 커다란 데이타베이스에 저장을 합니다.
    • 쿼리 처리기 - 사용자가 입력한 쿼리와 색인를 비교해서 가장 관련있는 문서들을 추천해줍니다.

    각각의 기술들을 좀더 자세히 알아보겠습니다.

    1. 구글봇, 구글의 웹 크롤러
    구글봇은 웹페이지를 받기위해 웹서버에게 요청을하고, 모든 페이지를 다운로드한뒤 색인기에게 전달하는 역할을 합니다.

    수많은 컴퓨터의 구글봇이 웹페이지를 받기 위해 요청을하고 사용자가 웹브라우저로 볼 수있는 속도보다 더 빨리 페이지를 가져옵니다. 사실 수천개의 다른페이지를 동시에 요청할 수있지만 웹서버의 과부하를 막기위해 구글봇의 능력보다 천천히 웹서버에 요청을 합니다.

    구글봇이 페이지를 찾는방법은 두가지가 있습니다. www.google.com/addurl.html에서 URL을 추가하거나 크롤링을 통해 링크를찾는것입니다.

    그런데 스패머가 부당한 방법을통해 자동으로 URL을 등록하는 로봇을 만들경우가 있습니다.
    그래서 아래와 같이 불규칙한 글씨를 보여줘서 확인을 하고있습니다.


    그리고 페이지를 가져올때 구글봇이 페이지를 가져올때 페이지에 있는 링크도 가져옵니다.

    가져온 링크 데이타는 순서대로 큐에 추가됩니다. 모든페이지의 링크를 가져올때 구글봇은 광범위한 웹을 도달할수있는 링크 목록을 만듭니다. 이것을 deep crawling이라 합니다.(이해 못했음) 

    구글봇이 동시에 천개의 페이지에 요청을 하면 'visit soon'큐에 있는 URL과 계속 관찰하고 있고 이미 만들어진 구글의 색인과 비교를 한다. 구글봇이 같은 페이지를 또 가져오는것을 방지하기위해 큐데이터에서 중복된것은 제거한다. 또한 구글봇은 페이지를 어느정도 간격으로 방문할지 결정한다. 이것은 변하지 않은 페이지를 다시 색인함으로써 자원을 낭비한다고 생각할수 있지만, 다른 한편으로는 구글이 최신의 결과를 보여주는것을 원하는 것입니다.

    현재 색인데이타를 유지하기 위해 자주 변하는 웹페이지를 지속적으로 크롤을 합니다.

    매일나오는 신문페이지나, 주식 시세 페이지는 다운을 받으면 됩니다. (기존의 색인데이타는 유지하면서 새로운것만 추가한다는말같음) 이것을 fresh crawls라고 합니다.

    이 두개의 크롤링 방법으로 구글은 효과적으로 자원을 사용하고 합리적으로 색인데이타를 관리 합니다.


    2. 구글 색인기
    구글봇이 페이지 전체 텍스트를 구글 색인기에게 보내면 받은 데이터로 색인작업및 저장하는 역할을 합니다.
    성능을 높이기 위해 Stop words라고불리는 단어를 무시하게 했습니다.
    is, on, or, of, how, why, 한자리숫자, 한자리 등을 말합니다. 마침표, 쉼표, 여러개의 띄어쓰기도 무시합니다.
    마지막으로 성능을 높이기위해 모든 문자는 소문자로 바꿉니다.


    3. 구글 쿼리 처리기

    여러 부분으로 구성되었는데 첫번째로 페이지랭크라는 구글의 웹페이지의 점수를 매기는 기술이 있습니다.

    그리고 성능향상을 위해 자동으로 저장된 데이터 간의 관계를 학습하는 기술도 있습니다.  [ex)spelling-correcting system]

    단순히 하나의 검색어와 전체 웹텍스트를 색인한것을 매칭한것을 보여주는것입니다.

    사용자는 구글색인한 HTML 코드뿐아니라 페이지의 텍스트도 구글에서 제공하는 Google’s Advanced Search FormUsing Search Operators (Advanced Operators)을 이용해서 검색할 수 있습니다.



    반응형

    댓글

Designed by Tistory.