문제

방금 Amazon의 SimpleDB 서비스를 구축하려는 ROR 응용 프로그램의 데이터 스토어로 사용하는 타당성에 대한 연구를 시작했습니다. 웹 서버에는 EC2를 사용할 것이며 MySQL 서버에도 EC2를 사용할 계획이었습니다. 그러나 이제 문제는 왜 SimpledB를 사용하지 않습니까?

응용 프로그램은 지원되는 사용자의 # 측면에서 매우 확장 가능해야하며 간단하고 효율적인 코드 기반을 유지해야하며 신뢰할 수 있어야합니다.

나는 공동체의 생각이 무엇인지 궁금합니다.

도움이 되었습니까?

해결책

Ruby Simpledb 라이브러리는 ActiveRecord (기본 레일 DB 어댑터)만큼 완전하지 않으므로 사용 된 많은 기능이 없습니다.

플러스 측면에서는 확장 가능하며 EC2와 잘 어울립니다.

앱에서 전체 텍스트 검색과 같은 작업을 수행하려면 SimpledB가 최선의 선택이 아닐 수도 있습니다. AR + Sphinx를 사용하십시오.

다른 팁

글쎄, 단순한 DB를 고려하면 SQL을 사용하지 않거나 테이블이 있다는 것을 고려하면 MySQL 및 기타 SQL 기반 제품과는 완전히 다른 짐승이라는 것을 의미합니다.http://aws.amazon.com/simpledb/). 제약, 트리거 또는 조인이 없습니다. 행운을 빕니다.

다음은 그것을 시작하고 실행하는 한 가지 방법입니다.http://developer.amazonwebservices.com/connect/entry.jspa?externalid=1242(을 통해 http://rubyforge.org/projects/aws-sdb/ )

레일 외부의 데이터를 쿼리 할 필요가 없다면 SimpledB는 괜찮을 수 있다고 생각합니다. 그러나 일류 지원 DB가 아니기 때문에 수정하기 어려운 버그가 발생할 수 있습니다. 반 베타 백엔드에서 프로덕션 레일 앱을 실행하고 싶지 않습니다.

나에게 이것은 실제로 이러한 특정 도구를 사용해야하는 대신 "이 깔끔한 도구가 있습니다.이 도구를 사용하여 프로젝트를 구축해야합니다"라고 느낍니다. 어쩌면 나는 단지 게비하지만, 그것은 조기 최적화의 고전적인 사례처럼 느껴집니다. 당신은 아직 작성되지 않은 앱에 대한 비용이 드는 외부 서비스를 사용하려고 노력하고 있으며, 당신은 당신이 보장 된 청중이나 반드시 그것을 보증하는 수준으로 확장 할 수있는 청중을 가지고 있다고 말하지는 않습니다.

인터넷의 절반을 설명하면서 "응용 프로그램은 지원되는 사용자의 측면에서 매우 확장 가능해야한다". 그것은 "성공했다면"부분이 실제로 질문입니다. 응용 프로그램 구축에 빠르고 쉽게 구축하는 데 집중하십시오. 가장 쉬운 방법은 ROR을 사용하여 상자 외에 사용하는 것입니다. 데이터베이스와 페어링하고 ActiveRecord를 사용하고 구축하고 사용자를 유치하십시오.

사실, 나는 더 나아가서 EC2가 항상 서버에서는 다소 비싸다고 말할 것입니다. SliceHost 또는 다른 호스팅 된 솔루션에 배치 한 다음 수요를 지원하기 위해 필요한 경우 EC2로 이동하십시오.

나는이 주제에 매우 관심이 있습니다. 지금은 클라우드 컴퓨팅이 높이고 있으므로 Simpledb와 함께 갈 것입니다. 아직 경험이 아닙니다.

편집 : SimpleDB에 "일반적인"데이터베이스가 정상적인 기능이 없다는 것은 사실이지만, 간단한 CRUD 레이어 만 필요하면 트릭을 수행해야합니다.

라이브러리가 있습니다 단순한 이는 ActiveRecord의 교체가 줄어드는 것이지만 SimpleDB를 백엔드 데이터 저장소로 사용합니다.

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