2009년 3월 15일 일요일

세계에서 가장 큰 컴퓨터

구글의 데이터센터들은 컴퓨터 과학계의 최고 지성들에 의해서 설계되었다. 이 데이터센터들은 정밀하게 조정된 시스템(전설적인 컴퓨터 설계자 Danny Hillis가 "세계에서 가장 큰 컴퓨터"라고 부르는 것)으로서 작동한다. 그 시스템을 구성하는 각각의 부품들은 빈틈없이 조화롭게 작동하게끔 정교하게 설교되었다. 각각의 센터는 하나 혹은 그 이상의 주문 제작한 서버 컴퓨터들로 구성된 "클러스터"를 포함하고 있다. 서버 컴퓨터들은 구글이 자사의 제조사들로부터 직접 구매한 저렴한 가정용 PC와 거의 같았다.

각각의 컴퓨터는 엔지니어들이 에너지 소모를 최소화하기 위해 개발한 전력 공급 유닛을 통해서 전기를 공급받는다. 그 기기들은 프로그래머들이 최대 속도로 운영되도록 정밀하게 조정한 무료 Linux 운영 체제의 버전을 실행한다. 구글은 자사의 중앙 센터들을 하나로 연결하는 많은 광케이블을 소유하고 있어, 중앙 센터들 사이는 물론이고, 센터와 일반대중이 사용하는 인터넷 사이의 데이터 흐름을 정확하게 통제할 수 있다.

시스템을 하나로 결합시키는 접착제 역활을 하는 것은 구글이 직접 개발한 자사 소유의 독점 소프트웨어다. 이 소프트웨어는, 클러스터에 속한 모든 서버들을 통합 조정하기 위해, 또한 구글의 센터들에 속해있는 모든 클러스터들을 통합 조정하기 위해 개발되었다.

구글은 데이터베이스에 꾸준히 모아지고 업데이트되는 사실상의 인터넷 전체를 지속적으로 복사하고 있다. 그리고 인터넷 전체를 모으고 업데이트하는 것은 "스파이더 링" 프로그램이다.일련의 비밀 알고리즘들은 특정 키워드와의 관련성에 따라 웹 페이지들을 하나도 빠짐없이 분류한다. 모든 웹페이지를 분석해 웹의 포괄적인 색인을 생성한다. 그러면 색인은 각각의 클러스터에 복제된다. 한 사람이 키워드를 구글의 검색 엔진에 입력하면, 소프트웨어는 클러스터들 중 하나에 검색 명령을 내린다. 그러면 해당 클러스터는 수백 또는 수천의 서버에 의해서 동시에 재검사된다.

구글의 엔지니어들에 따르면, 전형적인 검색이 수백업 사이클과 수백 메가바이터의 일기를 요한다고 하더라도, 전체적인 처리는 순식간에 일어난다. 모든 클러스터와 개개의 서버들 사이에서 처리량의 균형을 유지하는 것은 일종의 교통 역할을 하는 조정 소프트웨어다.

[출처: "Big Switch"]

댓글 없음:

댓글 쓰기

팔로어