文章目录

  • 说明
  • NDB和InnoDB的不同点
  • NDB和InnoDB的性能、负载比较
  • NDB和InnoDB特性总结

说明

首先MySQL提供了众多的存储引擎供用户使用,但是支持事务的存储引擎并不多:NDB和InnoDB两个。但是NDB只支持在NDB集群中使用,并不支持在其他场景下使用。下面我们主要讨论它们之间不同的地方,各自的优缺点方便用户根据自己的实际情况进行选项。

注:在NDB集群中,只支持NDB存储引擎的表,其他存储引擎的表将不会被集群化。

NDB和InnoDB的不同点

NDB需要通过一个分布式集群来使用,采用的不共享任何数据、组件的集群,无单点故障。

  • 以MySQL8.0,NDB8.0版本为例:
    而对于MySQL5.7,NDB7.5/7.6版本没有区别,除了数据库版本之外。
特性 InnoDB (MySQL 8.0) NDB 8.0
MySQL版本 8.0 8.0
InnoDB版本 8.0.15 8.0.15
NDB集群版本 N/A 8.0.14/8.0.14
存储限制 64TB 128TB
外键 Yes Yes
事务 所有类型 READ COMMITTED
MVCC Yes No
数据压缩 Yes No (NDB的检查点和备份文件可以压缩)
大行数据(> 14K) 支持 VARBINARY,VARCHAR,BLOB,TEXT 只支持 BLOB,TEXT (如果存储非常大的数据,会降低NDB的性能)
支持复制 异步和半同步复制; MySQL组复制 在NDB集群中自动同步复制;在NDB集群之间使用MySQL复制进行异步复制(不支持半同步复制)
分布式读 Yes (MySQL复制) Yes
分布式写 需要应用程序级别进行操作 Yes
高可用 内置,InnoDB集群 Yes (99.999%的稳定性)
节点故障恢复、切换 MySQL组复制 自动化
节点故障恢复时间 30秒或更长 通常情况小于1秒
实时性能 No Yes
内存表 No Yes (可以同时存储在磁盘、内存上)
NoSQL访问存储引擎 Yes Yes (多种APIs, 包括:Memcached, Node.js/JavaScript, Java, JPA, C++和HTTP/REST)
并发和并行写入 Yes 可支持最多48并行写操作, 优化并发写入操作
冲突检测和解决(多主) Yes (MySQL Group Replication) Yes
Hash索引 No Yes
在线添加节点 组复制中的读、写节点 Yes (所有类型的节点)
在线升级 Yes (复制) Yes
在线修改 Yes Yes

NDB和InnoDB的性能、负载比较

NDB集群具有一系列独特的属性,这些属性使其非常适合为需要高可用性、快速故障转移、高吞吐量和低延迟的应用程序提供服务。由于其分布式体系结构和多节点实现,NDB集群还具有特定的约束,可能会阻碍一些工作负载的良好执行。关于数据库驱动的应用程序工作负载的一些常见类型,NDB和InnoDB存储引擎在行为上的一些主要差异如下表所示:

负载 InnoDB NDB 集群
大容量OLTP应用程序 Yes Yes
DSS应用(数据marts,分析) Yes Limited (Join operations across OLTP datasets not exceeding 3TB in size)
自定义应用程序 Yes Yes
打包的应用程序 Yes Limited (通过主键访问); NDB 8.0集群支持外键
网络电讯应用(HLR, HSS, SDP) No Yes
会话管理和缓存 Yes Yes
电子商务应用程序 Yes Yes
用户档案管理,AAA协议 Yes Yes

NDB和InnoDB特性总结

使用InnoDB主要关心的需求

  • 外键

    注: NDB 集群 8.0支持外键

  • 全表扫描
  • 非常大的数据、行或事物
  • READ COMMITTED以外的事务类型

使用NDB主要关心的需求

  • NDB 集群8.0支持外键
  • 写分离
  • 99.999%的运行可靠性
  • 在线添加节点、在线修改
  • 多个SQL 和NoSQL API
  • 实时性能
  • BLOB列限制使用
  • 支持外键

