2009-03-01 36 views
6

Tôi đang cố gắng quyết định có sử dụng voldemort hoặc couchdb cho dự án chăm sóc sức khỏe sắp tới hay không. Tôi muốn một hệ thống lưu trữ có tính sẵn sàng cao, khả năng chịu lỗi và có thể mở rộng quy mô cho số lượng lớn dữ liệu được ném vào đó.voldemort vs. couchdb

Ưu điểm/nhược điểm của mỗi loại là gì?

Cảm ơn

+0

Tôi thường đọc rằng bộ nhớ cache do Intersystems được sử dụng nhiều trong chăm sóc sức khỏe 'thế giới'. Họ không thể cung cấp giải pháp sao? – tuinstoel

Trả lời

1

memcacheDB một lựa chọn? Tôi đã nghe đó là cách Digg xử lý các vấn đề HA.

+0

chắc chắn, lợi ích của memcacheDB so với các vấn đề khác 2 – py213py

+0

Whats HA là gì? – Sam152

+0

lol. làm thế nào là memcached lỗi khoan dung? –

5

Project Voldemort có vẻ đẹp, nhưng tôi chưa xem xét kỹ nó cho đến nay.

Trong trạng thái hiện tại, CouchDB có thể không phải là điều phù hợp cho "lượng lớn dữ liệu". Phân phối dữ liệu giữa các nút và truy vấn định tuyến cho phù hợp là trên lộ trình nhưng chưa được triển khai. Các thiết lập sản xuất lớn nhất được biết đến của CouchDB sử dụng "bảng" ("cơ sở dữ liệu" trong ghế-nói) của khoảng 200G.

HA không được hỗ trợ bởi CouchDB nhưng có thể xây dựng một cách dễ dàng: Tất cả các nút CouchDB đang nhân rộng các nút cơ sở dữ liệu giữa nhau trong một thiết lập đa chủ. Chúng tôi đặt hai Varnish proxies trước máy CouchDB và hộp Varnish được làm dự phòng với CARP. CouchDBs "xây dựng từ Web" thiết kế làm cho những thứ như vậy rất dễ dàng.

Vấn đề cấp bách nhất trong our setup là thực tế là vẫn còn vấn đề với việc sao chép tệp đính kèm lớn (nhiều MB) vào tài liệu CouchDB.

Tôi khuyên bạn cũng nên kiểm tra tuyến đường RDBMS truyền thống. There are huge issues với tài năng có sẵn bên ngoài tiếp cận RDBMS và có những dịch vụ rất có khả năng có sẵn từ Oracle & Công ty

4

Không biết đủ từ câu hỏi của bạn, tôi vẫn sẽ nói Project Voldemort hoặc bảng băm phân tán (DHTs) như CouchDB nói chung là một giải pháp cho vấn đề HA của bạn.

Các DHT này rất tốt cho tính khả dụng cao nhưng khó viết mã hơn các cơ sở dữ liệu quan hệ truyền thống (RDBMS) liên quan đến tính nhất quán.

Chúng khá tốt để lưu trữ thông tin loại tài liệu, có thể phù hợp với dự án chăm sóc sức khỏe của bạn nhưng làm cho dữ liệu phát triển khó hơn.

  • Hạn chế lớn nhất của hầu hết các cửa hàng là chúng không transactionally an toàn (Xem Scalaris cho một cửa hàng transactionally an toàn) và bạn cần phải đảm bảo tính nhất quán dữ liệu một mình - hầu hết sử dụng đọc thời gian nhất quán bằng cách sáp nhập mâu thuẫn dữ liệu). RDBMS dễ sử dụng hơn cho tính nhất quán của dữ liệu (ACID)
  • Việc kết hợp dữ liệu cũng khó hơn nhiều. Trong RDBM bạn có thể dễ dàng truy vấn dữ liệu qua nhiều bảng, bạn cần viết mã trong CouchDB để tổng hợp dữ liệu. Đối với các cửa hàng khác Hadoop có thể là lựa chọn tốt cho việc tổng hợp thông tin.

Đọc về CƠ SỞCAP định lý về tính nhất quán so với tính sẵn sàng.

Xem