oracle 12cR2 smart flash cache实测
最近一直在处理新系统的性能优化问题,这两天特地测试了下oracle 11gR2开始引入的smart flash cache。
其介绍参考MOS文档,How To Size the Database Smart Flash Cache (文档 ID 1317950.1)
The Database Smart Flash Cache is a new feature in Oracle Database 11g Release 2 (11.2). The Database Smart Flash Cache is a transparent extension of the database buffer cache using solid state device (SSD) technology. The SSD acts as a Level 2 cache to the (Level 1) SGA.Database Smart Flash Cache can greatly improve the performance of Oracle databases by reducing the amount of disk I/O at a much lower cost than adding an equivalent amount of RAM.Your database is running on the Solaris or Oracle Linux operating systems. The flash cache is supported on these operating systems only.SQL> startup;ORA-00439: feature not enabled: Server Flash Cache这明显就是Oracle设置的障碍。
[oracle@oel-12c ~]$ sqlplus "/as sysdba" SQL*Plus: Release 12.2.0.1.0 Production on 星期五 9月 7 20:13:00 2018 Copyright (c) 1982, 2016, Oracle. All rights reserved. 连接到:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production SQL> create tablespace my_ts_2 datafile '/u01/app/oracle/oradata/nfs_to_14/my_ts02.dbf' size 1g autoextend on next 10m maxsize unlimited; 表空间已创建。 SQL> create table my_big_table as select * from dba_tables; 表已创建。 SQL> alter table my_big_table move tablespace my_ts_2; --移动到NFS存储上 表已更改。 SQL> insert into my_big_table select * from my_big_table; 已创建 2106 行。 SQL> / 已创建 4212 行。 SQL> / 已创建 8424 行。 SQL> / 已创建 16848 行。 SQL> / 已创建 33696 行。 SQL> / 已创建 67392 行。 SQL> commit; 提交完成。 SQL> / 提交完成。 SQL> insert into my_big_table select * from my_big_table; 已创建 134784 行。 SQL> / 已创建 269568 行。 SQL> commit; 提交完成。 SQL> insert into my_big_table select * from my_big_table; 已创建 539136 行。 SQL> commit;
使用智能闪存:
SQL> set autotrace on;
SQL> select count(1) from my_big_table; COUNT(1)
----------
1078272 已用时间: 00: 00: 33.06 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
124 recursive calls
0 db block gets
47210 consistent gets
47193 physical reads
132 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
3 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 03.00 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47006 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 04.54 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47020 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 02.24
不使用智能闪存:
SQL> alter system set db_flash_cache_size=0 ; 系统已更改。 已用时间: 00: 00: 01.01
SQL> select count(1) from my_big_table; COUNT(1)
----------
1078272 已用时间: 00: 00: 30.75 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47020 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 32.20 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47020 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 17.56 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47019 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 15.11 执行计划
----------------------------------------------------------
Plan hash value: 1307946652 ---------------------------------------------------------------------------
| Id | Operation | Name | Rows | Cost (%CPU)| Time |
---------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1 | 12973 (1)| 00:00:01 |
| 1 | SORT AGGREGATE | | 1 | | |
| 2 | TABLE ACCESS FULL| MY_BIG_TABLE | 969K| 12973 (1)| 00:00:01 |
--------------------------------------------------------------------------- Note
-----
- dynamic statistics used: dynamic sampling (level=2) 统计信息
----------------------------------------------------------
0 recursive calls
0 db block gets
47094 consistent gets
47019 physical reads
0 redo size
546 bytes sent via SQL*Net to client
607 bytes received via SQL*Net from client
2 SQL*Net roundtrips to/from client
0 sorts (memory)
0 sorts (disk)
1 rows processed SQL> / COUNT(1)
----------
1078272 已用时间: 00: 00: 15.69
如上所述,性能相差了6-7倍。可见智能闪存效果还是不错的。
不过需要注意的是,如果95%+的常用数据都已经在iops足够高的磁盘上了比如SSD,这个时候又拿一部分SSD作为智能缓存,性能反而会下降比直接访问磁盘高达1倍。
在oracle 11g中,闪存文件只能配置1个,在12c中没有这个限制了。
oracle 12cR2 smart flash cache实测的更多相关文章
- Exadata Smart Flash Logging工作原理
Exadata在V2时代,ORACLE为了进一步拓宽客户人群,除了宣称Exadata适用OLAP系统,同时也适用于OLTP系统,那怎么才能满足OLTP系统的高IOPS要求呢?于是Exadata引入了闪 ...
- [转帖]Oracle 12cR2使用经验
大规模升级来临,谈谈Oracle 12cR2使用经验 随着2019年2月13日,Oracle 19c (Oracle 12.2.0.3) for Exadata 版本发布,Oracle 12cR2体系 ...
- oracle 11g 之 result cache
oracle 11g 之 result cache 今天是2013-10-12,打算最近时间研究一下shared pool的相关原理以及awr报告分析.今天学习一下在oracle 11g shared ...
- Linux平台 Oracle 12cR2 RAC安装Part1:准备工作
Linux平台 Oracle 12cR2 RAC安装Part1:准备工作 一.实施前期准备工作 1.1 服务器安装操作系统 1.2 Oracle安装介质 1.3 共享存储规划 1.4 网络规范分配 二 ...
- Linux平台 Oracle 12cR2 RAC安装Part2:GI配置
Linux平台 Oracle 12cR2 RAC安装Part2:GI配置 三.GI(Grid Infrastructure)安装 3.1 解压GI的安装包 3.2 安装配置Xmanager软件 3.3 ...
- Linux平台 Oracle 12cR2 RAC安装Part3:DB安装
Linux平台 Oracle 12cR2 RAC安装Part3:DB安装 四.DB(Database)安装 4.1 解压DB的安装包 4.2 DB软件安装 4.3 ASMCA创建磁盘组 4.4 DBC ...
- ORACLE性能优化- Buffer cache 的调整与优化
Buffer Cache是SGA的重要组成部分,主要用于缓存数据块,其大小也直接影响系统的性能.当Buffer Cache过小的时候,将会造成更多的 free buffer waits事件. 下面将具 ...
- Oracle 12CR2 中alert.log出现大量的 WARNING: too many parse errors 告警
Oracle 12CR2 中alert.log出现大量的 WARNING: too many parse errors 告警 日志如下: 2018-06-24T17:16:21.024586+08 ...
- Oracle数据库大量library cache: mutex X及latch: shared pool问题排查一例
业务系统数据库夯住,数据库内大量的library cache: mutex X及latch: shared pool等待,alert日志信息如下 Tue Sep :: WARNING: inbound ...
随机推荐
- Ubuntu install mysql database
简要说下ubuntu Linux下安装MySql数据库 一. 安装 # apt-get install mysql-server# apt-get install mysql-client 二.启动 ...
- 还是Go 为了伟大的未来
今天,还是想讲讲Go 我觉得还没讲够,哈哈哈 其实,是想把框架再清晰些,因为上一篇框架没能引入goroutine(协程),感觉比较遗憾 下边,我就用上goroutine,但这里的协程仅是为了演示,没有 ...
- IDEA2017及DataGrip2017注册码
访问http://idea.lanyus.com/,网页中有相关说明,最简单的方式是将“0.0.0.0 account.jetbrains.com”添加到hosts文件中,然后点击页面底部的“获得注册 ...
- C++ 使用openssl库实现 DES 加密——CBC模式 && RSA加密——公加私解——私加公解
之前工作上需要用C++把软件生成的用户序列号用des加密cbc的模式,加密后为二进制,转化为十六进制,然后提供给java写的授权码管理平台. java平台会根据用户序列号,生成一个授权码,授权码是用r ...
- hiho #1014 : Trie树(模板)
Trie树 [题目链接]Trie树 &题意: 输入 输入的第一行为一个正整数n,表示词典的大小,其后n行,每一行一个单词(不保证是英文单词,也有可能是火星文单词哦),单词由不超过10个的小写英 ...
- HDU 3117 Fibonacci Numbers(矩阵)
Fibonacci Numbers [题目链接]Fibonacci Numbers [题目类型]矩阵 &题解: 后4位是矩阵快速幂求,前4位是用log加Fibonacci通项公式求,详见上一篇 ...
- 014-Session服务器状态保持
开始并为Session赋值:Session[“uName”]=“CNYaoMing”;取值:string strName = Session[“uName”].ToString();销毁(取消/退出) ...
- jQuery-淡入淡出效果-fadeIn()淡进 fadeOut()淡出 fadeToggle();
动画高级函数:基于底层函数又进行了封装两大块:简化版的动画函数和万能动画函数简化版动画函数显示/隐藏$().show; $(...).hide(); 强调:无参数的show()/hide()使用的 ...
- c3p0:Connections could not be acquired from the underlying database!解决方案
在利用ssh框架做网站的时候遇到了一个比较棘手的问题,一直连接不上数据库,问题描述如下: 各种百度然后说的最多的解决方案是: 1,驱动配置有误:2,数据库连接地址有误:3,密码或帐号有误: 4,数据库 ...
- .net中的集合
集合命令空间: 命令空间:类型逻辑上的分类 System.Collections 非泛型集合 System.Collections.Generic 泛型集合 集合内部存数据,实际上都是存到了数组里. ...