1.数据库概述
A.数据库(database,db):指的是长期存在计算机内、有组织、可共享的、大量数据的集合。 数据是按照特定的数据模型来组织、储存在数据库中的。
B.关系型数据库:它是将数据以关联关系或者二维表的形式存储的数据库。如:oracle、mysql、 db2、sql server等。
优点:a.容易理解
b.使用方便:sql语言
c.易于维护
缺点:a.遇到高并发情况,硬盘I/O成为最大瓶颈
b.进行横向扩展的时候,遇到大数据时,需要进行迁移或者停机维护等
c.ACID
C.非关系型数据库:一般是以键值对(Key-Value)方式存储数据的数据库。如 redis、 hadoop(hbase)、MongoDB 等。 例:{key1:value1,key2:value2....},{id:1,username:”张三”}。
优点:a.空间利用率较好,用户可以根据需求任意添加字段
b.适用于SNS(social networking service)比如,fb,微博
缺点:a.非关系型,分布式的,并且不保证遵循ACID原则,且结构不固定。
b.处理简单数据结构,文字,图片,视频。
非关系数据库的分类:
a.面向高性能并发的key-value数据库
b.面向海量数据访问文档的数据库
c.面向搜索内容的搜索引擎
关系型与非关系型数据库的比较
1.成本:Nosql数据库简单易部署,基本都是开源软件,不需要像使用Oracle那样花费大量成本 购买使用,相比关系型数据库价格便宜。
2.查询速度:Nosql数据库将数据存储于缓存之中,而且不需要经过SQL层的解析,关系型数据 库将数据存储在硬盘中,自然查询速度远不及Nosql数据库。
3.存储数据的格式:Nosql的存储格式是key,value形式、文档形式、图片形式等等,所以可以存 储基础类型以及对象或者是集合等各种格式,而数据库则只支持基础类型。
4.扩展性:关系型数据库有类似join这样的多表查询机制的限制导致扩展很艰难。Nosql基于键值 对,数据之间没有耦合性,所以非常容易水平扩展。
5.持久存储:Nosql不使用于持久存储,海量数据的持久存储,还是需要关系型数据库
6.数据一致性:非关系型数据库一般强调的是数据最终一致性,不像关系型数据库一样强调数据 的强一致性,从非关系型数据库中读到的有可能还是处于一个中间态的数据,
7.Nosql不提供对事务的处理。
2.Oracle数据库概述
Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小微机环境。它是一种高效率的、可靠性好的、适应高吞吐量的数据库方案。
注:
数据库管理系统(Database Management System)是一种操纵和管理数据库的大型软件,用于建立、使用和维护数据库,简称DBMS
关系数据库管理系统(Relational Database Management System:RDBMS)是指包括相互联系的逻辑组织和存取这些数据的一套程序 (数据库管理系统软件)。关系数据库管理系统就是管理关系数据库,并将数据逻辑组织的系统。