Click here to Skip to main content
14,305,109 members
   

Database

 
GeneralRe: What do you think of MongoDB? Pin
jkirkerx15-Aug-18 7:30
professionaljkirkerx15-Aug-18 7:30 
GeneralRe: What do you think of MongoDB? Pin
Eddy Vluggen15-Aug-18 9:38
mveEddy Vluggen15-Aug-18 9:38 
GeneralRe: What do you think of MongoDB? Pin
jschell19-Aug-18 8:02
memberjschell19-Aug-18 8:02 
GeneralRe: What do you think of MongoDB? Pin
jschell19-Aug-18 8:00
memberjschell19-Aug-18 8:00 
GeneralRe: What do you think of MongoDB? Pin
Eddy Vluggen19-Aug-18 13:04
mveEddy Vluggen19-Aug-18 13:04 
AnswerRe: What do you think of MongoDB? Pin
jschell19-Aug-18 7:56
memberjschell19-Aug-18 7:56 
GeneralRe: What do you think of MongoDB? Pin
jkirkerx19-Aug-18 9:40
professionaljkirkerx19-Aug-18 9:40 
AnswerRe: What do you think of MongoDB? Pin
Nathan Minier20-Aug-18 2:09
professionalNathan Minier20-Aug-18 2:09 
I love NoSQL approaches, but you need to understand the nature and character of the data store that you're using.

I don't know about you, but when I plan the persistence models for domain objects that will be stored in a SQL store, I make a point of trying to generate relationships wherever practical. I know that component parts of a data structure may or may not be independently modified and I just generally strive for de-duplication. The end result, though, is a persisted model that does not remotely resemble my in-memory data structure.

What Mongo does, specifically, is to store a BSON (or Binary JavaScript Object Notation) representation of your data structure in a format called a document. It comes much closer to representing the domain model in the database as your application does in memory, albeit as dynamic types until de-serialized. By and large, if you're familiar with JSON and how your language of choice formats to it, you'll understand instantly how to work with data in a Mongo database.

Moreover the stored data works pretty much just like standard OOP objects: they can contain value types or reverence types. In this case, though, the reference types point to a Mongo store for a different data type with a UUID rather than a memory location. This means that you need to have a solid plan about which objects need to be persisted to maintain a cohesive database.

Now I'm not going to really disagree with Eddy, Mongo IS intended to store BLOBs, but the BLOBs in question are these BSON objects, generated from your classes/structures and squirreled away; not necessarily just images or videos.

As a programmer (and not a DBA), this approach makes more sense to me and is infinitely easier to work with, but is absolutely not appropriate for all applications. For instance, this approach makes sharing data between applications considerably more difficult, and sharing data between languages next to impossible if the serialization strategies are at all different. If you need granular control over edits to specific fields or sets of fields, that must be strictly relegated to code, rather than being able to assign permissions at the database level. While data can be related, but is not relational in nature, it's not fantastic for fine control over update cascades; it's not what I would pick for a strictly CRUD app.

Anyway, have fun with it and see how it fits you. IMO it's a great tool for the box.
"Never attribute to malice that which can be explained by stupidity."
- Hanlon's Razor

GeneralRe: What do you think of MongoDB? Pin
Eddy Vluggen20-Aug-18 3:07
mveEddy Vluggen20-Aug-18 3:07 
GeneralRe: What do you think of MongoDB? Pin
Nathan Minier20-Aug-18 3:37
professionalNathan Minier20-Aug-18 3:37 
GeneralRe: What do you think of MongoDB? Pin
Eddy Vluggen20-Aug-18 3:46
mveEddy Vluggen20-Aug-18 3:46 
GeneralRe: What do you think of MongoDB? Pin
Nathan Minier20-Aug-18 3:52
professionalNathan Minier20-Aug-18 3:52 
GeneralRe: What do you think of MongoDB? Pin
Eddy Vluggen20-Aug-18 3:56
mveEddy Vluggen20-Aug-18 3:56 
Questionhow to create a sum query between multiple tables in Microsoft access Pin
Member 1028319111-Aug-18 8:50
memberMember 1028319111-Aug-18 8:50 
AnswerRe: how to create a sum query between multiple tables in Microsoft access Pin
Eddy Vluggen11-Aug-18 9:08
mveEddy Vluggen11-Aug-18 9:08 
GeneralRe: how to create a sum query between multiple tables in Microsoft access Pin
Member 1028319111-Aug-18 9:14
memberMember 1028319111-Aug-18 9:14 
GeneralRe: how to create a sum query between multiple tables in Microsoft access Pin
Eddy Vluggen11-Aug-18 9:20
mveEddy Vluggen11-Aug-18 9:20 
AnswerRe: how to create a sum query between multiple tables in Microsoft access Pin
Mycroft Holmes11-Aug-18 13:15
memberMycroft Holmes11-Aug-18 13:15 
AnswerRe: how to create a sum query between multiple tables in Microsoft access Pin
CHill6015-Aug-18 2:15
protectorCHill6015-Aug-18 2:15 
GeneralRe: how to create a sum query between multiple tables in Microsoft access Pin
Mycroft Holmes15-Aug-18 13:09
memberMycroft Holmes15-Aug-18 13:09 
GeneralRe: how to create a sum query between multiple tables in Microsoft access Pin
CHill6020-Aug-18 4:15
protectorCHill6020-Aug-18 4:15 
GeneralRe: how to create a sum query between multiple tables in Microsoft access Pin
Mycroft Holmes20-Aug-18 12:57
memberMycroft Holmes20-Aug-18 12:57 
QuestionStored Procedure execution from Entity Framework should return 0 or -1 if insert or update fails Pin
indian1437-Aug-18 14:27
memberindian1437-Aug-18 14:27 
AnswerRe: Stored Procedure execution from Entity Framework should return 0 or -1 if insert or update fails Pin
Mycroft Holmes7-Aug-18 14:37
memberMycroft Holmes7-Aug-18 14:37 
GeneralRe: Stored Procedure execution from Entity Framework should return 0 or -1 if insert or update fails Pin
indian1437-Aug-18 14:39
memberindian1437-Aug-18 14:39 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.