Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CouchDB / NoSQL and Domain Driven Design?

Doing some research in getting ramped up for a CouchApp project.

I understand the concept of a Document Data Store vs a regular RDBMS. And I can totally grasp modeling documents and views instead of using WHERE and JOIN statements. But I haven't been able to find many resources on how to model documents, views, and design docs with Domain Driven Design (DDD) in mind.

Examples:

  • DDD no-no's in the CouchDB world (eg. GetObjectAFor(id, ... some other int, string, ObjectB, foobar) == BOOM )
  • When DDD starts indicating you should be using SQL instead
  • DDD considerations for CouchDB heavy lifting and potential bottle necks (view modeling, compacting, replication, etc.)
like image 841
baseman Avatar asked Feb 04 '11 21:02

baseman


1 Answers

Take a look at CQRS -- it's a great match for the DDD + NoSQL combination.

See the #cqrs tag here and also have a look at:

http://cqrs.files.wordpress.com/2010/11/cqrs_documents.pdf

http://groups.google.com/group/dddcqrs/browse_thread/thread/26d08282c329a598/e7f6986d6445dc73?pli=1

http://blog.jonathanoliver.com/2010/07/cqrs-event-store.html

http://www.youtube.com/results?search_query=cqrs&aq=f

like image 54
Roy Dictus Avatar answered Oct 03 '22 00:10

Roy Dictus