MongDB篇,第一章:数据库知识1

MongDB    数据库知识1

程序 =  数据结构 + 算法

数据存储阶段

1,文件管理阶段 (.txt .doc .xls)

     优点: 数据可以长期保存;可以存储大量的数据;使用简单
     缺点: 数据的一致性差;数据的查找修改不方便;数据的冗余性大

2,数据库存储阶段

     优点 : 数据组织结构化,降低了冗余;方便扩展;方便程序调用,做自动化的处理
     缺点 : 数据库使用往往需要特定的语句或者命令进行操 作,相对比较复杂


几个概念

数据 :能够输入到计算机中并被识别处理的信息的集合;

数据结构:研究一个数据集合中,数据之间关系的学科;

数据库:按照数据结构,存储管理数据的仓库。 数据库是在数据库管理系统管理和控制下在一定介质上的 数据集合。

数据库管理系统:数据库管理软件,用于建立维护数据库;

数据库系统:由数据库和数据库管理系统等开发工具组成 的集合;

关系型数据库

  采用关系模型来组织数据结构的数据库 (二维表)

    Oracle DB2 SQLServer MySQL SqLite

优点:(1)容易理解,逻辑类似常见表格
      (2)使用方便,都使用sql语句,sql语句非常成熟
      (3)数据的一致性高,冗余低,完整性好
      (4)技术成熟,可以使用外部链接等复杂的操作

缺点:(1)每次都需要sql语句的解析,消耗较大
   (2)不能很好满足并发需求,特别是海量数据的爆发 ,关系型数据库普遍读写能力不足
   (3)关系型数据库内部每一步都要加锁的操作,以保 证操作的原子性,增加了数据库负担
   (4)数据的一致性有时会导致大量的空间浪费

数据库范式:

https://baike.baidu.com/item/%E6%95%B0%E6%8D%AE%E5%BA%93%E8%8C%83%E5%BC%8F/7309898?fr=aladdin

非关系型数据库 (NoSql --> not only sql)

优点 : (1)高并发,读写能力强;
     (2)普遍比关系型数据库容易扩展
     (3)弱化了数据结构,降低了数据的一致性

缺点 :(1) 通用性差,没有sql一样的一致化的操作
   (2)操作灵活,容易混乱;
   (3)没有join等操作,有的数据库不支持关系型数据库中类似事务等操作。版本更新快;

Nosql的使用情况:
  1.  数据一致性要求低
  2.  数据库处理海量并发存储
  3.  数据库大小不容易估算,需要分布扩展
  4.  给定的数据比较容易建立Nosql模型

Nosql的分类:

(1)键值型数据库 : Redis   oracle    BDB    tokyo
(2)列存储数据库 :Hbase
(3)文档型数据库 : MongoDB
(4)图形数据库:

MongoDB数据库 (非关系型数据库---> 文档型数据库)

  1.  由c++编写的数据库管理系统;
  2.  支持丰富的增删改查操作;
  3.  支持丰富的数据类型;
  4.  支持众多的编程语言接口(python ruby PHP c++ c#)
  5.  使用方便,便于部署。在非关系数据库中属于比较成熟 的数据库

MongoDB安装

自动安装:
sudo apt-get install mongodb

cookie

whereis 软件名称 : 查看软件位置

默认安装位置: /var/lib/mongodb
配置文件位置: /etc/mongodb.conf
命令集: /usr/bin /usr/local/bin

手动安装:
      1.下载MongoDB (开源)
www.mongodb.com--->get mongodb-->community server
选择想要的版本下载

       2.选择合适的位置解压 (/usr/local /opt)
tar 解压后得到Mongodb文件夹

  3. 将MongoDB文件夹中的bin文件夹变为环境变量
PATH=$PATH:/opt/mongo..../bin
export PATH
将以上两句写入 /etc/rc.local

     4. 重启系统

猜你喜欢

转载自www.cnblogs.com/weizitianming/p/9281214.html