PostgreSQL和MySQL的存储层深度解析.pptx
文本预览下载声明
PostgreSQL 和 MySQL存储层深度解析12存储与计算 , 引领数据处理的发展PostgReSQL pk MySQL :存储层对比存储层,我们看重什么?看的见的文件仅仅是文件吗?看不见的管理者:表空间?3PostgReSQL 和 MySQL 存储层的优化31存储与计算 , 引领数据处理的发展 ? 什么引领着 数么在引领着数据处理技术的发展什4两个时代,五个阶段存储的目的是为了计算 分布式数据库 : 分布式实时计算 第一代 Haddop 生态园 : 分布式非实时计算5阶段 武新分布式文件系统 : 对大数据存储4阶段数据库 : 既存储又计算3阶段文件系统 : 只存储无计算2阶段多机协作时代1阶段5单机时代1存储与计算 , 引领数据处理的发展 存储与计算的需求 引领什么在引领着数据处理技术的发展 发展6PostgReSQL pk MySQL : 存储层对比2存储层,我们看重什么?看的见的文件仅仅是文件吗?看不见的管理者:表空间?72.1 存储层,我们看重什么?存储层,三大能力1 IO 能力2 稳定性3 存储能力力8存储层,我们看重什么?2.1存储层,三大能力 IO 能力比较项PostgreSQLMySQL数据管理单位页(默认8k)区(每区默认1M,一次可分配1--4个)物理读写单位页页使用方式 读数据到缓存区读数据到缓存区 预读(Read-Ahead) 多范围读(Multi-RangeRead)92.1 存储层,我们看重什么?存储层,三大能力 稳定能力PostgreSQL 与MySQL都能长期稳定运行,包括存储系统长期的稳定运行Facebook/Google/ 淘宝 ...MySQL:PostgreSQL: 腾讯 /Fujitsu/Cisco/NTT Data.../about/users/ 10.存储层,我们看重什么?2.1存储层,三大能力 存储能力64-bitsPostgreSQLMySQL数据库的个数无限制无限制表的个数无限制无限制(InnoDB限制40亿张表)单表的容量无限制理论上无限制(受限于OS)11 存储层,我们看重什么?文件大小受操作系统限制2.112存储层,我们看重什么?2.1单表比较比较项PostgreSQLMySQL每个表的数据文件个数无数个1个单个文件最大尺寸默认1G受OS限制单个文件初始大小自动扩展到单个文件最大自动扩展到最大文件在外存的形式filenode.1,filenode.2,etc表名.ibd13存储层,我们看重什么?2.1 实例X 易的相册库:150 亿记录,分布在 8 个实例节点上,单表接近 20 亿的记录,单表 350G 的存储量X 浪 60 亿单表的记录,单表容量超过 1TPostgreSQL 单表容量示例:单表 2GB*(1024*100 个文件 ) = 200TB/ 表空间( 64-bits 机器,实际上限为 2 的 64 次方 ) 次方)MySQL 单表容量示例:受操作系统影响 , 单表容量就是外存文件大小MySQL 依赖脱机配置参数 配置 系统表空间的容量 , 使用不方便且 IO 低效:innodb_data_file_path = /ibdata/ibdata1:988M;/disk2/ibdata2:50M:autoextend 14看的见的文件仅仅是文件吗?2.2cReate tablespace ts_a (...)cReate table t_a (…) … tablespace ts_a... 数据库 用户 SQL 外存数据的存储路径目录 + 文件名PostgReSQL/MySQL/..., 神秘的盒子 ?15看的见的文件仅仅是文件吗? --PostgReSQL2.21 存储结构2 运行信息16看的见的文件仅仅是文件吗? --PostgReSQL2.2 存储结构包括了元 信息和用户的数据 1 存储结构 2 运行信息 运行信息与数据 库的功能相对应172.2看的见的文件仅仅是文件吗? --PostgReSQL 用户 SQL 系统表cReate tablespace ts_a (…)cReate table t_a (…) … tablespace ts_a...select … fRom t_a... 数据缓存区 外存,文件系统: pg_tablesapce pg_class pg_attRibutes Reltablespace + Relfilenode ( + ReltoastRelid ) 存储介质目录 - 表空间 -+ 文件名 filenoed1/filenode2 18看的见的文件仅仅是文件吗? --PostgReSQL2.2 文件中存放系统运行信息、元 数据、用户数据 没有管理 IO 依赖操作系统 表空间级的存储能 力没有限制 单个文件大小
显示全部