13
版权所有 计算机数据审计 吴笑凡 博士 20102 计算机数据审计课程框架 第二部分 采集转换篇 1、审计数据采集策略 2、审计数据清理转换策略 3、非数据库数据采集 4、数据库数据采集 5、审计数据清理转换 6、审计数据验证 2 20103 一、数据选择策略 二、数据采集策略 三、SAP ERP系统采集策略 审计数据采集策略 20104 数据选择策略 一、选择的数据应满足审计方案的要求。 二、数据选择应建立在对被审计单位信息系 统及其业务流程充分了解的基础上。 三、数据采集不应局限于特定被审计单位, 利用外部数据进行关联分析是一种有效的手 段。 20105 数据采集策略 一、数据接口法 通用接口 专用接口 二、直接拷贝法 非数据库数据(TXT文件、XML文件和Excel文件等)或 者是桌面数据库数据(Access数据库文件、DBF数据库 文件等) 三、备份恢复法 财务账套备份文件 业务数据库备份文件 20106 财务账套备份文件

计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

  • Upload
    others

  • View
    26

  • Download
    0

Embed Size (px)

Citation preview

Page 1: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

版权所有

计算机数据审计

吴笑凡 博士

2010年 22

计算机数据审计课程框架

第二部分 采集转换篇

1、审计数据采集策略

2、审计数据清理转换策略

3、非数据库数据采集

4、数据库数据采集

5、审计数据清理转换

6、审计数据验证

2

2010年 33

一、数据选择策略

二、数据采集策略

三、SAP ERP系统采集策略

审计数据采集策略

2010年 44

数据选择策略

一、选择的数据应满足审计方案的要求。

二、数据选择应建立在对被审计单位信息系统及其业务流程充分了解的基础上。

三、数据采集不应局限于特定被审计单位,利用外部数据进行关联分析是一种有效的手段。

2010年 55

数据采集策略

一、数据接口法

通用接口

专用接口

二、直接拷贝法

非数据库数据(TXT文件、XML文件和Excel文件等)或者是桌面数据库数据(Access数据库文件、DBF数据库文件等)

三、备份恢复法

财务账套备份文件

业务数据库备份文件

2010年 66

财务账套备份文件

Page 2: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 77

业务数据库备份文件

2010年 88

SAP ERP系统采集策略

一、数据采集范围的确定模块化的结构

数以万计的表

数以百万计的字段

二、后台数据库表分类透明表(Transparent Table)

簇表(Cluster Table)

池表(Pooled Table)

2010年 99

SAP ERP系统采集策略

三、利用系统功能前台采集底层数据直接查询功能• SE11(数据字典)

• SE16(数据浏览)

报表开发工具Query

四、直接采集物理数据数据库备份文件

数据交换文件

使用数据导入/导出工具

2010年 1010

一、审计数据清理策略

二、审计数据转换策略

审计数据清理转换策略

2010年 1111

审计数据清理策略

一、审计数据清理的步骤记录排序

识别重复记录

合并重复记录

二、识别重复记录的具体策略在关系表中抽取一个或多个字段构成关键字;

根据关键字对表中的记录进行排序,然后寻找关系表中各条记录在一个长度固定的子集队列中的匹配记录。

采用类似LRU(最近最少使用)算法来控制队列长度。

通过匹配操作寻找需要合并的子集,计算其传递闭包,然后加以合并。

最后得到若干个近似重复记录集。2010年 1212

审计数据转换策略

一、审计数据转换日志

转换错误日志

转换变化日志

Page 3: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 1313

转换错误日志

一、模式层冲突命名冲突

主键冲突

结构约束冲突

表达格式冲突

二、实例层冲突数据缺失

不正确的数据

数据不一致

2010年 1414

转换变化日志

一、转换流程日志

面向审计数据转换流程步骤的

二、转换数据日志

面向审计数据变化情况的

2010年 1515

一、文本数据采集

二、Excel数据采集

非数据库数据采集

2010年 1616

文本数据采集

一、优点灵活方便数据量大小基本不受限制

