博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
关系型和非关系型数据库——学习笔记
阅读量:5280 次
发布时间:2019-06-14

本文共 1179 字,大约阅读时间需要 3 分钟。

关系数据库(英语:Relational database),是创建在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。现实世界中的各种实体以及实体之间的各种联系均用关系模型来表示。关系模型是由埃德加·科德于1970年首先提出的,并配合“科德十二定律”。现如今虽然对此模型有一些批评意见,但它还是数据存储的传统标准。标准数据查询语言SQL就是一种基于关系数据库的语言,这种语言执行对关系数据库中数据的检索和操作。
关系模型由关系数据结构、关系操作集合、关系完整性约束三部分组成。
实体关系模型:实体关系模型(Entity-Relationship Model),简称E-R Model,是陈品山(Peter P.S Chen)博士于1976年提出的一套数据库的设计工具,他运用真实世界中事物与关系的观念,来解释数据库中的抽象的数据架构。实体关系模型利用图形的方式(实体-关系图(Entity-Relationship Diagram))来表示数据库的概念设计,有助于设计过程中的构思及沟通讨论。
关系操作:
1)数据查询:
   A.选择
   B.投影
   C.连接
   D.并
   E.交
   F.差
   G.除
2)数据操作:
   A.增加
   B.删除
   C.修改
   E.查询
完整性约束包括
   1)实体完整性
   2)参照完整性

   3)用户定义完整性

关系型数据库的特点
   1)关系型数据库的最大特点就是事物的一致性,为了维护一致性所付出的巨大代价就是读写性能比较差
   2)具有固定的表结构,扩展性差
   3)数据的持久化需要关系型数据库
非关系型数据库:NoSQL,有时也称作Not Only SQL的缩写,NoSQL不使用SQL作为查询语言。其数据存储可以不需要固定的表格模式,也经常会避免使用SQL的JOIN操作,一般有水平可扩展性的特征。NoSQL的实现具有二个特征:使用硬盘,或者把随机存储器作存储载体。
主要分为一下几类:
   1)面向高性能并发读写的Key-Value数据库:Key-Value数据库的主要特点就是具有极高的并发读写性能,Redis,Tokyo Cabinet,Flare就是这类的代表。
   2)面向海量数据访问的面向文档数据库:这类数据库的特点是,可以在海量的数据中快速的查询数据。典型代表为MongoDB以及CouchDB。

   3)面向可扩展性的分布式数据库:这类数据库想解决的问题就是传统数据库在可扩展性上的缺陷,这类数据库可以适应数据量的增加以及数据结构的变化,Google Appengine的Big Table就是这类的典型代表,并且,BigTable特别适用于Map Reduce处理。

参考:

版权声明:本文为博主原创文章,未经博主允许不得转载。

转载于:https://www.cnblogs.com/Rex7/p/4752571.html

你可能感兴趣的文章
获取终端下光标的位置
查看>>
线程同步
查看>>
linux异步通知
查看>>
用户输入序号选择商品,按q退出
查看>>
根据变量声明,下列各赋值语句中存放的结果是声明?
查看>>
HDU 2612 Find a way
查看>>
Android SERVICE后台服务进程的自启动和保持
查看>>
POJ 3177——Redundant Paths——————【加边形成边双连通图】
查看>>
RabbitMQ详解(一)------简介与安装
查看>>
matlab常见使用
查看>>
AC日记——[SCOI2010]幸运数字 bzoj 1853
查看>>
三种Hash算法对比以及秒传原理.
查看>>
上手d3js
查看>>
vue中引入路由,如果你懒得写那么
查看>>
springboot跑定时任务
查看>>
git 常见报错
查看>>
AngularJS Select(选择框)
查看>>
【java】JDK、JRE、JVM的关系
查看>>
Oracle集群(RAC)时间同步(ntp和CTSS)
查看>>
实时读取进度条当前进度
查看>>