我是mongoDB的新手。有人告诉我使用mongoDB到我的照片管理网络应用程序。我无法理解mongoDB的基本概念。文件。
What is documents in mongoDB?
j = { name : "mongo" };
t = { x : 3 };
在mongoDB网站上,他们说上面两行是2个文件。
但直到这个时候我才认为.txt, .doc .excel... etc.
是文件。(这可能很有趣,但我真的需要理解它的概念!)
如何在mongoDB中表示txt文件,例如example.txt
?
What is collection?
Collection of documents is known as "Collections in mongoDB"
我可以创建多少个集合?
All documents were shared in all collections
Finnaly我来找我,How shall i represent images in mongoDB?
在教程的帮助下,我学会了使用java !!来存储和检索来自mongoDB的图像。
但是,如果不了解mongoDB的概念,我就无法继续前进!
关于mongoDB的博客和文章非常有趣。但我仍然无法理解它的基本概念!!!
任何人都可以用mongoDB打击我的脑袋!! ??
答案 0 :(得分:2)
也许将MongoDB与SQL进行比较可以帮助你......
在SQL查询中对表,列和&基于集合的操作中的行。有预定义的模式(以及希望索引)来帮助查询处理器(以及查询器!)
SQL表格/行
id | Column1 | Column2
-----------------------
1 | aaaaa | Bill
2 | bbbbb | Sally
3 | ccccc | Kyle
SQL查询
SELECT * FROM Table1 WHERE Column1 = 'aaaaa' ORDER BY Column2 DESC
此查询将返回名为 Table1 的表中的所有列,其中名为 Column1 的列的值为 aaaaa 然后它将订购 Column2 的值的结果,并按降序将结果返回给客户端。
<强> MongoDB的强>
在MongoDB中没有表格,列或行...而是它们的集合(这些就像表格)和集合中的文档(如行)。
MongoDB馆藏/文件
{
"_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"
}
但是,没有像SQL表那样的预定义“表结构”或“模式”。例如,您可以看到此集合中的第二个文档具有一个名为 randomAttribute 的属性,其他文档都没有。
这很好,它不会影响我们的查询,但允许一些非常强大的东西......
数据以BSON格式存储,非常接近Javascript JSON标准。您可以在http://bson.org/
了解更多信息MongoDB查询
SELECT * FROM Table1 WHERE Column1 = 'aaaaa' ORDER BY Column2 DESC
我们如何在MongoDB的Shell中做同样的事情?
> db.collection1.find({attribute1:"aaaaa"}).sort({attribute2:-1});
也许你已经可以看到MongoDB查询与SQL有多么相似(虽然看起来很不一样。)我在http://learnmongo.com上发布了一些帖子,这对你也有帮助。
答案 1 :(得分:0)
MongoDB是一个文档数据库:http://en.wikipedia.org/wiki/Document-oriented_database