二、缺点占用较大的存储空间较多的传输时间需要进行类型或字段名称的重定义

三、分类分隔符形式固定宽度

2010年 1717

分隔符形式的文本文件

一、以回车换行符号作为记录间的分隔

二、以分隔符作为字段之间的分隔

三、第一行可以表示字段名

四、可以有文本识别符号 “” ‘’

2010年 1818

分隔符形式的文本文件

行号,代码,名称,利率,开始日期500,100, 90年五年期财政债券利率,8.31,01/10/1997500,200,开发银行债券利率(12.5%),10.41,01/10/1997500,201,开发银行债券利率(14%),11.64,01/10/1997500,300,总行金融债券利率(11.5%),9.57,01/10/1997500,301,总行金融债券利率(11.25%),9.375,01/10/1997500,302,97年政策性金融债券利率(8.8%),7.32,03/19/1997500,1100,单位活期存款,1.2,07/01/1998500,1101,单位活期存款(协定),1.38,12/07/1998500,1200,单位活期存款,6.3,10/23/1997500,1201,同业存款,5.85,10/23/1997

Page 4: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 1919

分隔符形式的文本文件

2010年 2020

固定宽度的文本文件

一、以回车换行符号作为记录间的分隔

二、以起始位置和宽度来标识字段

三、第一行一般不表示字段名

四、一般没有文本识别符号

2010年 2121

固定宽度的文本文件

2010年 2222

Excel数据采集

一、Excel特点二、与关系数据库的对应关系

三、注意事项

四、示例

2010年 2323

Excel数据采集

一、Excel特点文件格式

• xls & xlsx

最大行和列• xls:65536,256• Xlsx:65536*16=1048576,256*64=16384

2010年 2424

Excel数据采集

二、与关系数据库的对应关系

Page 5: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 2525

Excel数据采集

三、注意事项

关系数据库的规范化问题。• 应该保证每一列只有一个标题,且这个标题是最高层次的标题。

数据类型的一致性问题。• Excel工作表中每一个单元格都可以有不同的数据类型,因此每一列中的数据类型可能会不一致。而关系数据库要求表中每个字段的类型是固定的。如果出现这种情况,需要首先统一Excel工作表中每一列的数据类型。否则将不能访问数据。

数据的独占性问题。

• 通常数据库管理系统要求独享Excel工作表的控制权限。

2010年 2626

Excel数据采集

四、示例

2010年 2727

一、Access数据采集

二、DBF数据采集

三、SQL Server数据采集

四、Oracle数据采集

五、DB2数据采集

数据库数据采集

2010年 2828

Access数据采集

一、Access数据库特点

二、Access数据采集示例

三、Access使用注意事项

2010年 2929

Access数据库特点

属性 最大值 属性 最大值

数据库文件大小 2 GB,减去系统对象所需的空间 查询中表个数 32

表名的字符个数 64 查询中联接个数 16

表中字段个数 255 记录集中字段个数 255

字段名字符个数 64 记录集大小 1 GB

表的大小 2 GB,减去系统对象所需的空间 表中的索引个数 32

Access 2007的主要数据库规格

2010年 3030

Access数据采集示例

Page 6: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 3131

Access数据采集示例

2010年 3232

Access数据采集示例

2010年 3333

Access使用注意事项

一、兼容性好,常用的中间格式文件

二、能有效管理几十万条数据

三、链接表的使用

2010年 3434

一、DBF数据文件特点

二、dbase5兼容数据库表的采集

三、VFP兼容数据库表的采集

DBF数据采集

2010年 35

dbase5兼容数据库表的采集

35 2010年 3636

VFP兼容数据库表的采集

Page 7: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 3737

一、采集方法

二、容错技术

SQL Server数据采集

2010年 3838

一、数据库表

SQL Server采集方法

2010年 3939

二、数据库备份文件

SQL Server采集方法

2010年 4040

三、数据库文件

SQL Server采集方法

2010年 4141

SQL Server容错技术

2010年 4242

SQL Server容错技术

Page 8: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 4343

SQL Server容错技术

