1、数据库概述 (详情参考:https://www.cnblogs.com/clschao/articles/9907529.html)html
一、概念:存储数据,共享数据mysql
数据库,简而言之可视为电子化的文件柜——存储电子文件的处所,用户能够对文件中的数据运行新增、截取、更新、删除
等操做。 所谓“数据库”系以必定方式储存在一块儿、能予多个用户共享、具备尽量小的冗余度、与应用程序彼此独立的数据集合。
二、数据管理系统(英语:Database Management System,简称DBMS)保证数据安全,提升数据存储传输效率,备份导入导出。sql
2、数据库的分类mongodb
一、关系型数据库(RDBMS)数据库
关系型数据库模型就是把复杂的数据节后归为简单的二元关系.(相似excel)windows
二、常见的关系型数据库缓存
1、oracle数据库:前身 SDL、 创始人:Larry Ellisson 甲骨文公司 影响力:全球最大的数据库软件公司; 主要应用范围:传统大企业,大公司、政府、金融、证券等; 版本:Oracle8i,Oracle9i,Oracle10g,Oracle11g,Oracle12g 2、 MySQL数据库 影响力:普遍应用于internet 上的大中小型网站中. 特色:体积小、速度快、整体拥有成本低。 3、MariaDB数据库 由来:甲骨文公司收购了MySQL后,有MySQL闭源的潜在风险,所以MySQL开元社区采用分支的方式来避开这个
风险。 与mysql 相似。 4、SQL Server数据库 创始:微软公司开发的大型关系数据库系统 windows使用性能很好,可是仅仅适用与windows。 5、Access数据库 定位:入门级小型桌面数据库,性能安全性都很通常 6、PolarDB数据库 定位:阿里云ApsaraDB数据库团队研发的基于云计算架构的下一代关系型数据库
三、非关系型数据库安全
解释:非关系型数据库也被成为NoSQL数据库,NOSQL的本意是“Not Olnly SQL” 网络
非关系型数据库是对关系型数据库的一种有效补充,NOSQL数据库在特定的场合能够发挥出不可思议的高效率和高性能。架构
非关系型数据库实现机制
(1)键值(Key-Value)存储数据库 键值数据库就相似传统语言中使用哈希表,能够经过key来添加、查询或删除数据,由于使用key主键访问,因此
会得到很高的性能及扩展性 键值(Key-Value)数据库主要是使用一个哈希表,这个表中有一个特定的键和一个指针指向特定的数据。
Key/value模型对于IT系统来讲的优点在于简单、易部署、高并发 . k1—>数据 k2—>数据 典型产品:Memcached、Redis、MemcacheDB、BerkeleyDB (2)列存储(Column-oriedted)数据库 ======>了解便可,通常公司用不到 这部分数据库一般用来分布式存储的海量数据,键仍然存在,可是他们的特色是指向了多个列。 典型产品:Cassandra,HBase (3)面向文档(Document-Oriented)数据库 面向文档数据库会将以文档的形式存储。每一个文档都是自包含的数据单元,是一系列数据项的集合。
每一个数据项都有一个名称与对应的值,值既能够是简单的数据类型,如字符串、数字和日期等;也能够是复杂的类型,
若有序列表和关系对象。数据存储的最小单位是文档,同一个表中存储的文档属性能够是不一样的,数据可使用
XML、JSON或者JSONB等多种形式存储 典型产品:MorgoDB、CouchDB (4)图形(Graph)数据库
常见的非关系型数据库
一、memcachedb(key-value) 定位:开源的、高性能的、具备分布式内存对象的缓存系统。 特色:存于内存,一旦重启全部数据都会丢失。 Memcached小结: 一、key-value行数据库 2、纯内存数据库 3、持久化memcachedb(sina) 二、 Redis(key-value) 定位:高性能的key-value数据库。弥补了memcachedb存储的不足 特色: 1)支持内存缓存,这个功能至关于memcached 2)支持持久化存储,这个功能至关于memcachedb,ttserver 3)数据库类型更丰富。比其余key-value库功能更强 4)支持主从集群、分布式 5)支持队列等特殊功能 三、MongoDB(Document-oriented) 特色: 高性能、易部署、易使用、存储数据很是方便 主要功能特性: 1.面向集合存储,易存储对象类型的数据 2.“面向集合”(Collenction-Orented)意思是数据库被分组存储在数据集中,被称为一个
集合(Collenction)每一个 集合在数据库中都有一个惟一的标识名,而且能够包含无限数目的文档,集合的概念相似
关系型数据库(RDBMS)里的表(table)不一样的是它不须要定义任何模式(schema) 3.模式自由 模式自由(schema-free)意为着存储在mongodb数据库中的文件,咱们不须要知道它的任何结构定义。 4.支持动态查询 5.支持彻底索引,包含内部对象 6.支持查询 7.支持复制和故障恢复 8.使用高效的二进制数据存储,包括大型对象 9.自动处理碎片、以支持云计算层次的扩展性
四、Cassandra(Column-oriented) Apache Cassndra是一套开源分布式Key-Value存储系统。它最初由Facebook开发,用于存储特别大的数据。
Facebook目前在使用此系统。 主要特色: 1.分布式 2.基于column的结构化 3.高伸展性 4.Cassandra的主要特色就是它不是一个数据库,而是由一堆数据库节点共同构成一个分布式网络服务,对Cassandra的一个写操做,会被复制到其余节点上去,对Cassandra的读操做。也会被路由到某个节点上面去读取。 Cassandir是一个混合型的非关系的数据库,相似于Google的BigTable。其主要功能比Dynomie(分布式的key-value存储系统)更丰富,Cassandra最初由Facebook开发,后转变成了开源项目。