3 ms·
Can you share your rationale for choosing MongoDB?
by wmichelin 10y ago
Can you share your rationale for choosing MongoDB?
- throwaway2016a 10y agoBeing a NoSQL database I think it would lend itself well to a CRM if you look at each lead as a document. Performance wise it has always treated me well. It also provides a lot of power over updating partial documents (push this item to a sub array, remove this item from another subarray, at this item but only if it doesn't exist, etc)
- lotyrin 10y agoAgents to Cases to Leads to Contacts to Sales to Organizations seems super relational to me. Maybe you'd want some extra-schematic info in the form of a serialized column on each table, but that's about as far as I think you'd want to go.
- throwaway2016a 10y ago:delayed response: Both of those are usually "belongs to" relationships. That kind of relationship is easy to model in NoSQL. Many to many becomes difficult but in those scenarios I'd recommend either a relational or a graph database (also NoSQL) like Neo4j or Orient.
- tobltobs 10y ago> I think it would lend itself well to a CRM if you look at each lead as a document. If the only thing you have is NoSQL everything looks like a document?
- throwaway2016a 10y agoNot true, in my case at least. I often use relational database. It depends on the use case. Because the document model allows an arbitrary number of columns I think in this case it would make adding custom attributes to leads in an easier to manage way than using the traditional join with attributes table method. I think a relational model may be a bit overkill in this case. But with that said, I'm sure it can easily be done with traditional relational DBs as well. I've also used Elastic for similar projects to because it's ability to do faceted filters on data is unparalleled IMHO.