zoukankan      html  css  js  c++  java
  • 2、Oracle Logminer性能测试

    Oracle Logminer性能测试

    1 测试介绍

    1.1 测试目的

    通过模拟不同环境下LogMiner解析联机/归档日志文件运行情况,通过测试所获取的数据分析,通过对以下两点的验证来确定通过LogMiner技术技术可行性:

    1、在日志文件不同大小、不同数据压力情况下对数据库服务器内存、CPU的影响;

    2、并通过查询LogMiner的动态表和实际物理表中数据数目是否一致,验证其准确性。

    1.2 测试环境

    用途及说明

    硬件配置

    软件配置

    其它说明

    数据库服务器

    型号:T420i

    处理器:Intel(R)core(TM) i5 CPU M430

    主频:2.2G

    内存:2G

    硬盘:300G

    操作系统:WindowXP

    数据库及版本:Oracle10.2g

    IP地址:10.88.54.83

     

    测试机

    型号:T420i

    处理器:Intel(R)core(TM) i5 CPU M430

    主频:2.2GHz

    内存:1.8 GB

    显示器:1280*800 宽屏

    操作系统:windows xp

    浏览器及版本:ie8

     

    1.3 测试方案

    1.3.1 性能影响(针对目标一)

    为了模拟实际运行环境,加入了Logminer运行背景环境,分别测试数据库在无操作、300个插入/秒操作、500个插入/秒操作情况下运行情况,并且对比日志文件50M、100M大小下运行情况

    1.3.2 准确性(针对目标二)

    1、数据类型

    序号

    数据类型

    是否支持

    问题处理

    1

    BINARY_DOUBLE

    8.1及以上

     

    2

    BINARY_FLOAT

    8.1及以上

     

    3

    CHAR

    8.1及以上

     

    4

    DATE

    8.1及以上

    需设置时间格式,否则只能同步日期

    alter system set nls_date_format='yyyy-MM-dd HH24:mi:ss' scope=spfile;

    5

    INTERVAL DAY

    8.1及以上

     

    6

    INTERVAL YEAR

    8.1及以上

     

    7

    NUMBER

    8.1及以上

     

    8

    NVARCHAR2

    8.1及以上

     

    9

    RAW

    8.1及以上

     

    10

    TIMESTAMP

    8.1及以上

     

    11

    TIMESTAMP

    WITH LOCAL

    TIME ZONE

    8.1及以上

     

    12

    VARCHAR2

    8.1及以上

     

    13

    LONG

    9.2及以上

     

    14

    CLOB

    10.1及以上

    需要设置如下:

    ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS;

    插入时分为两条语句,另外插入二进制数据未进行测试

    15

    BLOB

    10.0及以上

    2、DDL语句测试(未测试完毕)

    序号

    类型

    是否支持

    1

    创建表(Create table)

    支持

    2

    删除表(Drop table)

    支持,出现两个语句,首先修改表名为临时表名,然后删除该临时表

    监控该类型需要进行合并处理

    3

    创建作业(Create job)

    不支持

    4

    创建序列(Create sequence)

    支持

    5

    创建存储过程(Create pocedure)

    支持

    6

    增加字段(alter table TABLE add column)

    支持

    7

    删除字段(alter table emp drop column)

    支持

    8

    修改字段(alter table emp modify column)

    支持

    9

    修改列名(alter table rename column)

    支持

    10

    修改表名(rename emp to TABLE)

    支持

    11

    清除表数据(truncate table TABLE)

    支持

    12

    删除表(drop table TABLE)

    支持

    13

    恢复被删除的表(Flashback table TABLE to before drop)

    支持

    14

    NOT NULL约束(alter table TABLE modify COLUMN not null)

    支持

    15

    UNIQUE约束

    支持

    16

    PRIMARY KEY约束

    支持

    17

    FOREIGN KEY 约束

    支持

    18

    CKECK 约束

    支持

    19

    禁用/激活约束

    支持

    20

    删除约束

    支持

    21

    创建不唯一索引

    支持

    22

    创建唯一索引

    支持

    23

    创建位图索引

    支持

    24

    创建反序索引

    支持

    25

    创建函数索引

    支持

    26

    修改索引

    支持

    27

    合并索引

    支持

    28

    重建索引

    支持

    29

    删除索引

    支持

    30

    创建视图(CREATE VIEW)

    支持

    31

    修改视图(CREATE OR REPLACE VIEW)

    支持

    32

    删除视图(DROP VIEW)

    支持

    33

    创建序列(CREATE SEQUENCE)

    支持

    34

    修改序列(ALTER SEQUENCE)

    支持

    35

    删除序列(DROP SEQUENCE)

    支持

    3、其他问题测试

    序号

    问题

    现象及处理方式

    1

    主子表插入数据测试

    能够正常插入及同步

    2

    事务提交(commit、rollback)

    能够看到提交和未提交的内容,考虑在产品设计中加入DBMS_LOGMNR.COMMITTED_DATA_ONLY

    参数,该参数只读取已经提交事务

    3

    批量更新时,影响多条数据,在联机日志中每一条更新数据对应生成一条语句

    不影响,可同步获取再执行

    4

    更新和删除语句中带rowid

    加入去除rowid参数dbms_logmnr.NO_ROWID_IN_STMT

    5

       

    2 测试结论

    2.1 测试初步结论

    1. 从性能影响测试中可以看出:

    a) logminer加载分析过程随机器根据负载不同在6~21秒完成;

    b) 加载分析过程并不随日志文件个数增加在时间、CPU、内存有较大变化;

    c) 加载分析过程中受分析日志文件个数最大是内存,其次是CPU,耗时应影响较小;

    2. 从准确性测试来看

    a) 通过设置基本上能够获取DML语句(其中LOB字段还需要进行测试);

    b) 从现有情况来看,DDL支持并不充分,需要进一步测试;

    附测试数据:

     

    联机日志大小

    读取文件个数

    运行作业数目

    插入数据量

    生成字典文件

    加载处理

    分析处理

    log_contents
    数据量

    大小(M)

    时间(秒)

    耗时(秒)

    CPU(%)

    内存(M)

    耗时(秒)

    CPU(%)

    内存(M)

    方案一

    50M

    1个

    0个

    0笔/秒

    47.5

    12.7

    1

    1

    309

    5.5

    25

    438

    600

    3个

    0个

    0笔/秒

    1

    1

    309

    5.7

    25

    444

    222,236

    5个

    0个

    0笔/秒

    1

    1

    326

    5.6

    25

    445

    492,606

    10个

    0个

    0笔/秒

    1

    1

    326

    5.6

    25

    445

    1,149,284

    方案二

    50M

    1个

    500个

    估计300笔/秒

    47.5

    20

    1

    26

    391

    6.7

    35

    530

    111,328

    3个

    500个

    估计300笔/秒

    1

    21

    473

    6.4

    37

    619

    372,389

    5个

    500个

    估计300笔/秒

    1

    25

    534

    6.8

    44

    692

    622,390

    10个

    500个

    估计300笔/秒

    1

    30

    624

    6.7

    39

    780

    1,254,748

    方案三

    50M(未运行CPU80%,680M)

    1个

    1000个

    估计500笔/秒

    47.5

    54.7

    3.5

    71

    688

    15

    80

    806

    35,892

    3个

    1000个

    估计500笔/秒

    1.5

    41

    688

    14.4

    78

    777

    384,743

    5个

    1000个

    估计500笔/秒

    1

    68

    687

     

    75

    805

    652,148

    10个

    1000个

    估计500笔/秒

    10

    80

    689

    13.2

    79

    806

    1,295,158

    方案四

    50M(未运行CPU80%,667M)

    1个

    2000个

    估计1000笔/秒

    47.5

    73.7

    5.5

    84

    691

    14.6

    78

    808

    133,844

    3个

    2000个

    估计1000笔/秒

    11.4

    70

    691

    12

    75

    809

    390,029

    5个

    2000个

    估计1000笔/秒

    5.5

    76

    690

    13.6

    76

    806

    668,013

    10个

    2000个

    估计1000笔/秒

    6.1

    40

    690

    15.4

    88

    809

    1,335,587

    方案五

    100M(未运行CPU25%,464M)

    1个

    500个

    估计300笔/秒

    23.8

    8.7

    0.8

    26

    484

    4.1

    30

    573

    268,715

    3个

    500个

    估计300笔/秒

    0.9

    25

    534

    3.2

    36

    622

    768,989

    5个

    500个

    估计300笔/秒

    0.9

    27

    581

    3.2

    35

    662

    1,324,447

    10个

    500个

    估计300笔/秒

    1.1

    29

    690

    5.2

    35

    763

    2,619,322

  • 相关阅读:
    Hive_元数据配置到MySQL
    第一篇
    mysql查询结果添加序列号
    java中正则表达式
    java位运算
    正数负数原码,反码,补码
    各进制间相互转换
    linux下默认安装jdk路径查找
    localhost:8080/manager/status无法访问403 Access Denied
    Idea官网指南
  • 原文地址:https://www.cnblogs.com/shishanyuan/p/3142674.html
Copyright © 2011-2022 走看看