数据库分为:关系型数据库和非关系型数据库两种

关系型数据库包括SQLite、Oracle、Mysql等

  • 特性:
    1、关系型数据库,是指采用了关系模型来组织数据的数据库;
    2、关系型数据库的最大特点就是事务的一致性
    3、简单来说,关系模型指的就是二维表格模型,而一个关系型数据库就是由二维表及其之间的联系所组成的一个数据组织。

优点
1、容易理解:关系模型相对网状、层次等其他模型来说更容易理解;
2、使用方便:通用的SQL语言使得操作关系型数据库非常方便;
3、易于维护:丰富的完整性大大减低了数据冗余和数据不一致的概率;
4、支持SQL,可用于复杂的查询。
缺点
1、为了维护一致性所付出的巨大代价就是其读写性能比较差;
2、固定的表结构;
3、高并发读写需求;
4、海量数据的高效率读写;

非关系型数据库包括MongoDb、redis、HBase等

  • 特性:
    1、使用键值对存储数据;
    2、分布式;
    3、一般不支持ACID特性;
    4、非关系型数据库严格上不是一种数据库,应该是一种数据结构化存储方法的集合。

优点
1、无需经过sql层的解析,读写性能很高;
2、基于键值对,数据没有耦合性,容易扩展;
3、存储数据的格式:nosql的存储格式是key,value形式、文档形式、图片形式等等,文档形式、图片形式等等,而关系型数据库则只支持基础类型。

缺点
1、不提供sql支持,学习和使用成本较高;
2、无事务处理,附加功能bi和报表等支持也不好;

数据库的ACID

事务是并发控制的单位,是用户定义的一个操作序列。这些操作要么都做,要么都不做,是一个不可分割的工作单位。

事务必须满足四大特征:原子性,一致性,隔离性,持久性/持续性

原子性(atomicity):一个事务必须被视为一个不可分割的最小工作单元,整个事务中的所有操作要么全部提交成功,要么全部失败回滚,对于一个事务来说,不可能只执行其中的一部分操作,这就是事务的原子性(表示事务内操作不可分割。要么都成功、要么都是失败)

一致性(consistency):数据库总是从一个一致性的状态转换到另一个一致性的状态(要么都成功、要么都是失败.后面的失败了要对前面的操作进行回滚)
隔离性(isolation):通常来说,一个事务所做的修改在最终提交以前,对其他事务是不可见的(一个事务开始后,不能后其他事务干扰)
持久性(durability):一旦事务提交,则其所做的修改会永久保存到数据库。(表示事务开始了,就不能终止,此时即使系统崩溃,修改的数据也不会丢失。)

常见的数据库有哪些?相关推荐

  1. 10个最常见的数据库缺陷

    保护数据库不是一件容易的事情,很多企业,包括数据库管理员在内,都存在侥幸心理,但黑客针对数据库本身存在的缺陷很容易得逞,本文是Appsec的安全团队公布的10个最常见的数据库缺陷,黑客经常利用它们发起 ...

  2. SQL全方位攻略:之数据库历史、数据库基本概念和相关术语,以及常见的数据库类型介绍

    文章目录 1.数据库介绍 1.1 数据库历史 1.2 数据库基本概念和术语 1.2.1. 数据库 1.2.2. 数据库管理系统(DBMS) 1.2.3. 应用程序 1.2.4. 模式(Schema) ...

  3. MYSQL——MYSQL中常见的数据库引擎

    文章目录 MYSQL中常见的数据库引擎 1.什么是数据库引擎? 2.MYSQL中有哪些数据库引擎 3.常见引擎介绍 (1)InnoDB (2)MyISAM (3)Memory(Heap) MYSQL中 ...

  4. 【宋红康 MySQL数据库】【03】SQL概述_常见的数据库对象

    持续学习&持续更新中- 学习态度:守破离 [宋红康 MySQL数据库][03]SQL概述_常见的数据库对象 SQL概述 什么是SQL SQL背景知识 SQL分类 DDL(Data Defini ...

  5. MySql随笔-常见的数据库对象

    常见的数据库对象: 一.表(Table):表是存储数据的逻辑单元,可以以行和列的形式存在,列就是字段,行就是记录. 二.数据字典:就是系统表,存放数据库相关信息的表,系统表的数据通常由数据库系统维护, ...

  6. mysql软件分为几种_常见的数据库软件有哪几种

    常见的数据库软件介绍: 一.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由 MySQL AB开发.发布和支持. MySQL是一个快速的.多线程.多用户.健壮的SQL数据库服务器.My ...

  7. 常见的数据库有哪些(关系型、非关系型)?

    常见的数据库有哪些? 一.常见数据库分为2大类(关系型.非关系型) 关系型数据库 Mysql数据库 (美国,甲骨文公司) Oracle数据库 (美国,甲骨文公司) Sql Server数据库 (美国, ...

  8. MySQL 常见的数据库查询性能优化手段

    简单介绍了一些常见MySQL数据库优化手段,比如减少数据访问.使用索引.使用关联查询等等. 文章目录 1 优化数据访问 2 重构查询 2.1 优化子查询 2.2 优化GROUP BY和DISTINCT ...

  9. 常见的数据库,默认端口号是多少?

    常见的数据库,默认端口号是多少: 一.关系型数据库 1.MySql数据库 ,默认端口是: 3306: 2.Oracle数据库 ,默认端口号为:1521: 3.Sql Server数据库 ,默认端口号为 ...

  10. 数据库软件mysql属于哪种类型软件_常见的数据库软件有哪几种

    常见的数据库软件介绍: 一.MySQL MySQL是最受欢迎的开源SQL数据库管理系统,它由 MySQL AB开发.发布和支持. MySQL是一个快速的.多线程.多用户.健壮的SQL数据库服务器.My ...

最新文章

  1. HDU 2795 Billboard (线段树+贪心)
  2. 组合赋权法之matlab
  3. 强化学习《基于价值 - Double Q-Learning》
  4. css_input[checked]复选框去掉默认样式并添加新样式
  5. Maxwell与Canal 工具对比
  6. 主从模式在不同场景下的解释
  7. hibernate 多对多操作(级联操作)
  8. 羽毛球 中的 切球 与 旋球
  9. C#6.0VISUALSTUDIO 2015 C#入门经典 第7版pdf
  10. Windows编程系列(前言)
  11. hdu-3790 最短路径问题---dijkstra两重权值
  12. 微信企业号开发接口文档
  13. 如何用VNC远程管理Linux桌面
  14. SMAP数据产品介绍与下载方法
  15. 《跟小智一起学网络》教程目录
  16. Linux解决txt文件乱码问题
  17. matlab图上输入希腊字母,Matlab中给图形添加【希腊字母】
  18. Android调用微信扫一扫和支付宝扫一扫
  19. 首个高温红色预警来了,气象预警你了解多少?
  20. SparkSQL_Dataset和DataFrame简介

热门文章

  1. 小程序wx.request通过post方式提交数据给服务器-小程序支付开发教程
  2. Java随笔记 - Java NIO的初步认识,NIO的三个核心概念,Channel和Buffer的简单使用
  3. 【JZOJ6354】最短路(tiring)
  4. Cura Engine 源码解析:Settings
  5. Android打包apk实现原理与流程(雷惊风)
  6. 数据分析与挖掘建模(理论知识)
  7. 数据分析方法-AARRR模型分析方法
  8. pythoneducoder苹果梨子煮水的功效_苹果梨子煮水的功效是什么呢
  9. 【ZOJ2750】Idiomatic Phrases Game(最短路)
  10. php车牌识别,跨平台车牌识别应用 Light-LPR