当前位置: 首页 > news >正文

MySQL和Oracle数据库引擎

MYSQL数据库:

在mysql数据库中,常用到的引擎主要就是2个:Innodb和MyIASM。

Innodb:它提供了对数据库ACID事务的支持,并且还提供行级锁和外键的约束。它被设计的目的就是处理大数据容器的数据库系统,它本身实际上是基于Mysql后台的完整系统。在Mysql运行的时候,Innodb会在内存中建立缓冲池,用于缓冲数据和索引,但该索引不支持全文搜索。同时,启动也比较慢,他不会保存表的行数。当进行Select count(*) from table指令的时候,需要进行扫描全表。所以当需要使用数据库的事务时,该引擎就是首选。由于锁的粒度小,写操作是不会锁定全表的。所以在并发度较高的场景下使用会提升效率的。

MyIASM:MySQL的默认引擎,但不支持事务,也不支持行级锁和外键。因此在当执行insert和update时,会锁定整张表,导致效率降低。不过比起Innodb不同的是,MyIASM引擎保存了表的行数,于是当进行Select count(*) from table语句时,不需要进行扫描全表,直接读取已存的数据。所以,如果表的读操作远远多于写操作的时候,并不需要事务的支持,可以优选MyIASM数据库引擎。

两者在使用的时候,如何选择?

  1. 如果需要ACID事务支持时,则选择Innodb数据库引擎。
  2. 当大容量数据集时选择Innodb,因为它支持事务处理和故障的恢复。Innodb可以利用数据库日志来进行数据的恢复,当根据主键进行查询时,Innodb也是比较快的。
  3. 大批量的插入语句时(insert)在MyIASM数据库引擎中执行是比较快的,但没有事务的处理,不安全。但update语句在Innodb下执行比MyIASM要快,尤其是在并发量大的时候。

Oracle数据库:

在Oracle中是不存在引擎的概念,数据处理大致可以分为两大类:联机事务处理OLTP、联机分析处理OLAP。

联机事务处理OLTP:是传统的关系型数据库的主要应用,主要是基本的、日常的事务处理,例如银行交易等。它主要强调的是数据库内存效率、内存各种指示的命令率、绑定变量和并发操作。
联机分析处理OLAP:是数据库仓库系统的主要应用,支持复杂的分析操作,侧重决策支持,并且提供直观易懂的查询结果。它主要是强调数据分析、sql执行市场、磁盘I/O、分区等。

http://www.lryc.cn/news/162998.html

相关文章:

  • CloudQuery X PolarDB:让数据库管理更简单
  • 机器学习开源工具BatteryML,一站式分析与预测电池性能
  • TypeScript:赋予JavaScript数据类型新的力量,提升编程效率!
  • LLMs之Baichuan 2:《Baichuan 2: Open Large-scale Language Models》翻译与解读
  • 听书网站模板源码 懒人书院网站源码 苹果cms手机听书网站模版源码 支持手机端
  • 算法 数据结构 斐波那契数列 递归实现斐波那契数列 斐波那契递归的优化 斐波那契数列递归求解 多路递归实现 斐波那契算法系列 数据结构(十一)
  • 【面试经典150 | 双指针】两数之和
  • 桥接模式简介
  • 零钱兑换00
  • JavaScipt中如何实现函数缓存?函数缓存有哪些场景?
  • android studio的Android Drawable Preview
  • 基于云计算的区域LIS系统系统源码
  • VR农学虚拟仿真情景实训教学演示
  • sklearn中make_blobs方法:聚类数据生成器
  • Win11自带微软输入法怎么输入π及其他希腊字母
  • 关于MyBatisPlus框架下出现xml里面定义的方法无法被正确识别以及提示调用mysql存储过程时参数无效的问题
  • vscode路径别名文件跳转解决办法
  • layui 富文本编辑器layedit 以及 图片转base64前端页面显示
  • 服务器给前端实时推送数据轻量化解决方案eventSource+Springboot
  • 数据结构与算法:数据结构基础
  • virtualbox虚拟机中安装FreeDOS系统和DJGPP编译环境
  • JAVASE事件监听
  • ubuntu14.04改静态ip
  • “文件的上传与下载:实现与优化“
  • uboot顶层Makefile前期所做工作说明三
  • Mysql树形表的两种查询方案(递归与自连接)
  • text-align和text-align-last的属性值
  • SpringMVC的注解、参数传递、页面跳转
  • OAK相机:启动报错X_LINK_DEVICE_NOT_FOUND
  • Python异常处理——走BUG的路,让BUG无处可走