2010-11-23 5 views
0

Je suis nouveau à mongoDB. On m'a dit d'utiliser mongoDB pour mon application web de gestion de photos. Je ne suis pas capable de comprendre le concept de base de mongoDB. Les documents.Besoin de suggestions pour clarifier le concept de mongoDB pour stocker et récupérer des images

What is documents in mongoDB?

j = { name : "mongo" }; 
t = { x : 3 }; 

Dans le site MongoDB ils ont dit que les 2 lignes ci-dessus étaient 2 documents.

Mais jusqu'à ce moment je pensais .txt, .doc .excel... etc. étaient des documents. (Cela peut être drôle, mais je suis vraiment besoin de comprendre ses concepts!)

Comment représenter un fichier txt par exemple example.txt dans MongoDB?

What is collection?

Collection of documents is known as "Collections in mongoDB"

Combien je peux créer des collections?

All documents were shared in all collections

finnaly je viens à ma part, How shall i represent images in mongoDB?

Avec l'aide de tutoriels que j'ai appris à stocker et récupérer des images de MongoDB en utilisant java !! Mais sans la compréhension des concepts de mongoDB, je ne peux pas aller plus loin!

Le blog et les articles sur mongoDB sont assez intéressants. Mais je ne suis toujours pas capable de comprendre ses concepts de base !!!

Quelqu'un peut-il me frapper la tête avec mongoDB !! ??

Répondre

2

Peut-être comparer MongoDB à SQL pourrait vous aider ...

Dans les requêtes SQL sur des tables, travaillent colonnes & lignes dans les opérations basées sur des ensembles. Il y a schéma prédéfini de (et, espérons index) pour aider le processeur de requêtes (ainsi que le requêteur!)

table SQL/lignes

id | Column1 | Column2 
----------------------- 
1 | aaaaa | Bill 
2 | bbbbb | Sally 
3 | ccccc | Kyle 

SQL Query

SELECT * FROM Table1 WHERE Column1 = 'aaaaa' ORDER BY Column2 DESC 

Cette requête renverrait toutes les colonnes de la table nommée Table1 où la colonne nommée Colonne1 a une valeur de aaaaa puis il va ordonner les résultats par la valeur de Column2 et renvoyer les résultats dans l'ordre décroissant au client.

MongoDB

En MongoDB il n'y a pas de tables, colonnes ou lignes ... au lieu de leur sont Collections (ceux-ci sont comme les tables) et Documents dans les collections (comme les lignes.)

MongoDB Collection Documents/

{ 
"_id" : ObjectId("497ce96f395f2f052a494fd4"), 
"attribute1" : "aaaaa", 
"attribute2" : "Bill", 
"randomAttribute" : "I am different" 
} 
{ 
"_id" : ObjectId("497ce96f395f2f052a494fd5"), 
"attribute1" : "bbbbb", 
"attribute2" : "Sally" 
} 
{ 
"_id" : ObjectId("497ce96f395f2f052a494fd6"), 
"attribute1" : "ccccc", 
"attribute2" : "Kyle" 
} 

Cependant, il n'y a pas de "structure de table" ou de "schéma" prédéfinie comme une table SQL. Par exemple vous pouvez voir le deuxième document dans cette collection a un attribut appelé randomAttribute qu'aucun autre document n'a.

Ceci est très bien, cela n'affectera pas nos requêtes mais ne permet pour certaines choses très puissantes ...

Les données sont stockées dans un format appelé BSON qui est très proche de la norme Javascript JSON . Vous pouvez en savoir plus à http://bson.org/

MongoDB Recherche

SELECT * FROM Table1 WHERE Column1 = 'aaaaa' ORDER BY Column2 DESC 

Comment ferions-nous la même chose dans Shell MongoDB?

> db.collection1.find({attribute1:"aaaaa"}).sort({attribute2:-1}); 

Peut-être que vous pouvez déjà voir comment une requête similaire MongoDB est vraiment SQL (tout en paraissant tout à fait différent.) J'ai quelques messages sur http://learnmongo.com qui pourraient vous aider.

+0

Merci beaucoup !! Maintenant, en passant par http://learnmongo.com. Merci encore!!! –

+0

Merci, ai-je répondu à votre question? –

Questions connexes