NDB和InnoDB存储引擎比较相关推荐

  1. Mysql NDB and InnoDB 存储引擎区别

    NDB存储引擎使用一个分布式的实现,无共享架构,这使它在许多方面的行为不同于InnoDB.对于那些不习惯使用NDB,由于事务.外键.表限制,其分布式性质可能会导致意外行为.这些在下表中显示: Feat ...

  2. Mysql技术内幕——InnoDB存储引擎

    一.mysql体系结构和存储引擎 1.1.数据库和实例的区别 数据库:物理操作系统或其他形式文件类型的集合.在mysql下数据库文件可以是frm,myd,myi,ibd结尾的文件. 数据库实例:由数据 ...

  3. mysql技术内幕innodb存储引擎——表索引算法和锁_(转)Mysql技术内幕InnoDB存储引擎-表索引算法和锁...

    表 原文:http://yingminxing.com/mysql%E6%8A%80%E6%9C%AF%E5%86%85%E5%B9%95innodb%E5%AD%98%E5%82%A8%E5%BC% ...

  4. mysql技术innodb存储引擎读后感_《Mysql技术内幕-InnoDB存储引擎》读书笔记 (一)...

    @(Mysql) 官方数据库 下载 导入/data/mysql57/bin/mysql --socket /data/mysql3306/mysql.socket -uroot -ppassword1 ...

  5. MySQL InnoDB存储引擎

    呵呵哒... MySQL体系结构和存储引擎 首先要搞懂的是什么是数据库,什么是数据库实例. 数据库:物理操作系统文件或其他形式文件类型的集合. 实例:MySQL数据库由后台线程以及一个共享内存区组成, ...

  6. binlog数据库不写入binlog_MySQL数据库及InnoDB存储引擎的日志文件

    船头上迎面而来的海风特别有劲道但却总有种苦咸的味道,他睁着通红的眼睛,紧绷着嘴.尽管眼前一望无垠的海面平静如清晨的托雷维耶哈盐湖湖面,但他的心仍然翻涌着昨晚暴风雨中的激浪.这是离开陆地,在海上航行这么 ...

  7. Mysql技术内幕InnoDB存储引擎——InnoDB存储引擎

    特此申明: 前段时间找工作所以看了<Mysql技术内幕InnoDB存储引擎>,整理的时候除了参考网上已有的笔记贴,加上自己整合的,可能和别人有雷同之处.不过无所谓啦,写出来自己看看,需要的 ...

  8. mysql innodb 存储引擎

    --MySQL 结构有两部分组成 1.MySQL server 层 2.存储引擎层 --注:到 存储引擎层之前都属于 MySQL server 层 MySQL 5.1到 5.7 ,大版本 没有变化 , ...

  9. innodb存储引擎学习总结

    注明:<MySQL技术内幕 InnoDB存储引擎>个人学习总结 目录 第一章:mysql体系结构和存储引擎 1.1定义数据库和实例 1.2mysql的结构体系 mysql的组成部分 1.3 ...

  10. mysql技术之innodb存储引擎

    mysql技术内幕InnoDB存储引擎 基本信息作者姜承尧类别技术-mysql简介第二版推荐指数阅读日期开始日期终止日期书摘mysql体系结构和存储引擎特点可移植数据库定义数据库和实例定义数据库物理操 ...

最新文章

  1. 系统计算机大小怎么更改,调整设置电脑图标大小的方法
  2. 程序员的高速学习法——以JS学习为例,进行图解
  3. MVC中helper的用法。
  4. webstock php,workerman_connection
  5. mybatis 查询之神坑
  6. 指针、引用以及const限定符、constexpr限定符
  7. java 数字计算精度问题
  8. 如何成为云原生时代的卓越架构师
  9. myEclipse的subversion插件Subclipse
  10. java hibernate注解_Hibernate注解方法使用总结
  11. js es6 map 与 原生对象区别
  12. 3D模型欣赏:《Sword girl》古风 女战士角色 次世代 zbrush雕刻
  13. 【工业大数据】35页PPT讲解:工业大数据特点、价值及其计算
  14. 临时解决Mac OS系统下kernel_task占用大量CPU资源导致系统卡顿一例(不用删plist文件)
  15. 数学基础知识总结 —— 1. 常用导数公式
  16. 一个奇鸽船新版本 v1.32
  17. Lerna 入门级教程
  18. html表格中加背景图片,关于在HTML表格中插入背景图片图片重复显示的问题
  19. ORA-01452报错的一种解决办法
  20. 移动开发:Android数据连接浅析

热门文章

  1. 组装台式计算机的过程,学习电脑装机全过程 组装台式机图解教程(6)
  2. 微信小程序Audio音频(有关歌曲和图片的路径)
  3. 解决微信大字体下H5布局混乱
  4. 刷B站学数分Day1|如何写出一份合格的数据分析师简历
  5. 深度学习中的感受野计算
  6. 滚球板球控制系统详解(openmv+stm32实现)
  7. 2022长三角数学建模A题
  8. 19深度探秘搜索技术_基于slop参数实现近似匹配以及原理剖析和相关实验
  9. 关于STM32F105 软硬件环境搭建
  10. matlab 怎麼卸載乾淨,matlab set gca用法