软硬件结合的数据库解决方案 Hardware and Software  Engineered to Work Together 张瑞  @ Alibaba
提纲 <ul><li>硬件架构与性能分析 </li></ul><ul><ul><li>主机,存储性能分析 </li></ul></ul><ul><ul><li>SSD 存储技术介绍 </li></ul></ul><ul><li>Oracle 系...
<ul><li>硬件架构与性能分析 </li></ul>
硬件架构与性能 <ul><li>主机 </li></ul><ul><ul><li>SMP , NUMA , MPP </li></ul></ul><ul><ul><li>CPU (核数,频率,线程),内存容量 </li></ul></ul><u...
硬件技术发展 <ul><li>主机 </li></ul><ul><ul><li>CPU 处理能力不断提升 </li></ul></ul><ul><ul><li>PC 服务器替代小型机 </li></ul></ul><ul><li>存储 </li...
SSD 存储技术 <ul><li>SSD 分类: </li></ul><ul><ul><li>NAND , NOR </li></ul></ul><ul><ul><li>SLC , MLC </li></ul></ul><ul><li>接口类型...
SSD 性能数据 <ul><li>SSD : </li></ul><ul><ul><li>IOPS :随机读 10000-60000 ,随机写 5000-60000 </li></ul></ul><ul><ul><li>Throughput :...
SSD 存储原理 <ul><li>SSD 需要擦除: </li></ul><ul><ul><li>允许直接写入,不允许更新 </li></ul></ul><ul><ul><li>更新  =  读取  +  擦除  +  写入 </li></ul...
SSD 特性总结 <ul><li>优势: </li></ul><ul><ul><li>巨大的 IOPS 优势 </li></ul></ul><ul><ul><li>IO 延时非常低 </li></ul></ul><ul><ul><li>适合 O...
数据库 IO 分析 <ul><li>日志文件 </li></ul><ul><ul><li>DirectIO ,写入底层磁盘,顺序 IO </li></ul></ul><ul><ul><li>LGWR 同步写,响应时间要求 <1ms </li><...
数据库存储方案 <ul><li>在线日志 </li></ul><ul><ul><li>带缓存的磁盘存储或 SSD </li></ul></ul><ul><ul><li>裸设备或 ASM ,不建议文件系统 </li></ul></ul><ul><...
<ul><li>Oracle 系统架构最佳实践 </li></ul>
Oracle 系统架构 <ul><li>Active/Standby Cluster </li></ul><ul><li>Oracle RAC </li></ul><ul><li>Oracle DataGuard </li></ul><ul><...
Active/Standby Cluster <ul><li>传统主备模式 </li></ul><ul><li>基于共享存储 </li></ul><ul><li>典型产品 </li></ul><ul><ul><li>IBM hacmp </li...
Oracle RAC <ul><li>优势 </li></ul><ul><ul><li>高可用 </li></ul></ul><ul><ul><li>水平扩展 </li></ul></ul><ul><li>劣势 </li></ul><ul><u...
Oracle DataGuard <ul><li>Primary 服务, Standby 只读 (11g) </li></ul><ul><li>异步传送方式,可能导致数据丢失 </li></ul><ul><li>失败切换需要人工干预 </li>...
Oracle ASM <ul><li>整合存储设备,解决存储扩展的问题 </li></ul><ul><li>自动负载均衡,解决 IO 热点的问题 </li></ul><ul><li>支持数据冗余,软件 RAID 10 </li></ul><ul...
Oracle ASM
<ul><li>软硬件结合的解决方案 </li></ul>
Oracle 的软硬件一体机 <ul><li>Exadata </li></ul><ul><ul><li>硬件: Compute node , Storage Cell , SSD , Infiniband </li></ul></ul><ul...
HA 软件 -SmartCluster <ul><li>自主开发,替代商业软件 </li></ul><ul><li>数据库探测,共享资源管理 </li></ul><ul><ul><li>第三方探测,防止信息孤岛 </li></ul></ul><...
SmartCluster 架构
案例 1- 单机混合存储方案 <ul><li>硬件方案 </li></ul><ul><ul><li>服务器混插 SSD 和 SAS 磁盘 </li></ul></ul><ul><ul><li>无硬件 RAID , ASM mirror </li...
案例 2- 共享 redo 的 HA 方案 <ul><li>硬件方案 </li></ul><ul><ul><li>服务器内置 Fusionio 和 SAS 磁盘 </li></ul></ul><ul><ul><li>主备服务器连接一套共享存储 ...
案例 2- 系统架构图
案例 3-Oracle Flashcache <ul><li>Oracle flashcache </li></ul><ul><ul><li>11g R2 + Oracle linux </li></ul></ul><ul><ul><li>Re...
案例 4 :高性能数据库一体机 <ul><li>系统整体架构 </li></ul><ul><ul><li>PC+SSD+Infiniband 提供高性能 </li></ul></ul><ul><ul><li>ASM 提供数据存储和数据冗余 </...
Q & A <ul><li>关于我 </li></ul><ul><ul><li>Database Architect @ Alibaba </li></ul></ul><ul><ul><li>Email : [email_address] </...
Upcoming SlideShare
Loading in …5
×

