문제

대상 응용 프로그램은 중간 크기의 웹 사이트 구축 지원백을 몇 천명의 사용자가 시간을 할 수있는 옵션과 함께,규모 했습니다.데이터 모델은 단순한,그리고 캐시 잠재력이 매우 높(~10:1 비율의 읽기 편집하는 행위).

무엇을 해야 될 사항을 고려할 때에 오는 사이에서 선택,관계형 SQL-기반 데이터 저장소를 NoSQL 옵션(예:스와 Cassandra)?

도움이 되었습니까?

해결책

나를 위해,당신은하지 않는 어떤 특정한 문제를 해결합니다.해야 하는 경우 산성,데이터베이스를 사용하여;지 않는 경우,그것은 중요하지 않습니다.끝에서 단지를 구축합니다.고 말 NoSQL:는 경우에만 하는 것이 그렇게 쉬운:

실제로 나가는 경우에는 개최되는 뒷면에서 무언가를 만드 슈퍼 멋진할 수 없기 때문에 선택하는 데이터베이스에,당신은 잘못하고있다.당신이 알고 있는 경우 mysql,단지 사용됩니다.을 최적화하면 당신은 실제로 필요합니다.처럼 사용 k/v 저장처럼 사용하기 rdbms,하지만 하나님이 술을 구축,킬러 애플리케이션!이 것이 중요하다.Facebook 여전히 사용하 MySQL,많은입니다.Wikipedia 사용 MySQL,많은입니다.프렌드를 사용 MySQL,많은입니다.NoSQL 한 훌륭한 도구입니다,하지만 그것은 확실히 될 수 없는 당신의 경쟁력,그것을 가지 않는 응용 프로그램을 만들거,그리고 대부분의 모든 사용자가 자신이 없어에 대해 어떤 이니다.

다른 팁

Digg에는 일부가 있습니다 흥미로운 조항 이 질문에. 본질적으로, 당신은 처리의 부담을 읽기보다는 쓰기로 전환하고 있으며, 이는 고도로 확장 가능한 응용 프로그램에서 바람직 할 수 있습니다. Cassandra도 구체적으로 고도로 이용 가능합니다.

간단하게 Cassandra는 인프라와 같은 Dynamo에서 큰 데이터 모델이 실행되는 분산 데이터베이스입니다. 열 지향적이며 비교적 구조화 된 데이터를 저장할 수 있습니다. 완전히 분산 된 모델이 있습니다. 모든 노드는 동일하며 단일 고장 지점이 없습니다. 또한 매우 결함이 있습니다. 데이터는 여러 노드와 데이터 센터에 걸쳐 복제됩니다. Cassandra는 또한 매우 탄력적입니다. 새로운 기계가 추가되면 읽기 및 쓰기 처리량이 선형으로 증가합니다.

나는 Ian Eure의 경험 법칙을 좋아했습니다.“데이터베이스 위에 Memcache를 배포하는 경우 NOSQL 시스템을 유지하기가 어렵고 자신의 임시를 발명하기가 어렵습니다.”

http://www.rackspacecloud.com/blog/2010/02/25/should-you-switch-to-nosql-too/

당신이 말할 때, 데이터 modell은 다소 간단합니다. 이것은 NOSQL 옵션에 대해 말할 수 있습니다.

선택, 무거운 트랜잭션로드 또는 복잡한 테이블 구조를 만들기위한 속성이 많으면 기존의 SQL 테이블에 대해 말할 수 있습니다.

하나 또는 두 개의 NOSQL 데이터베이스로 데이터 모드를 구현하는 것이 얼마나 어려운지 알아내는 것이 좋습니다. 이것이 다소 어려운 경우, 당신은 또한 고전적인 테이블 스키마를 비교할 수도 있습니다.

NOSQL에 어려움이 있으면 SQL 옵션에 대해 말할 수 있습니다. 그러나 또한 무거운 부하가 NOSQL로 더 잘 처리 될 수 있지만 좋은 SQL 데이터베이스가 충분히 스케일링 할 수도 있습니다 ...

버퍼링은 간단한 프록시 서버로 수행 할 수도 있습니다 ...

어려움에서 NOSQL과 SQL의 혼합도 고려 될 수 있습니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top