2012-11-30 2 views
-1

간단한 기본 질문이 있습니다. 내가 페이스 북, Gmail과 같은 대형 웹 사이트를 가지고 있다고 가정 해보십시오. 이 사이트는 매일 수백 기가 바이트의 정보를 저장합니다. 내 질문은이 사이트가 데이터베이스에 이러한 큰 정보를 저장하는 방법입니다 (데이터베이스 용량 때문에). 하나의 데이터베이스 만 있습니까? 이 사이트에 대해 하나의 서버 만 있습니까? 다른 서버와 데이터베이스가 있다면 어떻게 서로 통신 할 수 있습니까?데이터베이스에 엄청난 양의 데이터를 저장하는 방법

그들은 분명히 하나의 컴퓨터를 사용하지 않는

답변

0

해당 사이트 (이 사이트)에 의해 고용 다양한 아키텍처에 대한 정보를이 사이트에서보세요 : http://highscalability.com/all-time-favorites/

이러한 사이트의 대부분은 NoSQL에라는 전략을 갔다 - 즉 그들은 돈이다 ' 전통적인 RDBM 데이터베이스를 사용하지만 대신 지속될 수있는 자체 객체 관계 프레임 워크를 만들었습니다. 이 전략은 전통적인 DB 방법의 성능에 심각한 영향을 줄 수있는 여러 가지 제약 조건을 없앰으로써 대규모로 잘 작동합니다. 그러나 이것은 일반적으로 사이트의 시나리오에서 일반적으로 받아 들일 수있는 안정성 저하를 초래합니다.

ps. 당신의 질문이 일반적인 관심사라면 걱정할 필요가 없습니다. 고도로 확장 가능한 응용 프로그램을 구축하고 잠시 동안 고려해 보려한다면 - 세계 인구의 상당 부분을 차지할 것입니까? 아니면 수천 명의 사용자를위한 사이트를 작성하고 있습니까? 후자의 경우 페이스 북 스타일 조정이 필요하지 않습니다. 노력과 자원을 다른 곳에 투자하십시오. 이전 시스템이 작 으면 시스템을 발전시켜 사용자 기반이 성장함에 따라 투자 및 전문 지식을 도입하십시오.

관련 문제