OTN软硬件结合数据库解决方案

21,727 views

Published on

0 Comments
10 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
21,727
On SlideShare
0
From Embeds
0
Number of Embeds
19,009
Actions
Shares
0
Downloads
0
Comments
0
Likes
10
Embeds 0
No embeds

No notes for slide

OTN软硬件结合数据库解决方案

  1. 1. 软硬件结合的数据库解决方案 Hardware and Software Engineered to Work Together 张瑞 @ Alibaba
  2. 2. 提纲 <ul><li>硬件架构与性能分析 </li></ul><ul><ul><li>主机,存储性能分析 </li></ul></ul><ul><ul><li>SSD 存储技术介绍 </li></ul></ul><ul><li>Oracle 系统架构最佳实践 </li></ul><ul><ul><li>Oracle HA 方案优劣分析 </li></ul></ul><ul><ul><li>Oracle ASM 特性解读 </li></ul></ul><ul><li>软硬件结合的解决方案 </li></ul><ul><ul><li>Exadata 和 OUDA 介绍 </li></ul></ul><ul><ul><li>软硬件结合的案例分享 </li></ul></ul>
  3. 3. <ul><li>硬件架构与性能分析 </li></ul>
  4. 4. 硬件架构与性能 <ul><li>主机 </li></ul><ul><ul><li>SMP , NUMA , MPP </li></ul></ul><ul><ul><li>CPU (核数,频率,线程),内存容量 </li></ul></ul><ul><ul><li>性能指标: TPC , SPEC , A-TPS </li></ul></ul><ul><li>存储 </li></ul><ul><ul><li>磁盘性能:转速,容量,接口 </li></ul></ul><ul><ul><li>存储性能:磁盘数量,缓存大小,存储架构 </li></ul></ul><ul><ul><li>性能指标:响应时间, IOPS ,吞吐量 </li></ul></ul><ul><li>网络 </li></ul><ul><ul><li>1GbE/10GbE , SAN </li></ul></ul><ul><ul><li>性能指标:响应时间,带宽 </li></ul></ul>
  5. 5. 硬件技术发展 <ul><li>主机 </li></ul><ul><ul><li>CPU 处理能力不断提升 </li></ul></ul><ul><ul><li>PC 服务器替代小型机 </li></ul></ul><ul><li>存储 </li></ul><ul><ul><li>Flash 存储技术: SSD </li></ul></ul><ul><ul><li>SSD 替代磁盘存储 </li></ul></ul><ul><li>网络 </li></ul><ul><ul><li>高吞吐低延迟 Infiniband </li></ul></ul><ul><ul><li>用于集群互联和高速存储网络 </li></ul></ul>
  6. 6. SSD 存储技术 <ul><li>SSD 分类: </li></ul><ul><ul><li>NAND , NOR </li></ul></ul><ul><ul><li>SLC , MLC </li></ul></ul><ul><li>接口类型: </li></ul><ul><ul><li>SATA , SAS , FC , PCIE </li></ul></ul><ul><li>生产厂家: </li></ul><ul><ul><li>Intel , Fusionio </li></ul></ul><ul><ul><li>STEC , SandForce </li></ul></ul><ul><ul><li>HUAWEI </li></ul></ul>
  7. 7. SSD 性能数据 <ul><li>SSD : </li></ul><ul><ul><li>IOPS :随机读 10000-60000 ,随机写 5000-60000 </li></ul></ul><ul><ul><li>Throughput : 连续读 200M-600M ,连续写 200M-600M </li></ul></ul><ul><ul><li>Latency : 30us </li></ul></ul><ul><li>磁盘: </li></ul><ul><ul><li>IOPS :随机读 160 ,随机写 160 </li></ul></ul><ul><ul><li>Throughput : 连续读 170M ,连续写 130M </li></ul></ul><ul><ul><li>Latency : 6ms </li></ul></ul>
  8. 8. SSD 存储原理 <ul><li>SSD 需要擦除: </li></ul><ul><ul><li>允许直接写入,不允许更新 </li></ul></ul><ul><ul><li>更新 = 读取 + 擦除 + 写入 </li></ul></ul><ul><ul><li>擦除代价大,延时 2ms </li></ul></ul><ul><ul><li>写入单位与擦除单位单位不一致 </li></ul></ul><ul><ul><li>擦除次数有次数限制 </li></ul></ul><ul><li>SSD firmware 的功能: </li></ul><ul><ul><li>FTL :物理逻辑地址映射 </li></ul></ul><ul><ul><li>Reclamation :回收策略,异步擦除 </li></ul></ul><ul><ul><li>Wear leveling :均衡写磨损,提升寿命 </li></ul></ul><ul><ul><li>Reserved space :减小写入放大,提升写性能 </li></ul></ul>
  9. 9. SSD 特性总结 <ul><li>优势: </li></ul><ul><ul><li>巨大的 IOPS 优势 </li></ul></ul><ul><ul><li>IO 延时非常低 </li></ul></ul><ul><ul><li>适合 OLTP 应用 </li></ul></ul><ul><li>劣势: </li></ul><ul><ul><li>不同产品的性能差异很大 </li></ul></ul><ul><ul><li>擦除导致的性能抖动 </li></ul></ul><ul><ul><li>磨损导致的寿命问题 </li></ul></ul><ul><ul><li>吞吐量相比较磁盘无优势 </li></ul></ul><ul><ul><li>单位容量价格贵 </li></ul></ul><ul><ul><li>不适合 DSS 应用 </li></ul></ul>
  10. 10. 数据库 IO 分析 <ul><li>日志文件 </li></ul><ul><ul><li>DirectIO ,写入底层磁盘,顺序 IO </li></ul></ul><ul><ul><li>LGWR 同步写,响应时间要求 <1ms </li></ul></ul><ul><li>数据文件 </li></ul><ul><ul><li>数据文件写:异步 IO , DBWR 后台写,随机 IO </li></ul></ul><ul><ul><li>数据文件顺序读:索引查询,单块读,随机 IO </li></ul></ul><ul><ul><li>数据文件离散读:全表扫描,多块读,连续 IO </li></ul></ul><ul><ul><li>响应时间要求 <5ms </li></ul></ul>
  11. 11. 数据库存储方案 <ul><li>在线日志 </li></ul><ul><ul><li>带缓存的磁盘存储或 SSD </li></ul></ul><ul><ul><li>裸设备或 ASM ,不建议文件系统 </li></ul></ul><ul><ul><li>独立存储,与数据文件分离 </li></ul></ul><ul><li>数据文件 </li></ul><ul><ul><li>SSD 适用于随机读写,磁盘适用于顺序读写 </li></ul></ul><ul><ul><li>SSD 存放活跃数据,磁盘存放历史数据 </li></ul></ul><ul><ul><li>SSD 作为磁盘的缓存, Flashcache </li></ul></ul><ul><li>归档日志 </li></ul><ul><ul><li>磁盘,独立存储 </li></ul></ul><ul><ul><li>ASM 或文件系统 </li></ul></ul>
  12. 12. <ul><li>Oracle 系统架构最佳实践 </li></ul>
  13. 13. Oracle 系统架构 <ul><li>Active/Standby Cluster </li></ul><ul><li>Oracle RAC </li></ul><ul><li>Oracle DataGuard </li></ul><ul><li>Oracle ASM </li></ul>
  14. 14. Active/Standby Cluster <ul><li>传统主备模式 </li></ul><ul><li>基于共享存储 </li></ul><ul><li>典型产品 </li></ul><ul><ul><li>IBM hacmp </li></ul></ul><ul><ul><li>HP Serviceguard </li></ul></ul><ul><ul><li>Veritas Cluster Service </li></ul></ul><ul><li>优劣分析: </li></ul><ul><ul><li>简单可靠 </li></ul></ul><ul><ul><li>资源浪费 </li></ul></ul><ul><ul><li>无法扩展 </li></ul></ul>
  15. 15. Oracle RAC <ul><li>优势 </li></ul><ul><ul><li>高可用 </li></ul></ul><ul><ul><li>水平扩展 </li></ul></ul><ul><li>劣势 </li></ul><ul><ul><li>共享存储的扩展能力 </li></ul></ul><ul><ul><li>节点间通信成本高 </li></ul></ul><ul><li>最佳实践 </li></ul><ul><ul><li>低延迟的互联网络 </li></ul></ul><ul><ul><li>减少节点间通信 </li></ul></ul><ul><ul><li>OLTP :高可用 </li></ul></ul><ul><ul><li>DSS :扩展性 </li></ul></ul>
  16. 16. Oracle DataGuard <ul><li>Primary 服务, Standby 只读 (11g) </li></ul><ul><li>异步传送方式,可能导致数据丢失 </li></ul><ul><li>失败切换需要人工干预 </li></ul><ul><li>廉价的容灾方案 </li></ul>
  17. 17. Oracle ASM <ul><li>整合存储设备,解决存储扩展的问题 </li></ul><ul><li>自动负载均衡,解决 IO 热点的问题 </li></ul><ul><li>支持数据冗余,软件 RAID 10 </li></ul><ul><li>Failure group 防止单节点损坏 </li></ul><ul><li>所有的数据都可以放在 ASM 中 </li></ul><ul><li>ASM 替换裸设备和文件系统 </li></ul><ul><li>ASM 是免费的 </li></ul>
  18. 18. Oracle ASM
  19. 19. <ul><li>软硬件结合的解决方案 </li></ul>
  20. 20. Oracle 的软硬件一体机 <ul><li>Exadata </li></ul><ul><ul><li>硬件: Compute node , Storage Cell , SSD , Infiniband </li></ul></ul><ul><ul><li>软件: SmartScan , HCC , Flashcache , StorageIndex </li></ul></ul><ul><ul><li>特点: Offloading , Extreme performance , OLTP & DSS </li></ul></ul><ul><ul><li>架构: Balance ,介于 shared-storage 和 shared-nothing 之间 </li></ul></ul><ul><li>OUDA </li></ul><ul><ul><li>硬件: 2 server node , 24*SAS , 4*SSD , 1GbE/10GbE </li></ul></ul><ul><ul><li>软件: Oracle 11gR2 RAC+Oracle Linux </li></ul></ul><ul><ul><li>特点:廉价的软硬件一体机,易配置,易管理,高可用 </li></ul></ul><ul><ul><li>性能: 2*X5675 , 96G mem , SSD 存储 redo , SAS 存储数据 </li></ul></ul>
  21. 21. HA 软件 -SmartCluster <ul><li>自主开发,替代商业软件 </li></ul><ul><li>数据库探测,共享资源管理 </li></ul><ul><ul><li>第三方探测,防止信息孤岛 </li></ul></ul><ul><ul><li>IP 资源,存储资源 (ASM DiskGroup) 漂移 </li></ul></ul><ul><ul><li>标准 IPMI 接口控制服务器 </li></ul></ul><ul><li>适用于 PC 服务器和 Linux 平台 </li></ul><ul><li>自定义切换方式 </li></ul><ul><ul><li>Datagurad failover/activate </li></ul></ul><ul><ul><li>Shared-storage switchover </li></ul></ul>
  22. 22. SmartCluster 架构
  23. 23. 案例 1- 单机混合存储方案 <ul><li>硬件方案 </li></ul><ul><ul><li>服务器混插 SSD 和 SAS 磁盘 </li></ul></ul><ul><ul><li>无硬件 RAID , ASM mirror </li></ul></ul><ul><li>HA 方案 </li></ul><ul><ul><li>SmartCluster + DataGurad failover </li></ul></ul><ul><ul><li>同步传递日志,保证数据不丢失 </li></ul></ul><ul><li>存储方案 </li></ul><ul><ul><li>SLC SSD 存放日志文件 </li></ul></ul><ul><ul><li>MLC SSD 存放数据文件 </li></ul></ul><ul><ul><li>SAS 磁盘存放历史数据和归档文件 </li></ul></ul>
  24. 24. 案例 2- 共享 redo 的 HA 方案 <ul><li>硬件方案 </li></ul><ul><ul><li>服务器内置 Fusionio 和 SAS 磁盘 </li></ul></ul><ul><ul><li>主备服务器连接一套共享存储 </li></ul></ul><ul><li>HA 方案 </li></ul><ul><ul><li>SmartCluster + DataGurad </li></ul></ul><ul><ul><li>利用共享 redo ,实现完美切换 </li></ul></ul><ul><li>存储方案 </li></ul><ul><ul><li>本地 Fusionio 存放数据文件 </li></ul></ul><ul><ul><li>本地 SAS 磁盘存放归档文件 </li></ul></ul><ul><ul><li>共享存储存放控制文件,参数文件和日志文件 </li></ul></ul>
  25. 25. 案例 2- 系统架构图
  26. 26. 案例 3-Oracle Flashcache <ul><li>Oracle flashcache </li></ul><ul><ul><li>11g R2 + Oracle linux </li></ul></ul><ul><ul><li>Read cache , WT 模式 </li></ul></ul><ul><ul><li>安全,需要预热 </li></ul></ul><ul><li>其他实现方式 </li></ul><ul><ul><li>OS 层: Linux Flashcache </li></ul></ul><ul><ul><li>RAID 层: LSI Cachecade </li></ul></ul><ul><ul><li>存储层:自动分层技术 </li></ul></ul>
  27. 27. 案例 4 :高性能数据库一体机 <ul><li>系统整体架构 </li></ul><ul><ul><li>PC+SSD+Infiniband 提供高性能 </li></ul></ul><ul><ul><li>ASM 提供数据存储和数据冗余 </li></ul></ul><ul><ul><li>SmartCluster 提供数据库高可用 </li></ul></ul><ul><ul><li>没有 Exadata 的软件特性 </li></ul></ul><ul><li>系统设计目标 </li></ul><ul><ul><li>为 OLTP 数据库设计 </li></ul></ul><ul><ul><li>提供极限 IOPS 性能 </li></ul></ul><ul><ul><li>开放系统替代封闭系统 </li></ul></ul><ul><ul><li>高可用,高性能,可扩展 </li></ul></ul>
  28. 28. Q & A <ul><li>关于我 </li></ul><ul><ul><li>Database Architect @ Alibaba </li></ul></ul><ul><ul><li>Email : [email_address] </li></ul></ul><ul><ul><li>新浪微博: hellodba </li></ul></ul><ul><ul><li>Twitter : hellodba </li></ul></ul><ul><ul><li>技术博客: HelloDB.net </li></ul></ul><ul><ul><li>提供 Oracle , MySQL 数据库咨询服务 </li></ul></ul>

×