前两篇转载了NoSql的文章,其中介绍了NoSql的好处以及分析NoSql与关系数据库之间的孰优孰劣的问题。
其实,任何事情,没有绝对的好,绝对的坏;只要合适即好。合适的场合,使用合适的技术,即OK【你若安好便是晴天】
从这篇开始,带大家认识NoSql中很火,很方便简单的一种数据库——MongoDB。从上篇博客中的表格中,可以看出mongodb是属于NoSql中一种,并且还是文档存储形式的数据库。mongdb是关系数据库与非关系数据库之间的产品,是非关系数据库中最像关系数据库。其中使用的类似Json的数据机构-BSON,但是BSON中有json未有的数据类型。mongdb的特点:*面向集合存储,易存储对象类型的数据。*模式自由。*支持动态查询。*支持完全索引,包含内部对象。*支持查询。*支持复制和故障恢复。*使用高效的二进制数据存储,包括大型对象(如视频等)。*自动处理碎片,以支持云计算层次的扩展性。*支持RUBY,PYTHON,JAVA,C++,PHP,C#等多种语言。*文件存储格式为BSON(一种JSON的扩展)。*可通过网络访问。
其中面向集合存储:在mongodb中没有关系数据库中的表、行的概念。在关系数据库中,我们通常,操作的二维表中的数据。比如,取出其中某一行记录,或整个表的数据。mongodb中虽然没有,但是我们前提也曾说到,mongodb很像关系数据库。所以对于关系数据库思维同志来说,很能理解mongodb中的存储结构。在mongodb中集合的collection,可以存放多个文档。其中每一个文档,类似于关系数据库中的某一行。集合collection类似关系数据库中的数据表。mongodb.collection==关系数据库.tablemongodb.collection.document==关系数据库.table.记录
其中模式自由:在mongodb中存储的数据结构是随意的,可以一个文档是整形,也可以一个文档是字符串,当然一个文档也可以是text。但是在关系数据库中,一个表中的字段都是固定的,第一个字段是整形,则必须填写整形,不得是普通字符串【除数字字符串】
其中的存储的格式:我们在操作的过程中,使用BSON格式,类似JSON格式,键值对形式;比如:{"id":2,"name":"小明"}
其中支持多语言驱动mongdb本身是c++,但是可以支持多种语言的驱动,下载相应的驱动即可使用mongdb中的东东。
其中的索引特点:其中,在网上看到一篇文章,其中,若mongdb不用索引,其中操作效率不如关系数据库,但一旦添加索引,要比添加索引的关系数据库效率高很多。他们之间的对比,本人没有亲自实践,从网上看到,只是在此强调他的索引特点;
mongoDB与oracle对比(摘自网络)
mongoDB与mysql对比(摘自网络)测试过程分别插入 100 万条记录,并对其做 100 个用户并发查询操作。MySQL 每一次都 Drop 表, MongoDB 每一次都删除 data 目录。查询的时候,从第二次查询开始,连续记录三次。
mongodb基础系列——mongodb简介
最新推荐文章于 2022-04-14 11:09:40 发布