初识数据库

一、 数据库

数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、截取、更新、删除等操作。
所谓“数据库”是以一定方式储存在一起、能予多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
数据库管理系统(Database Management System,简称DBMS)是为管理数据库而设计的电脑软件系统,一般具有存储、截取、安全保障、备份等基础功能

二、 数据库分类

关系型数据库(RDBMS)

关系型数据库模型是把复杂的数据结构归结为简单的二元关系(即二维表格形式,不是excel,但是和excel的形式很像)
操作关系型数据库的命令,我们称之为SQL
结构化查询语言(Structured Query Language)简称SQL,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统;同时也是数据库脚本文件的扩展名。
结构化查询语言是高级的非过程化编程语言,允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统, 可以使用相同的结构化查询语言作为数据输入与管理的接口。结构化查询语言语句可以嵌套,这使它具有极大的灵活性和强大的功能。
不同数据库系统之间的SQL不能完全相互通用

常用的关系型数据库:

  • oracle数据库
    Oracle前身叫SDL、由Larry Ellison和两个变成任意在1977创办,他们开发了主机的拳头产品,在市场上大量销售。Oracle公司是最早开发关系型数据库的厂商之一,其产品支持最广泛的操作系统平台。目前Oracle关系数据库产品的市场占有率数一数二 。
    Oracle公司是目前全球最大的数据库软件公司,也是近年业务增长极为迅速的软件提供与服务商
    主要应用范围:传统大企业、大公司、政府、金融、证券等。
    版本升级:oracle8i,oracle9i,oracle10g,oracle11g,oracle12c

  • MySQL
    MySQL被广泛的应用在Internet上的大中小型网站中。由于体积小、速度快、总体拥有成本低,开放源代码

  • MariaDB数据库
    MAriaDB数据库管理系统是MySQL数据库的一个分支,主要由开元社区维护,采用GPL授权许可。开发这个MariaDB的原因之一是:甲骨文公司收购了MySQL后,有MySQL闭源的潜在风险,因此MySQL开元社区采用分支的方式来避开这个风险。
    MariaDB基于事务的Maria存储引擎,替换了MySQL的MyISAM的存储引擎,它使用了Percona的XtraDB(InnoDB的变体)这个版本还包括了PrimeBase XT (PBXT)和Federated X存储引擎。

非关系型数据库

非关系型数据库也被成为NoSQL数据库,NOSQL的本意是“Not Olnly SQL”, 指的是非关系型数据库,而不是“No SQL”的意思,因此,NoSQL的产生并不是要彻底地否定关系型数据库,而是作为传统关系型数据库的一个有效补充。NOSQL数据库在特定的场景下可以发挥出难以想象的高效率和高性能。
NOSQL非关系型数据库小结:

  • NOSQL不是否定关系数据库,而是作为关系数据库的一个重要补充
  • NOSQL为了高性能、高并发而生,忽略影响高性能,高并发的功能
  • NOSQL典型产品memcached (纯内存),redis(持久化缓存),mongodb(文档的数据库)

非关系型数据库又分为以下4种:

  • 键值(Key-Value)存储数据库
    键值数据库就类似传统语言中使用哈希表,可以通过key来添加、查询或删除数据,因为使用key主键访问,所以会获得很高的性能及扩展性
    键值(Key-Value)数据库主要是使用一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。Key/value模型对于IT系统来说的优势在于简单、易部署、高并发
    典型产品:Memcached、Redis、MemcacheDB、BerkeleyDB

  • 列存储(Column-oriedted)数据库 ======>了解即可,一般公司用不到
    这部分数据库通常用来分布式存储的海量数据,键仍然存在,但是他们的特点是指向了多个列。
    典型产品:Cassandra,HBase

  • 面向文档(Document-Oriented)数据库
    面向文档数据库会将以文档的形式存储。每个文档都是自包含的数据单元,是一系列数据项的集合。每个数据项都有一个名称与对应的值,值既可以是简单的数据类型,如字符串、数字和日期等;也可以是复杂的类型,如有序列表和关系对象。数据存储的最小单位是文档,同一个表中存储的文档属性可以是不同的,数据可以使用XML、JSON或者JSONB等多种形式存储
    典型产品:MorgoDB、CouchDB

  • 图形(Graph)数据库

原文地址:https://www.cnblogs.com/guyannanfei/p/10932376.html