2010年 4444

SQL Server容错技术

2010年 4545

SQL Server容错技术

2010年 4646

SQL Server容错技术

2010年 4747

一、备份文件恢复法

二、数据接口采集法

Oracle数据采集

2010年 4848

一、命令行

exp sysman/sysmanrows=y indexes=n compress=n buffer=65536 owner=system file=e:\export001_yyyymmdd.dmp log=e:\export001_yyyymmdd.log

二、TOAD软件

Oracle备份文件恢复法

Page 9: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 4949

Oracle数据接口采集法

2010年 5050

DB2数据采集

2010年 5151

DB2数据采集

2010年 5252

一、审计数据清理的原因

二、审计数据清理的主要工作

三、审计数据清理的方法

四、审计数据转换的原因

五、审计数据转换的基本类型

六、审计数据转换的方法

审计数据清理转换

2010年 5353

审计数据清理的原因

值缺失限制了审计人员的数据分析工作;

数据表中的空值直接影响了数据分析结果的准确性;

大量的冗余数据降低了数据分析的效率;

数据值域定义的不完整性给数据审计工作带来障碍。

2010年 5454

审计数据清理的主要工作

确认输入数据

修改错误值

替换空值(NULL)保证数据值落入定义域

消除冗余数据

解决数据中的冲突(不一致)

Page 10: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 5555

审计数据清理的方法

一、解决不完整数据(即值缺失)的方法大多数情况下,缺失的值必须手工填入;某些缺失值可以从自身数据源或其它数据源推导出来。

二、错误值的检测及解决方法用统计分析的方法识别可能的错误值或异常值,如偏差分析、识别不遵守分布或回归方程的值;使用简单规则库(常识性规则、业务特定规则等)检查数据值;使用不同属性间的约束;使用外部数据。

三、不一致性的检测及解决方法定义完整性约束用于检测不一致性;通过分析数据发现联系。

2010年 5656

值缺失的解决方法

2010年 5757

空值的处理

在SQL Server的查询分析器(SQL Query Analyzer)中执行下列SQL语句用“0”替换某些字段的空值 :UPDATE 账户 SET 资金余额=0 WHERE 资金余额 IS NULL

2010年 5858

消除冗余数据

清理凭证数据表中科目代码以“s”开头的现金流量辅助信息冗余记录:DELETE FROM 清理数据表 WHERE kmdh LIKE 's%'

2010年 5959

错误数据的处理办法

审计人员采集数据后,在下图所示的固定资产表中发现资产原值字段存在负值的情况,这与会计处理的常规不符。

2010年 6060

错误数据的处理办法

在确认负的资产原值是错误数据后,审计人员可以在SQL Server的查询分析器中执行SQL语句:UPDATE 固定资产表 SET 资产原值=ABS(资产原值) WHERE 资产原值<0改正资产原值的错误取值。

Page 11: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 6161

审计数据转换的原因

被审计单位信息系统的多样性带来了数据的不一致性;

被审计系统的安全性措施给审计工作带来障碍;

审计目的不同决定了审计数据的范围和要求不同;

数据转换是数据分析、处理的前提。

2010年 6262

数据不一致性的表现

同一字段在不同的应用中具有不同的数据类型

同一字段在不同的应用中具有不同的名称

同名字段,不同含义

同一信息,在不同的应用中有不同的格式

同一信息,在不同的应用中有不同的表达方式

2010年 6363

审计数据转换的基本类型

简单变换

数据类型转换

日期/时间格式的转换

代码转换

值域转换

清洁和刷洗

有效值检查

复杂的重新格式化

2010年 6464

简单变换

数据转换中最简单的形式

所有数据转换的基本构成单元

一次改变一个字段的属性

不考虑该属性的背景或与它相关的其他字段的信息

2010年 6565

简单变换——数据类型转换

最常见的简单变换是转换一个数据元的类型。它是将一种类型的数据转换成另一种类型的数据。

数据转换的前提是类型相容。类型相容指的是一种类型数据的值域可以通过常用的转换函数映射到另一种类型的值域上。

