문제

CouchDB와 같은 문서 지향 데이터베이스에 대한 아이디어가 마음에 듭니다. 간단한 아날로그를 찾고 있습니다.

내 요구 사항은 단지 다음과 같습니다.

  1. 스키마를위한 영구 저장 데이터가 적습니다.
  2. 간단한 내용의 쿼리;
  3. 거래와 버전을 갖는 것이 좋습니다.
  4. 루비 API;
  5. Map/Reduce는 Aslo가 좋습니다.
  6. 공유 호스팅에서 작업해야합니다

내가 필요로하지 않는 것은 REST/http 인터페이스입니다 (나는 그것을 내용으로 사용합니다). 또한 모든 확장 성이 필요하지 않습니다.

도움이 되었습니까?

해결책

매우 간단한 해결책이 될 것입니다 PSTORE 루비의 표준 라이브러리에서. 거의 모든 요구 사항을 충족해야합니다.

  1. PSTORE는 루비 객체 계층을 파일에 저장하므로 해시와 같은 구조를 쉽게 사용할 수 있습니다.
  2. 간단한 API로 PSTORE의 내용에 액세스 할 수 있습니다.
  3. 트랜잭션이 있지만 내가 아는 한 버전은 없습니다.
  4. Ruby의지도와 주입 기능을 사용할 수 있습니다
  5. 파일 시스템에 액세스하기 만하면됩니다

예시:

매장에 데이터를 삽입하십시오.

require 'pstore'
store = PStore.new("/tmp/store")
store.transaction do
  store["products"] = [{:name => "Test", :price => 100}
                       {:name => "Bla", :price => 120}
                       {:name => "Oink", :price => 300}]
end

모든 제품의 가격의 합계 :

store.transaction do
  store['products'].map {|p| p[:price]}.inject {|sum, p| sum + p}
end

이것에 대한 자세한 정보 블로그 게시물

다른 팁

필요한 것 같습니다 버클리 DB. 지도/감소를 제외한 모든 것을 수행합니다.

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