2010-08-23 8 views
16

나는이 세 가지가 가장 인기있는 비 관계형 데이터베이스라고 생각한다.Ruby on Rails의 Cassandra, mongodb 또는 couchdb

나는 그 (것)들을 시도하고 싶다, 그러나 나는 보석, 문서 및 자습서 지원에 관해서 이것들 중 어느 것이 Rails에 가장 적합한 지 궁금하다.

예 : 레일즈 용으로 아주 좋은 보석을 설치했는데 AR과 mongodb를 사용한다면 정말 mongodb를 사용하지 않았을 것입니다.

  • 얼마나 많은 보석이이 데이터베이스를 하나씩 지원합니까?

  • 루비/레일 커뮤니티에서 가장 많이 사용되는 메인 스트림은 어느 것이므로 온라인 문서/튜토리얼이 더 많습니까?

  • 레일즈의 긴밀한 통합을 제공하는 것은 어느 것입니까?

+12

필자는 이것이 이러한 응용 프로그램 중 하나를 사용하기로 결정한 잘못된 출발점이라고 생각합니다. 그것들은 매우 다른 강점과 약점을 가지고 있으며, 응용 프로그램이 성취해야 할 필요가 전혀 없다면 루비/레일 지원이 가장 좋은 것은 중요하지 않습니다. –

+3

인기 있고 밀접한 통합을 원한다면 MySQL은 Rails 배포에서 100 배 더 많이 사용되고 가장 쉽게 통합됩니다. 이슬비가 경쟁자가 될 가능성이 큽니다. 배우고 싶다면 몇 가지 DB를 시도해 볼 것을 권장합니다. – JasonSmith

답변

17

이 정보를 선택하려면, 당신은 거를 지원하지 않았다 실제로 데이터 모델을 알아야합니다. MongoDB 및 CouchDB는 문서 지향 데이터 저장소입니다. 카산드라는 아주 다르다. 조금 더 특수한 목적이며 분산 된 디자인이 그 힘이다. 분산 키/값 저장소이지만 슬라이싱, 타임 스탬프 정렬, 범위 쿼리 및 제한된 데이터 형식이 있습니다. 엄청난 양의 데이터가 있었고 검색을 위해 인덱싱해야하는 방법을 정확히 알고 있다면 Cassandra가 작동 할 수도 있습니다. Mongo와 Couch는 임시 쿼리에 더 좋으며 예를 들어 Rails 응용 프로그램에 대한 AR 대체가 좋습니다.

MongoDB가 현재 루비스트에게 인기가 있다고하지만, 일반적으로 CouchDB는 더 많은 관심과 많은 기세를 가지고있는 것으로 보입니다.

차이점에 대한 자세한 내용은 http://nosql-database.org/도 참조하십시오.

5

저는 최근에 "몽고이드"를 개인적으로 사용했는데 정말 좋았습니다. 한 가지 기억해야 할 점은 Rails 3.0 브랜치에서 더 활발해 졌기 때문에 웹 사이트에 나열된 모든 기능이 레일스 2.x에서 작동하지는 않는다는 것입니다 (예를 들어 참조). 또한 인증」을 책정/소장 "를 사용하는 시도하고 레일 3.0에서 완벽하게 작동하지만, 레일 2.X는 + mongoid이 (mongomapper이 지원되었지만)

+0

몽고 뎁과 일하는 것은 위대함! 그것이 다른 2를 지원하는지 아십니까? –

+1

다음은 master (Rails 3.x)에서 지원되는 내용입니다. http://github.com/plataformatec/devise/tree/master/lib/devise/orm/ 여기 1.0.x (Rails 2.x)의 내용은 다음과 같습니다. http : //github.com/plataformatec/devise/tree/v1.0/lib/devise/orm – Zepplock

+1

mongodb이 루비와 레일에서 가장 인기있는 것 같습니다. 네가 생각하는 다른 보석들에도 맞지? –