中和软件技术培训

上海中和软件公司培训专用博客

MongoDB内部说明会使用资料

MongoDB说明会


MongoDB 是一个基于分布式文件存储的数据库。由 C++ 语言编写。旨在为 WEB 应用提供可扩展的高性能数据存储解决方案。

MongoDB 是一个介于关系数据库和非关系数据库之间的产品,是非关系数据库当中功能最丰富,最像关系数据库的。

特点:阶层型数据库,适合存储大数据,分布式存储,MongoDB可以作为GFS(Grid File System)来使用的,管理文件。

 

MongoDB的官方网站: https://www.mongodb.com/

官方教程:https://docs.mongodb.com/manual/tutorial/getting-started/

中文教程: http://www.runoob.com/mongodb/nosql.html

 

基础知识:

NoSQL(NoSQL = Not Only SQL ),意即"不仅仅是SQL"。

NoSQL数据库入门概述

 

数据库安装:

方式1:直接下载后,在命令行运行带参数的mongod.exe即可

方式2:作为Windows服务在后台运行

方式3:在不同服务器运行多个实例,作为集群提供数据库服务

 

数据库管理方式

方式1:通过自带的命令行工具管理数据库

方式2:通过GUI工具操作数据库 

(胡老师开发了一个C#的Windows上运行的管理工具,可以为项目开发一些特定功能的插件)

 

数据库操作:

方式1:通过自带的命令行工具操作数据库

方式2:使用程序编写代码操作数据库:已经拥有的驱动程序列表:

https://docs.mongodb.com/ecosystem/drivers/

注意:该数据库不能使用传统的SQL语言进行操作!

这里提供了SQL类似功能的解决方案对照表:

https://docs.mongodb.com/manual/reference/sql-comparison/

 

C#操作MongoDB的例子:

//Untyped Documents
using MongoDB.Bson;
using MongoDB.Driver;
var client = new MongoClient("mongodb://localhost:27017");
var database = client.GetDatabase("foo");
var collection = database.GetCollection<BsonDocument>("bar");

await collection.InsertOneAsync(new BsonDocument("Name", "Jack"));

var list = await collection.Find(new BsonDocument("Name", "Jack"))
    .ToListAsync();

foreach(var document in list)
{
    Console.WriteLine(document["Name"]);
}


//Typed Documents
using MongoDB.Bson;
using MongoDB.Driver;
public class Person
{
    public ObjectId Id { get; set; }
    public string Name { get; set; }
}
var client = new MongoClient("mongodb://localhost:27017");
var database = client.GetDatabase("foo");
var collection = database.GetCollection<Person>("bar");

await collection.InsertOneAsync(new Person { Name = "Jack" });

var list = await collection.Find(x => x.Name == "Jack")
    .ToListAsync();

foreach(var person in list)
{
    Console.WriteLine(person.Name);
}

 

参考资料:

MongoDB数据库 (Linux):http://www.cnblogs.com/suoning/p/6759367.html  

胡老师开发的MongoDB管理工具(Windows):https://github.com/magicdict/MongoCola 

 

假设你的Mongod.exe 在 E:\runmongo\bin

假设你的数据库文件放在 E:\mongodb\CodeSnippet\DataBase

使用以下Bat可以启动数据库。并且将日志放在E:\mongodb\CodeSnippet\DataBase\Logger.log

 

E:
cd E:\runmongo\bin
mkdir E:\mongodb\CodeSnippet\DataBase
mongod --port 27017 --storageEngine wiredTiger --dbpath E:\mongodb\CodeSnippet\DataBase --rest --nojournal >> E:\mongodb\CodeSnippet\DataBase\Logger.log

 

备注:2017年9月8日   下午2:30分  优族173-609室 

 

 

博文最后更新时间:


评论

  • 胡老师 管理员

    该评论已经被管理员屏蔽!

  • 胡老师 管理员

    该评论已经被管理员屏蔽!

  • Roby

    学习了!

  • 回复给 Roby :

    Roby

    请问,Mongodb上的MR处理程序是否可以用C#实现?

发表评论

博客统计

访问量:20359

博文总数:16 评论总数:9

原创14 翻译0 转载2