数据库的认识—基础篇1
在写这边文章的时候,我曾经查找了大量的资料,发现网络上的关于数据库的通俗易懂又有效的文章少之又少,我遇到问题的时候总是花费大量的时间弄明白,这就是写这个文章的初衷,让大多数人都能通俗易懂的了解数据库。
也许有些人会认为数据库这个名词是一个很难得专业术语,其实不然,我们了解数据库就应该想了解一个数学公式那样,数据库内容偏向理论化,数学公式也是理论符号的表现。但是这样理论化的内容时时刻刻伴随着我们的工作学习,为计算机的发展铺平了道路,当然,需要更多的人才发现更好的数据处理方式,这也能为数据爆炸的时代提供更好的服务。现在,我和大家一起,重新认识数据库—这个计算机内部的神秘的“黑盒子”。
我们可以从很多方面了解一个新事物,例如,抛弃前世今生这样荒谬的说法,没有人生来就会骑自行车,我们首先都是看到别人骑自行车,然后就开始思考,那两个轮子的东西是什么?(概念)为什么只有两个轮子很多人都能保持很稳?(操作)它是怎么转起来的?(原理)为什么很多人会选择这样的交通工具?(应用)等等,随着我们不断地关注,我们了解的越来越多,最后自己主动大胆的尝试,竟然也学会了!就是这么假单!数据库也不是只有程序员才需要了解的东西,我们用电脑去解决问题的时候,了解电脑的存储方式等就像您了解你的工作软件甚至操作系统一样,会让你事半功倍。
说到数据库,我就想到我以前就有过一个问题,每次到银行存取钱的时候我都会想,这个银行是怎么这么快通过我的卡号就能找到我的银行卡信息的,是怎么能把我的信息全部都调出来的?之前这些信息都是在那放着的?银行也不只为我一个人服务,上万甚至上亿条个人使用银行卡的信息要怎么处理?更别说有的人不止一张银行卡了.如此庞大的计算和存储功能,如果靠人来完成的话,那就太卡怕了,上万个从业者只为处理这些信息工作,我们往小了看,是浪费人力资源,往大了看,这么多人处理这样毫无技术水平老费时间的事情会不会有可能严重阻碍我们社会的进步?还有更多的人去研究更高级别的需要脑力工程的事情吗?
数据库管理系统(DataBase Management System,简称DBMS)就能够代替人们去做这样复杂度高而且数据庞大的计算,而数据库管理系统(DBMS)处理的对象就是数据,大量的数据就是数据库,也可以理解成数据库管理系统的处理对象就是数据库,因为数据库是由数据组成的,数据库(database)是按照一定的规则和约束条件存放信息的仓库。数据库就是这么简单的东西,其实我们要学习的是这个规则和约束条件,那就是我们是怎么做到让计算机处理这么多的信息的?
下面是几个简单的概念,了解一下就可以。
数据(data)就是数据库存储的基本对象,是描述事物的符号记录,广义上理解的数据包括文本,数字,图形,图像,音频和视屏等,数据本身和它的语义密不可分。在计算机中按照一定的格式或者方法进行存储。
数据库(database)是大量数据的集合,这些数据必须是有组织的,可共享的,可永久存储的,冗余度低,易扩展的。
数据库管理系统(database management system)是用户与操作系统之间的数据管理软件,是大型复杂的系统软件,能科学的组织和存储数据,高效的获取和维护数据,主要功能包括:
数据定义(data define):数据的语义,数据的含义。
数据组织、存储和管理:确定文件结构,存取方式,基本目标是提高存储空间利用率和方便存取。
数据操纵功能(manipulation):查询,插入,删除和修改数据。
数据库的事物管理和运行管理:数据库在建立,运用和维护时由DBMS统一管理和控制。
数据库的建立和维护功能:输入,转换,转储,恢复等功能。
其他:不同DBMS之间的通信功能。
数据库系统(database system):在计算机中引入数据库后的系统,由数据库,数据库管理系统及其开发工具,应用系统,数据库管理员(database administrator)构成。
现在你已经知道了基本的概念,那么他们之间有什么关系呢?大量的数据构成数据库,数据库管理系统又能对数据库进行一系列的操作和维护,数据库管理系统必须建立在操作系统上由数据库管理员在两者之间对数据库进行处理操作等,他们和应用系统及其开发工具一起构成大的数据库系统。
DBMS是用于数据管理的,但是他不是一开始就有得,而是慢慢发展才到今天的DBMS。最开始的时候是人工管理的,没有任何结构并且完全依赖特定程序,给数据的管理带来非常大的困难。然后发展到了文件系统阶段,这一个阶段只是内部结构发生了优化,但是整体还是没有结构,能够存放在存储设备长期保存了,共享性和独立性依然很差。有的时候数据只能针对某个应用程序并且程序之间无法互相调用所以最后才有了DBMS,他的优点有:
1数据结构化:内部结构化且整体结构化,能够高效存储,数据之间是相互关联的。
2共享性高冗余度低易于扩充:数据面向整个系统,而不是某个应用特有,同时降低了冗余度,数据的选取扩充十分灵活能够适应不同的需求。
3.数据独立性高:物理独立性表示磁盘的数据存储结构和具体应用的数据逻辑结构无关;逻辑独立性是指数据库逻辑结构改变后应用程序是可以不变的。
4数据由DBMS同一控制:保护数据不被损坏(安全性),数据结构完整(完整性),多用户同时使用数据库(并发控制),硬件软件故障的恢复(故障恢复)。
在整个发展过程中我们还会看到,我们已经从加工数据为核心转到了以共享数据为核心的阶段,大大提升了工作效率。
基本概念介绍完毕,将在下面几篇文章继续补充数据模型和关系数据库等内容。
(我也正在学习中,如果有错误的地方欢迎更多友好的建议,我们一起每天进步一点点!)