数据库
数据库(Database)
数据库技术是计算机应用领域中非常重要的技术,它产生于20世纪60年代末,是数据管理的最新技术,也是软件技术的一个重要分支。
简单的说,数据库就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同
数据库表(table)
数据表是关系数据库中一个非常重要的对象,是其它对象的基础,也是一系列二维数组的集合,用来存储、操作数据的逻辑结构。根据信息的分类情况。
一个数据库中可能包含若干个数据表,每张表是由行和列组成,记录一条数据,数据表就增加一行,每一列是由字段名和字段数据集合组成,列被称之为字段,
每一列还有自己的多个属性,例如是否允许为空、默认值、长度、类型、存储编码、注释等.
数据(data)
存储在表中的信息就叫做数据
数据库系统有3个主要的组成部分
1.数据库(Database System):用于存储数据的地方。
2.数据库管理系统(Database Management System,DBMS):用户管理数据库的软件。
3.数据库应用程序(Database Application):为了提高数据库系统的处理能力所使用的管理数据库的软件补充。
数据库的发展史
1.文件系统
数据库系统的萌芽阶段,通过文件来存取数据
文件系统是数据库系统的萌芽阶段,出现在上世纪五六十年代,可以提供简答的数据存取功能,但无法提供完整 统一的数据管理功能,例如复杂查询等.所以在管理较少 较简单的数据或者只是用来存取简单数据,没有复杂操作的情况下,会使用文件系统
2.层次型数据库
数据库系统真正开始阶段,数据的存储形式类似树形结构,所以也叫属性数据库.
3.网状数据库
数据的存储形式类似网状结构
从二十世纪六十年代开始,第一代数据系统(层次模型数据库系统 网状模型数据库系统)相继问世,它们为统一管理和共享数据提供了有力的支撑
在这个阶段,网状模型数据库由于它的复杂 专用性,没有被广泛使用.而在层次模型数据库中,IBM公司的IMS(Information Management System,信息管理系统)层次模型数据库系统则得到了极大的发展,一度成为最大的数据库管理系统,拥有巨大的客服群
4.关系型数据库
二十世纪七十年代初,关系型数据库系统开始走上历史舞台,并一直保持着蓬勃的生命力.关系型数据库系统使用结构化查询语言(Structured Query Language,SQL)作为数据库定义语言DDL和数据库操作语言DML
5.面向对象数据库
把面向对象的方法和数据库技术结合起来,可以使数据库系统的分析 设计最大程度地与人们对可观世界的认识相一致,并且能狗有效的为面向对象程序提供更好的数据库支撑
数据库的特点
实现数据共享
数据共享包含所有用户可同时存取数据库中的二数据,也包括用户可以用各种方式通过接口使用数据库,并提供数据共享
减少数据的冗余度
痛文件系统相比,忧郁数据局实现了数据共享,从而避免了用户各自建立应用文件.减少了大量重复数据,减少了数据荣誉,维护了数据的一致性
数据一致性和可维护性,以确保数据的安全性和可靠性
主要包括:1.安全性控制:以防止数据丢失 错误更新和越权使用
2.完整性控制:抱枕数据的正确性 有消息和相容性
3.并发控制:使在同一时间周期内,允许对数据实现多路夺取,又能房子用户之间的不正常交互作用
故障恢复
由数据库管理系统提供一套方法,氪及时发现故障和修复故障,从而防止数据被破坏.数据库系统能尽快恢复数据库系统运行时出现的故障,可能是物理上或逻辑上的错误.比如对系统的误操作造成的数据错误等
数据库分类
在当今的互联网中,最常用的数据库模型主要是两种,即关系型数据库和非关系型数据库。
1 关系型数据库介绍
(1) 关系型数据库 : 是把复杂的数据结构归结为简单的二元关系(即二维表格形式)。
(2) 目前主流的关系型数据库:MySQL、Oracle 、 Sql server、DB2 。。。
2 非关系型数据库介绍
(1)非关系型数据库诞生背景
非关系型数据库也被成为NoSQL数据库,NOSQL的本意是“Not Only SQL”.而不是“No SQL”的意思,因此,NoSQL的产生并不是要彻底地否定非关系型数据库,而是作为传统关系型数据库的一个有效补充。NOSQL数据库在特定的场景下可以发挥出难以想象的高效率和高性能。
随着互联网Web2.0网站的兴起,传统的关系型数据库在应付web2,0网站,特别是对于规模日益扩大的海量数据,超大规模和高并发的微博、微信、SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题。