这种映射不会丢失数据的精确度。

2010年 6666

简单变换——日期时间格式转换

大多数被审计单位系统都采用许多不同的日期和时间格式。

在审计软件中几乎都要进行日期和时间格式的转换,将它转换成审计软件处理所需的统一格式。

可以通过手工程序编码来完成转换,把一个日期或时间字段拆成几个子部分,然后再将它们拼成想要的格式和字段。

大多数审计软件中的数据导入和转换工具都提供了日期和时间格式之间转换的设置。

Page 12: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 6767

简单变换——代码转换

在业务数据库中建立代码是为了节省数据库存储空间和提高计算机处理效率。这些代码一般是由系统管理员设置,由应用程序维护的。这给审计软件处理带来了很大的不便。如果审计软件中采用了代码设计,而被审计单位的代码能够满足审计软件需要的,可以将被审计单位的代码表转换到审计软件的代码表上来。如果审计单位的代码不能满足审计软件的需要,就必须根据审计软件的要求对它重新编码。如果审计软件不采用代码设计,就必须将被审计单位数据中的代码值转换为经过解码的、易于理解的相应值。

2010年 6868

简单变换——值域转换

值域转换是将一个字段的全部或部分取值映射到另一个字段的全部或部分取值上去。

例如,在被审计单位的系统中,某一项数据的取值分为10个级别(’0’~’9’),而在审计软件中,该项数据的取值仅仅分为5个级别(’A’~’E’),这就需要将具有10个级别的值域映射到具有5个级别的值域上去。代码转换可以看成是一类特殊的值域转换。

2010年 6969

清洁和刷洗

清洁和刷洗指的是比简单变换更复杂的一种数据变换。

在这种变换中,要检查的是字段或字段组的实际内容而不仅是存储格式。

一种清洁和刷洗是检查数据字段中的有效值。这可以通过范围检验、枚举清单和相关检验来完成。

2010年 7070

审计数据转换的方法

专用工具

数据仓库系统的数据转换工具

审计软件的数据转换工具

SQL语言

类型转换

值域转换

程序编码

2010年 7171

必须运用程序编码的场合

对非关系型数据库中的数据进行转换

对复杂的数据文件中的数据进行转换

数据转换的要求固定而使用频繁时

2010年 7272

一、审计数据验证的原因

二、不同阶段的审计数据验证

三、审计数据验证的方法

审计数据验证

Page 13: 计算机数据审计 - esnai.netce.esnai.net/resource/files/kjjj70/20101115023944765.pdf · 四、Oracle数据采集 五、DB2数据采集 数据库数据采集 2010年 28 Access数据采集

2010年 7373

审计数据验证的原因

避免假账真审,降低审计风险

避免数据在采集过程中发生遗漏

避免清理转换过程对数据的破坏

2010年 7474

审计数据采集阶段的验证

审计数据采集之前的验证

验证数据库的创建日期

• sp_helpdb

• SELECT created FROM v$database;

验证总数据量

验证数据内容

验证数据采集接口的正确、有效性

记录数据采集前的相关参数

2010年 7575

审计数据采集阶段的验证

审计数据采集之后的验证

与数据采集前记录的参数进行核对

利用已有的统计指标和纸质凭证、报表进行核对分析

检查有无异常数据

对数据转换工作的验证

2010年 7676

审计数据清理和转换阶段的验证

数据清理转换过程中可能存在的问题目标数据模式设计不合理

数据清理和转换策略不当

数据清理和转换工具使用不合适

清理转换过程不规范,没有日志记录

对数据清理转换过程进行验证的主要内容主要变量核对法

记录数的验证法

业务规则验证法

数据结构确认法

2010年 7777

审计数据验证的方法

关系模型完整性约束的验证

数据总量和主要变量统计指标的验证

业务规则的验证

抽样方法的验证

2010年 7878

采集转换篇要点回顾

1、审计数据采集策略

2、审计数据清理转换策略

3、非数据库数据采集

4、数据库数据采集

5、审计数据清理转换

6、审计数据验证

78