01 第一,什么是数据库?
维基百科上是这样定义的:
所谓“数据库”是以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。一个数据库由多个表空间(Tablespace)构成。
数据库就是一个存储结构化数据的仓库。
02 第二,数据库管理系统
数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能。
数据库管理系统主要分为以下两类:
2.1 关系数据库
关系数据库是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。
几乎所有的数据库管理系统都配备了一个开放式数据库连接(ODBC)驱动程序,令各个数据库之间得以互相集成。
典型代表有:MySQL、Oracle、Microsoft SQL Server、Access、PostgreSQL、DB2、MariaDB
2.2 非关系型数据库 NoSQL
非关系型数据库也被称为 NoSQL 数据库,NoSQL 并不是某个具体数据库,它泛指所有非关系型数据库。
非关系型数据库种类有很多,我们列举其中较为流行的几种。
2.2.1、键值(Key-Value)存储数据库
键值数据库主要是使用一个哈希表,表中有一个特定的键和一个指针指向特定的数据。Key/value 模型的键值数据库的优势在于,通过键的 hash 码可以快速查询到 value,并且能够应对高并发。
市面上成熟的产品有,Memcached、Redis、MemcacheDB、Berkeley DB。前两个可能