2011-11-23 16 views
9

Nếu tôi chọn RavenDB cho một ứng dụng web giống như CMS chuẩn, tôi sẽ mất gì so với SQL Server?Nếu tôi chọn RavenDB, tôi sẽ mất những lợi ích gì của SQL Server?

EDIT: Có một từ "lợi ích" trong tiêu đề là một thuật ngữ ít gây tranh cãi. Có lẽ tôi nên nói điều gì đó như "khả năng" hoặc "tính năng", hy vọng nó rõ ràng những gì tôi sau.

Một vài điều mà tôi suy nghĩ (nhưng tôi mới để RavenDB vì vậy đây chỉ là một vài gợi ý là, một số có thể sai, tôi hy vọng ai đó sẽ cung cấp một danh sách đầy đủ và chính xác hơn):

  • Giao diện quản trị nhanh chóng nhưng tùy biến bằng ASP.NET Dynamic Data (có một số ứng dụng quản trị Silverlight tích hợp nhưng tôi khá chắc chắn rằng nó sẽ không thay thế phần quản trị viên chính thức trong trường hợp của tôi)
  • Có thể một số truy vấn khả năng? Hoặc chỉ số Raven có thể thay thế hầu như mọi truy vấn SQL mà tôi có thể nghĩ đến?
  • Entity Framework tích hợp (Tôi biết một số người ghét EF nhưng tôi nghĩ rằng là một nhà cung cấp EF có nghĩa là bạn có thể dễ dàng xuất bản các dữ liệu như OData, sử dụng EF mã đầu tiên vv, phải không?)
  • Azure triển khai (không đúng theo ý kiến)
  • Myriad của SQL truy vấn/công cụ quản lý

Một hoàn chỉnh hơn/danh sách chính xác sẽ được đánh giá rất nhiều.

(Lưu ý: Tôi không nói rằng tôi sẽ cần tất cả (hoặc bất kỳ) trong số đó, tôi chỉ muốn hiểu những gì sẽ không có sẵn nếu tôi chọn RavenDB. , Tôi biết họ và họ dễ dàng tiêu hóa từ trang web chính thức.)

+0

Tôi sẽ không gọi chính xác điểm thứ ba của bạn một lợi ích, về lâu dài đó là một cơn ác mộng bảo trì. – Phill

+0

Điểm được chụp, tôi đã cập nhật câu hỏi. – Borek

+0

Bạn chắc chắn có thể triển khai RavenDB sang Azure, xem https://github.com/markrendle/AzureRavenDB ví dụ –

Trả lời

3

Bạn có thể muốn xem @ 2 bài đăng trên blog gần đây của Ayende (người tạo RavenDB) khi bạn nên sử dụng RavenDB và khi bạn không nên .

When should you use ravendb

When should you not use ravendb

+2

Tôi đã xem các bài đăng đó. Tuy nhiên, tôi muốn tập hợp một danh sách những thứ sẽ không có sẵn khi tôi chọn RavenDB với hy vọng rằng sau đó tôi sẽ có thể đưa ra quyết định tốt cho bản thân mình. – Borek

1

Ngoài công nghệ, bạn nên xem xét thành viên trong nhóm của bạn như RavenDB là một điều chỉnh trong suy nghĩ cho chúng ta những người có lý lịch trong RDBMS. Loại căng này sẽ là gì đối với những người liên quan? Người dùng của bạn có mong đợi các báo cáo và những gì sẽ nói khi bạn nói với họ rằng bạn không cân nhắc trả lời các câu hỏi mà họ muốn trả lời khi bạn tạo các chỉ mục cho cơ sở dữ liệu tài liệu? Trong khi bạn nhận được một sự gia tăng lớn về năng suất khi thiết kế và triển khai miền của bạn, các cơ sở dữ liệu tài liệu khác với SQL.

+0

Chắc chắn, đó là tất cả những điểm tốt, tuy nhiên, vào thời điểm này, tôi chỉ muốn thu thập một danh sách những thứ sẽ không có sẵn về mặt kỹ thuật với RavenDB. Đó sẽ là một điểm khởi đầu tốt. – Borek

1

nhanh nhưng tùy biến giao diện quản trị sử dụng ASP.NET động dữ liệu (có một số tích hợp sẵn trong ứng dụng quản trị Silverlight nhưng tôi khá chắc chắn rằng nó sẽ không thay thế một phần chính thức trong quản trị của tôi trường hợp)

ASP.NET MVC hỗ trợ giàn giáo dựa trên POCO kể từ phiên bản thứ hai. Nhưng nó không phải là giải pháp nhanh chóng như vậy.

Có thể một số khả năng truy vấn?Hoặc chỉ số Raven có thể thay thế hầu như mọi truy vấn SQL mà tôi có thể nghĩ đến?

Bạn nên suy nghĩ về truy vấn của mình trước tiên. Raven DB không báo cáo cơ sở dữ liệu.

Entity Framework tích hợp (Tôi biết một số người ghét EF nhưng tôi nghĩ rằng trở thành một nhà cung cấp EF có nghĩa là bạn có thể dễ dàng xuất bản các dữ liệu như OData, sử dụng EF mã đầu tiên vv, phải không?)

Bạn rất tập trung vào các công cụ. Code Đầu tiên là cách bạn làm việc với các cơ sở dữ liệu tài liệu. Tại sao bạn cần OData? RavenDB có REST API ra khỏi hộp.

0

WCF RIA Services (Silverlight). Bạn sẽ cần phải làm tất cả các công việc hệ thống ống nước WCF.

+0

Không nhất thiết phải đúng. Bạn có thể viết một nhà cung cấp tùy chỉnh để ràng buộc RIA với RavenDB. Khó khăn, nhưng có thể được thực hiện. –