什么是数据库

数据库就是存放和管理数据的仓库。

数据库和存储,基本上是互联网的瓶颈。

架构上尽量让数据库的压力减少。

数据库种类:关系型数据库,非关系型数据库


关系型数据库:

二维的表格,例如:MySQL和Oracle

可对比Excel表:

一个数据库 --> 一个Excel文件
一个数据表 --> Excel文件中的sheet
一个数据表类型 --> Excel文件中的sheet的列
一条数据 -->Excel文件中的sheet的行

非关系型数据库:NoSQL -- Not Only SQL

key-value:键值

  面向高性能并发读/写的缓存存储,其结构类似于数据结构中的Hash表,每个Key分别对应一个Value,能够提供非常快的查询速度、大数据存放量和高并发操作,非常适合通过主键对数据进行查询和修改等操作。

  Key-Value数据库的主要特点是具有极高的并发读/写性能,非常适作为缓存系统使用。MemcacheDB、BerkeleyDB、Redis、Flare就是Key-Value数据库的代表。

Column-Oriented:列存储

  面向检素的列式存储,其存储结构为列式结构,同于关系型数据库的行式结构,这种结构会让很多统计聚合操作更简单方便,使系统具有较高的可扩展性。这类数据库还可以适应海量数据的增加以及数据结构的变化,这个特点与云计算所需的相关需求是相符合的,比如GoogleAppengine的BigTable以及相同设计理念的Hadoop子系统HaBase就是这类的典州代表。

  面需要特别指出的是,Big Table特别适用于MapReduce处理,这对于云计算的发展有很高的适应性。

Document-Oriented:面向文档

  面向海量数据访问的文档存储,这类存储的结构与Key-Value非常相似,也是每个Key别对应一个Value,但是这个Value主要以JSON(Java Sript Object Notations)或者XML等格式的文档来进行存储

  面这种存储方式可以很方便地被面向对象的语言所使用。这类数据库可在海量的数据中快速查询数据,典型代表为MongoDB、CouchDB等。

Graph:面向图形

  Neo4J


关系型数据库主要产品

  • Oracle 11g
  • MySQL
  • MariaDB
  • SQL Server
  • Access
  • DB2

非关系型数据库主要产品

  • Memcached(Key-Value)
  • redis(Key-Value)
  • MongoDB(Document-Oriented)
原文地址:https://www.cnblogs.com/liangjingfu/p/9355702.html