[nosql] Amazon SimpleDB 및 Amazon DynamoDB

Amazon SimpleDB 가 무엇인지에 대한 기본적인 이해 가 있지만 Amazon DynamoDB 설명 에 따르면 NoSQL 키-값 저장소 서비스 와 거의 같은 것으로 보입니다 .

누군가가 단순히 그들 사이 의 주요 차이점을 설명하고 어떤 경우에 다른 것을 선택 할지를 말할 수 있습니까 ?



답변

이는 각각의 FAQ Q : Amazon DynamoDB는 Amazon SimpleDB와 어떻게 다릅니 까? 어느 것을 사용해야합니까? (해시 링크는 더 이상 작동하지 않지만 페이지 내에서 질문을 찾기 위해 인 페이지 찾기를 사용하십시오) 단락의 끝에 가장 간단한 요약이 있습니다.

SimpleDB에는 확장 제한이 있지만 쿼리 유연성이 필요한 소규모 워크로드에 적합 할 수 있습니다. Amazon SimpleDB는 모든 항목 속성을 자동으로 인덱싱하므로 성능 및 확장 비용으로 쿼리 유연성을 지원합니다.

따라서 성능 / 확장 성과 단순성 / 유연성 사이의 균형을 유지합니다. 즉, 더 간단한 시나리오의 경우 DynamoDB 용 애플리케이션을 설계하는 복잡성을 피하기 위해 SimpleDB를 시작하는 것이 더 쉬울 수 있습니다 (아래의 다른 관점 참조).

링크 된 FAQ 항목은 Werner Vogel의 Amazon DynamoDB – 인터넷 규모 애플리케이션위해 설계된 빠르고 확장 가능한 NoSQL 데이터베이스 서비스 를 참조합니다. 이는 실제로 Amazon의 NoSQL 과 특히 Dynamo 의 역사에 관한 정교하고 강력하게 권장되는 내용입니다 . 여기에는 질문에 대한 더 많은 통찰력이 포함되어 있습니다.

개발자 (아마존 엔지니어도 포함) 는 “자신의 발을 따서”투표하고 Dynamo보다 Amazon S3 및 Amazon SimpleDB와 같은 클라우드 기반 AWS 솔루션을 채택함에 따라 세밀한 제어보다 단순성을 강력하게 선호한다는 것이 분명해 졌습니다. [추가 광산]

분명히이 문제를 해결하기 위해 DynamoDB가 도입되었으므로 기존 NoSQL 제품을 ‘단순히’수정하는 것이 아니라 SimpleDB의 후속 제품으로 자격을 얻을 수 있습니다.

우리는 이상적인 솔루션이 오리지널 Dynamo 디자인의 최고 부분 (증가 확장 성, 예측 가능한 고성능)을 SimpleDB의 최고 부분 (클라우드 서비스 관리 용이성, 일관성 및 테이블 기반 데이터 모델)과 결합한다고 결론지었습니다. 순수한 키-값 저장소보다 풍부합니다).

Werner ‘s Summary 는 DynamoDB가 현재 모든 규모의 애플리케이션에 적합하다고 제안합니다.

Amazon DynamoDB는 예측 가능한 고성능을 유지하고 가장 작은 규모에서 가장 큰 규모의 인터넷 규모 애플리케이션에 이르기까지 모든 규모의 워크로드에 대해 높은 비용 효율성을 갖도록 설계되었습니다.


답변

SimpleDB 또는 DynamoDB를 사용하면 사용 사례에 따라 DynamoDB 대신 SimpleDB를 사용한 경험을 공유했습니다 . 다른 제품에서는 다른 데이터를 저장하기 위해 SimpleDB와 DynamoDB를 모두 사용했습니다.


답변

SimpleDB는 요즘 아마존에서 사랑을받지 않는 것 같습니다. AWS 콘솔에서 프로비저닝 할 위치를 찾기조차 어렵습니다. SimpleDB가 더 이상 반복되지 않는 것 같습니다 . AWS의 Document Database에 대한 첫 번째 선택으로 DynamoDB를 사용하십시오.

SimpleDb는 더 이상 실제로 언급되지 않습니다. 앞으로 simpledb에 대한 새로운 개발이 없다는 것을 의미합니다. “유지 및 지원”이지만 더 나아지지는 않을 것입니다.


답변

3 가지 주요 차이점 :

  1. 인덱싱

    • SimpleDB는 테이블에서 “모든”필드에 대한 색인을 작성합니다.
    • DynamoDB는 데이터베이스를 생성하기 전에 인덱싱 필드를 설정해야하며 수정할 수 없습니다.
  2. 가격:

    • SimpleDB 가격은 기계 시간 및 스토리지 용량을 기준으로합니다.
    • DynamoDB는 초당 읽기 / 쓰기 레코드 용량에 따라 요금을 청구합니다.
  3. 확장 성 :

    • 데이터 스토리지가 10GB를 초과하면 SimpleDB에 수동 파티셔닝이 필요합니다.
    • DynamoDB는 자동으로 데이터를 자동으로 배포하므로 매우 높은 확장 성을 제공합니다.

답변

이전의 기사에서 @Mason Zhang이 언급 한 것과 같은 차이점 중 하나는 인덱싱입니다. DynamoDB는 테이블 생성시 인덱스 생성으로 제한했습니다. 그러나 현재 (2014 년 초부터) GSI (Global Secondary Index)라는 개념이 있습니다. GSI는 언제든지 테이블에서 생성 할 수 있습니다. 최대 5 개가 지원됩니다. 따라서 인덱싱은 더 이상 많은 사용 사례에서 차단 문제가되지 않습니다.

또한 SimpleDB에는 크기 및 성능 제한이 있습니다. (10GB 및 초당 25 회 요청)

아마도 DynamoDB는 가장 간단한 사용 사례를 제외하고 SimpleDB를 대체 할 것입니다.


답변

간단히 말해서 두 데이터 저장소는 모두 NoSql입니다.

차이점은 확장 성 (그리고 몇 가지 다른 측면이지만 스케일링은 내 의견으로는 가장 큰 가치를 지닙니다)에 있습니다. SimpleDB는 MongoDB와 매우 유사하지만 확장 과 관련하여 많은 제한 이 있습니다.

그러나 DynamoDB를 사용하면 소규모 프로비저닝을 수행하고 필요한 프로비저닝 처리량을 확장 할 수 있습니다. 필요하지 않을 때는 축소하십시오. (예 : 프로모션 중에 이와 같은 유명인 추천 가입 등의 시나리오는 시간에 따라 하드웨어 요구 사항이 급증합니다)


답변

Simple DB와 Dynamo DB의 주요 차이점은

  1. 대기 시간 측면에서 예측 가능한 성능을 제공하며 대기 시간 및 처리량을 저하시키지 않으면 서 높은 볼륨을 처리 할 수 ​​있습니다. DynamoDB는 파티션 키를 사용하여이를 달성합니다.
  2. 사용자 정의 할 수있는 읽기, 쓰기 최적화
  3. 일관된 해싱 알고리즘을 사용하므로 최종 일관성 모델 개선