Exadata 智能闪存缓存

Exadata 智能闪存缓存

Sun Oracle Database Machine 为包括联机事务处理 (OLTP)、数据仓储 (DW) 及混合数据库负载的整合等在内的所有数据库应用程序带来了极限性能。帮助实现该性能的关键技术之一即为 Exadata 智能闪存缓存及驱动它的智能 Oracle Exadata Storage ServerSoftware。Exadata 智能闪存缓存智能地缓存来自 Oracle 数据库的数据,以非常快速的闪存操作取代对磁盘的慢速机械 I/O 操作。Exadata 智能闪存缓存是整机架型 SunOracle Database Machine 的基础技术,每秒随机 I/O 操作处理数 (IOPS) 最高达 100万,Exadata 存储产品内的数据扫描速度最高为 50 GB/秒。

Oracle 数据库 11g:第一个闪存优化的数据库系统

Oracle 的 Exadata 智能闪存缓存特性是独一无二的。它并非磁盘替换 — 而是由软件智能决定如何及何时使用闪存存储,以及如何最有效地将闪存纳入数据库中作为协调的数据缓存战略的一部分。扩展 Exadata 存储带来的好处是,始终能为应用程序提供闪存性能。而传统存储阵列有许多内部瓶颈和网络瓶颈,阻碍了实现闪存的优势。

虽然可以向存储阵列添加闪存,但这并不能为应用程序提高多少性能。Sun Oracle Database Machine 借助 Exadata V2 的闪存提供 50 GB/秒的带宽。这大大高于其他解决方案,而且还是未压缩的数据。此带宽与 Exadata 和 Oracle 数据库压缩及卸载处理相结合,其有效带宽又高出许多。传统存储阵列无法满足磁盘带宽的需要。这曾经是主要问题,已经通过 Exadata V1 解决。大多数存储阵列的瓶颈在于,其带宽只有很小的几个 GB/秒。向这些系统添加闪存不会改善其带宽,只会加重瓶颈的严重程度。传统存储阵列无法让数据仓库享受闪存所带来的好处。

同样,OLTP 系统的批处理和报表也无法享受闪存所带来的好处。Exadata 智能闪存缓存与 Sun Oracle Database Machine3传统存储阵列在处理简单磁盘发出的随机 IOPS 方面曾经比较有优势。因为过去磁盘数较少,所以能够保障随机 IOPS。在系统中加入闪存(速度比常规磁盘快几个数量级)后,传统磁盘阵列再次成为瓶颈。例如,高端存储子系统仅能运行大约 12 万个 IOPS。而Oracle 能在数据库级别实现 100 万个 IOPS。这意味着,闪存中有 100 万个 IOPS 通过存储服务器跨网络到达数据库服务器。存储阵列已成为瓶颈,而增加闪存让瓶颈问题更严重。

Oracle 在 Exadata V2 中使用的是闪存 PCIe 卡 — 而非闪存磁盘。尽管无需任何更改就可以轻松地向现有存储子系统中添加闪存磁盘,但这并不能实现技术潜能。磁盘控制器和管理器从来也不是设计用于实现闪存磁盘性能的。Oracle 的解决方案中使用了闪存PCIe 卡,不会出现低速磁盘控制器限制闪存性能的问题。Exadata 存储产品的每个闪存卡提供将近 1GB/秒的吞吐量,这样每个 Exadata Storage Server 中的 4 个闪存卡线性地扩展了性能。传统存储阵列不允许向系统中添加闪存卡。需要对其体系结构进行重新设计,才能避免磁盘控制器限制。

Oracle 在 Sun Oracle Exadata Storage Server 中直接实现了智能闪存缓存。Exadata 智能闪存缓存能够将需要经常访问的数据保存在非常快速的闪存存储空间,而将大部分数据保存在非常经济高效的磁盘存储空间。该工作自动完成,无需用户进行任何操作。这就是最终的信息生命周期管理 (ILM) 解决方案。Oracle 闪存缓存之所以智能,是因为它知道何时不要缓存那些无法重用或不适于缓存的数据。Oracle 还允许用户在数据库表、索引和段级提供指令,确保将特定应用程序数据保存在闪存中。可使用一条简单命令将表移入或移出闪存,再也不必像在传统存储中对闪存磁盘那样将表移动至不同的表空间、文件或LUN。

Oracle 闪存技术已紧密集成到我们的端到端体系结构中。该技术并非是一个需要用户手动管理和优化的拼接型加速器。在 Exadata V2 中,Oracle 引入了一个被称作“Exadata混合列压缩”的新一代压缩技术,从而实现了比以往更显著的压缩效果。这带来了大量好处:显著降低大量数据的存储成本、提高数据扫描速度。该技术还可与我们新的闪存技术协同工作。由于数据压缩能力提高至原来的十倍或更高,Oracle 可将原来十倍以上的数据量放入闪存中。这意味着,对于相同的闪存容量,我们的闪存要比其他同类产品具备更高的效率。