转 oracle数据仓库部署注意事项(OLAP)
https://blog.csdn.net/laven54/article/details/9840365
最近数据库升级到11G之后,出现一些问题,慢慢的开始发现一些需要总结的东西,每次心里都在想:下次,我自己搭建数据仓库的时候,一定要注意这些细节,在仓库的创建初期就做好这些工作。
1、redo log的设计
1)如果可以单独放,redo和数据文件单独划组做条带化等。物理上分开。
2)redolog如果可以单独放,就不要设置得太大,最多500M一个,因为日志太大,可能会导致实例恢复的时间很长。另外在极端倒霉的情况下,如果再数据恢复过程中,实例再次down掉,比如掉电。那你就惨了。总之,那么多数据放在日志里不安全,放在datafile里放心一些。
3)如果你和我一样悲催,redo和datafile所在磁盘组都在一个,因为存储底层直接划分的一个大池子(基于成本、速度的综合考虑),那你就把日志调大一些(目前我的是2G/个),组数增加一些(目前我的20组),如果还是出现日志不够用,那就多增加组数,比如30组。另外ASM在这种大池子面前,基本无法提高IO了,因为你无法解决redo和datafile竞争IO的问题。
2.undo策略
1)undo_retention的设计
一般可以直接设置3小时,先保证系统可用。当然undo表空间要足够大。
好吧,如果你说无法定量,我给你一个参考值。
数据量3T的数据库,设置undo表空间为300G,undo_retention时间为10800,默认单位是秒,也就是3小时。
2)guarantee参数的取舍
我觉得,如果你未充分了解你的业务系统和数据库状况之前,不要轻易启用这个参数。有可能会导致异常灾难。
上述条件不成立的,可以尝试使用该参数,以防止ORA-01555的出现。
3、DB和OS级别都要记得开启异步IO
前面已经写过了,不在赘述:
http://blog.csdn.net/laven54/article/details/9771327
4、。。。其他的,等想到了再加上来吧
5、OLTP和DSS不同数据库设计
转载自:http://space.itpub.net/26464953/viewspace-712124
oltp 数据库 | dss 数据库 |
oltp = online transaction processing | dss = data warehousing |
联机事物处理 | 数据仓库 |
例如:飞机订票,网上交易,bbs等 | 例如:各种资源资料查询系统 |
大量的在线用户和dml操作 | 很少的dml操作 |
大量基于索引的查询 | 大量的全表扫描的查询 |
用b-tree,reverse key索引,定期索引重建 | 用bitmap索引 |
需要较多的小的回退段 | 需要较少的大的回退段 |
不要用分布式查询 | 用分布式查询 |
数据对象的存储参数pctfree 20 或者更高 | 数据对象的存储参数pctfree 0 |
共享程序代码和各种变量常量 | 字符变量和线索 |
启动多线索服务 | 使用大的数据块,db_file_mutiblock_read_count |
使用较大的日志文件 | 使用较小的日志文件 |
listener开多个响应端口 | 增加sort_area_size |
从itpub上又找到一些内容,我直接转过来了,转载地址为:http://www.itpub.net/thread-1726429-8-1.html
1.数据仓库生产库和OLTP系统的生产库的配置具体有哪些地方不相同?
(1)、内存
和OLTP相比,DW系统PGA意义重大,我以前还通过修改隐藏参数让DW可以用更多的PGA
(2)、表空间:
TEMP表空间要大,可以分用户使用不同的临时表空间。
(3)、并行
并行进程的数量要足够,我们以前DW做大的报表,全靠并行了。
(4)、备份
增量备份可以开启“块改变跟踪文件”,提高增量备份速度。
(5)、块大小、区大小
使用大块、大区。
我以前DW是用32K块大小。
另外,分区设计也要重点考虑。还可以考虑RAC扩展CPU、内存。存储磁盘越多越好,磁盘越多吞吐量才能越大。OLTP我一般用RAI10,DW为节省空间一般用RAID5就行。曾用过RAID6模式,效果不是太好,写性能有点慢。归档空间要足够,并切要快。DW要经常做大的数据加载,我们以前归档是瓶径。
2.数据仓库系统在日常性能维护和调优的过程中,有哪些特点以及需要注意的地方?
除OLTP的常见指标外,一是要关注PGA、临时表空间的消耗。二是DW系统空间耗用比较大,可以多关注空间的消耗。SQL方面,DW的SQL一般都巨长无比,调优难度还是比较大的。大部分的表,我都是以5%的比例收集统计信息,让Oracle自己生成计划,只有客户反应慢的SQL才会发精力去看。
1:我们的数据仓库归档是关闭,oltp一般开归档 2:数据仓库大量的数据IO瓶颈是在临时表空间,临时表空间我们用2TB的固态盘;oltp io一般在数据表空间 3:数据仓库 单个redo较大,数目较多; 4:数据仓库db_block一般较大16,32K,oltp较小,8,16kB 5:数据仓库一般数据装载采用sqlldr direct=true parallel=true,一般采用多个进程同时加载 6:数据仓库一般采用二级分区,oltp表设计一般为表或一级分区 7:数据仓库数据插入一般采用append,parallel优化指示,oltp不采用。 8:数据仓库一般设定并行服务,设定parallel相关参数,oltp不用 9:数据仓库rac间通讯成为瓶颈,所以采用rds的ib协议,oltp较少使用。 10:数据仓库接口表一般不建索引,oltp一般都建立索引 |
公司最近也要我研究数据仓库,了解不多,讨论两个问题吧
1.数据仓库生产库和OLTP系统的生产库的配置具体有哪些地方不相同?
答:
(1)OLTP系统中PGA的设置通常规律是:总物理内存*80%*20%,而在数据仓库中PGA的比重要增加:总物理内存*80%*50% (当然都是些前者总结的经验值,不可完全照搬);
(2)在OLTP系统中,通常建好库我们会将数据库模式调为归档;但在数据仓库中常常会需要将模式调为非归档,特别在载入时;
(3)在数据库设计上来说,OLTP系统常用到的3范式就不能再在数据仓库中照搬了。OLTP提倡的降低数据冗余,而在数据仓库维度建模中为避免过度的雪花处理(过度的雪花处理会导致数据仓库过多的表和连接,造成查询缓慢,另外也降低了用户在维度中进行浏览的能力,并且还挫败了位图索引的使用),维度表常常出现一些数据冗余。相对动则10多GB的事实表,无需花太多精力去规范化比事实表小很多的维度表。
2.数据仓库系统在日常性能维护和调优的过程中,有哪些特点以及需要注意的地方?
答:
(1)数据仓库系统常常都是批量操作,小事务操作很少,因此无论在导入还是查询都可以考虑采用并行提高性能;
(2)分区技术在数据仓库日常维护中发挥了更大的作用,由于OLTP系统事务性强,经常做小事务的DML操作的表是不适合做分区的,并且分区索引的使用要求也相对比较苛刻,而在数据仓库中对于维护大批量历史数据备份与迁移这块,分区技术使本来笨重麻烦的工作变得轻松简单;
(3)说到数据迁移,基于表空间的数据迁移方法也不错,比普通EXPDP/IMPDP快捷;
(4)由于数据仓库修改操作比较少,在每次批量操作以后将表空间设置为只读也便于备份与查询的效率提升;
(5)数据仓库中位图索引使用的好处就不说了,这个你懂的
大db_block_size,pctfree 0,pga比较大,db_file_multiblock_read_count |
转 oracle数据仓库部署注意事项(OLAP)的更多相关文章
- 部署至Oracle数据库的注意事项
部署至Oracle数据库的注意事项 安装数据库之前1)检查计算机名,如果是乱码,改一下名字 2)有杀毒软件,能关则关 但是最好征求用户的同意 3)装两个一起解压databa ...
- Oracle安装部署,版本升级,应用补丁快速参考
一.Oracle安装部署 1.1 单机环境 1.2 Oracle RAC环境 1.3 Oracle DataGuard环境 1.4 主机双机 1.5 客户端部署 二.Oracle版本升级 2.1 单机 ...
- ASP.NET生成WORD文档,服务器部署注意事项
网上转的,留查备用,我服务器装的office2007所以修改的是Microsoft Office word97 - 2003 文档这一个. ASP.NET生成WORD文档服务器部署注意事项 1.Asp ...
- Oracle数据仓库套件
OBIEE RPD:定义不同分析的主题角度,确定相应的事实表和维度表 报表层:选取需要的维度和度量,根据筛选器选取需要的数据 可视化:用图形展示数据,支持常见的图形:如折线图,饼图,堆叠图等. ODI ...
- ArcSDE 10.2 for Oracle 12C安装注意事项
ArcSDE 10.2 for Oracle 12C安装注意事项 1.环境说明 从ArcSDE10.2.1开始支持Oracle 12C. 2.安装注意事项 SDE空间数据库可以安装到PDB中,使用Cr ...
- wildfly8.1部署注意事项
wildfly8.1部署注意事项 jboss 最近新项目上线,本人部署过程中总结了以下几点比较关键的地方,看是否对大家有用处 服务器改成支持外网访问 在standalone.xml文件中找到 ...
- Oracle数据仓库创建教程
Oracle数据仓库创建教程.如何创建一个数据仓库,创建实例,以为毕业设计要求,最近开始Oracle的数仓建模实践,详细记录了图形界面下的 Oracle database 12C 数据仓库创建过程. ...
- 总结新系统部署时,Oracle的一些注意事项:
1.Oracle安装时,要选择字符集为中文编码,数据库重要角色设置密码时,不要用数字开头,不然后面会报一些错误提示 2.emp导出的数据dmp格式,导入时要在服务器导入,具体没有试,要找机会试试,转化 ...
- ORACLE数据仓库学习记录
一.数据仓库安装 安装ORACLE DATABASE 10g Release 2 ORACLE数据库版本是:10.2.0.1.0(服务器).执行基本安装(安装全部的组件)并创建示例数据库. 安装ORA ...
随机推荐
- 向vivi中加入命令
在vivi的lib/command.c中添加自己的命令 核心数据结构user_command. typedef struct user_command { const char *name; ...
- hdu 5616 Jam's balance 正反背包+转换
http://acm.hdu.edu.cn/showproblem.php?pid=5616 思路 题目中蕴含着两种需要计算的重量 1. 从所有的砝码中挑出任意种2.(转换的思想)在天平的两端都挑出这 ...
- JVM类加载(2)—连接
2.连接 连接就是将已经加载到内存中的类的二进制数据合并到Java虚拟机的运行时环境中去,加载阶段尚未完成,连接阶段可能已经开始.连接阶段包含验证.准备.解析过程. 2.1.验证 验证.class文件 ...
- 在python3.6下 发明一个类似python3.7 dataclass数据类,不用在 __init__中self.xx
虽然我用3.6,但我在2.7转3.6时候,把3.3 3.4 3.5 3.6的变化都看了一次,虽然已经忘了哪些变化.同时也关注3.7 3.8的变化,3.7中就有1个数据类印象深刻,因为之前在定义这种类时 ...
- day02 秘钥生成,免密访问命令
hadoop免密登陆: 生成秘钥: ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa cat ~/.ssh/id_dsa.pub >> ~/.ssh/aut ...
- CentOS7下源码安装5.6.23
清理CentOS7下的MariaDB. [root@localhost ~]#rpm -qa | gremp mariadb [root@localhost ~]# rpm -e --node ...
- service的生命周期以及两种service的差异
可以看到,两种service的生命周期都相对简单,有一点不同的是,Intentservice每次调用的时候都执行onstartcommand,而boundservice一旦启动了之后,就不会每次执行o ...
- Java泛型通配符以及限定
摘抄笔记 A:泛型的限定 /* * 将的酒店员工,厨师,服务员,经理,分别存储到3个集合中 * 定义方法,可以同时遍历3集合,遍历三个集合的同时,可以调用工作方法 */ import java.uti ...
- 【redis对象,集合序列化Demo】
package org.seckill.dao.cache; import java.io.ByteArrayInputStream;import java.io.ByteArrayOutputStr ...
- 【linux-command not find解决方法 】
在linux下我们经常输入某些命令时经常出现提示说:command not find 首先 当出现 command not find时肯定是环境变量的问题,所以得修改环境变量.下面我也引用一下其他牛人 ...