python数据库基础概念
1. 前言
1.1 数据
- 描述事务的符号
- 表现形式:文本,图形,音频,视频等
现实中的数据都是非结构化的。
计算机的数据都是结构化的。
结构化数据:是高度组织和整齐格式化的数据。
1.2 数据库 (Database, DB)
- 存放数据的仓库
- 存放在计算机中,按照一定格式存放
- 可为用户共享
1.3 数据库管理系统(Database Management System, DBMS)
- 完成科学的组织和存储数据
- 完成高效的获取和维护数据
- 常见的DBMS有Oracle, MySql, SQL Server, DB2, FoxPro, Access, MyCat(替代昂贵的oracle的MySQL集群中间件)
1.4 数据库应用程序DBAS
在数据库管理系统基础上,使用数据库管理系统的语法,开发的直接面对最终用户的应用程序。比如学生管理系统,认识管理系统,图书管理系统。
1.5 数据库管理员 (Database Administrator, DBA)
数据库管理系统的操作者
1.6 最终用户
数据库应用程序的使用者
1.7 数据库系统 (Database System, DBS)
数据库+数据库管理系统+数据库应用系统+数据库管理员+最终用户
2. 数据的发展阶段
网状数据库 -> 层次数据库-> 关系数据库
2.1 网状数据库
2.2 层次数据库
2.3 关系数据库
- 采用关系(二维表)结构储存和管理数据;存储的时候需要考虑事物间的关系,比如一对一,一对多等等。
- 采用结构化查询语句(SQL)作为客户端与数据库服务端之间沟通的桥梁
- 关系数据库是们目前主流的数据库技术
2.4 对象数据库
把面向对象的方法和数据库计数结合起来,使得数据库系统的分、设计最大程度与人们对客观世界的认识一致
2.5 NOSQL数据库(Not Only SQL数据库)
泛指非关系数据库,如MongoDB。
大多数不支持SQL。
应用的核心是关系数据库(大量基于磁盘),尽量不要频繁的读写关系数据库;将常用的数据放在非关系数据库中,方便读。