昨日赴上海Oracle公司参加了一次所谓的“Oracle商务智能应用推广体验活动”,主题是亲身试用Oracle BI产品。我参加过多次Oracle主办的各类会议,比如OOW,但是这次的体验真当是首次。 会议9:15分开始,我从杭州出发,坐了最早一班的动车,大概9:30左右到达会议地点。这种时间安排本身,就带着一点点的莫名其妙,因为这貌似不欢迎上海以外的客户。然后有了如下一些体验: 会议室很小,或者说人数太多,竟然没有足够的位子。 于是去外面找椅子,是自己动身去找了并推过来的。 坐下来后,发现主持人没用话筒,声音很轻。 体验时,网速超慢,打开首页要4、5分钟。 所谓的午餐,就是盒饭,没有位子的人需要自己找地方,不过地方不够。 因为体验不佳,所以我直接走人。 印象中,所有Oracle相关会议都是在五星级饭店举行的,即便不是如此,至少也有足够的位子;如果要体验,至少有足够的网速;如果要吃饭,至少不用手捧着盒饭吃。这次的组织者,显然没有上心。不过这是不是也说明,其他的会议都是交给专门的公司安排的,这是专业性的体现啊。 当然,最主要的问题还是在于自己,没事瞎凑热闹。
Archives for March 2010
Loader Worker 和Sql*Loader 参数
之前介绍过MRP技术概览,其中有一个过程便是Loader Worker(装入程序工作流程),该过程实际上是通过Sql*Loader从操作系统数据文件中将数据加载到数据库中。而在主计划设置选项中,其中一项是设置Sql*Loader参数: 那么这些参数究竟是什么含义?我们又如何通过调整这些参数来优化Loader Worker的性能呢? 先来观察Loader Worker,会发现其执行时有两个或三个参数,如: CTRL_FILE=/u08/test/prodcomn/admin/out/TEST/M1922497MRLD_ITEMS.ctl DATA_FILE=/u08/test/prodcomn/admin/out/TEST/M1922497MRLD_ITEMS.dat DISCARD_FILE=/u08/test/prodcomn/admin/out/TEST/M1922497MRLD_ITEMS.dis 其中CTRL_FILE和DATA_FILE是每个并发请求都会有的,DISCARD_FILE会在部分并发请求中存在,比如载入MRP_SYSTEM_ITEMS表数据时就有该参数。想要理解这些参数的含义,便要先了解Sql*Loader参数的含义。 Sql*Loader 参数有数十个,相关的有如下几个: CONTROL 该参数指定了一个决定Sql*Loader行为的配置文件,它决定了需要从哪个数据文件读取数据,载入到哪张表里,分别有哪些字段等等。对应于Loader Worker的参数CTRL_FILE。 DATA 该参数指定了数据来源,也就是从哪个数据文件中读取记录。指定的数据文件每行的数据往往有特定的格式,有特定的分隔符区分每个字段的值。对应于Loader Worker的参数DATA_FILE。 DISCARD 该参数指定了一个文件用于记录那些未被正常导入到数据库中的记录。对应于Load Worker的参数DISCARD_FILE。 BINDSIZE Sql*Loader分批从数据文件中读取记录并提交到数据库中,每批的大小是有限制。该参数决定了Sql*Loader从数据文件读取记录大小的上限,除了每次读取的记录数必须小于ROWS指定的数目外,大小上不得超过BINDSIZE所指定的数值。该参数计量单位是Byte。 ROWS (每次Commit的记录数) 在Conventional Path模式时,它限定了bind array最大记录数。在Direct Path模式时,它限定了保存之前从数据文件中读取的最大记录数。它的作用和BINDSIZE类似,只是一个限制了记录数,一个限制了记录大小。 READSIZE (读缓存大小) 该参数仅针对从数据文件载入数据的方式时有效,默认值为64k,最大值因系统平台各有不同。在Conventional Path模式时,bind array 受限于读缓存,也就是说,在系统内存和bind array足够大的前提下,如果读缓存越大,则可以有更多的记录在commit前被读取,这也就意味着载入性能越好。当READSIZE小于BINDSIZE时,则READSIZE会被自动加大。 上述参数中,BINDSIZE和ROWS对应于Sql*Loader参数设置界面的相应字段,其他参数则对应于并发请求的相应参数。
UPK 3.6.1 更新
记得最初用UPK时,那时连安装都是件麻烦事,需要自行下载firebird,而且还是官方已经不再提供下载的旧版本。自3.5.x版本之后,UPK在功能上虽然变化不大,但是安装就比较轻松方便了。现在,UPK 3.6.1 已经可以提供下载了,这是UPK 3.6系列的最新版本,大的功能更新没有,但是对于UI设计上有了许多人性化的调整,也比较符合当前主流的操作习惯: 在新Tab中编辑主题 旧版本中,必须新开窗口打开主题编辑器,这种改进开始向主流靠近了。这令我想起GIMP,动不动就开N的窗口出来,整个布局看上去非常混乱。 新的音频编辑器 在主题中关闭bubble bubble 是现在最流行的UI元素,就是那种吸引用户注意的泡泡一般的提示框。 可以发布为PowerPoint格式 自动保存和恢复 Package 编辑器加强 包中的文件双击后可以直接调用关联程序打开,也可以通过Open with… 菜单项打开。 See It! 窗口加强 现在可以在非全屏窗口中执行See It!模式了。 Firefox 加强 Firefox 中也可以正常使用Do It!模式和音频播放了。 支持 Safari 保持文档为 checked out 状态 在check in后,文档可以依旧保持checked out状态。 Tab页中的关闭按钮 这种细节应当已经是主流了,当初firefox 3.6官方提供该特性时,当即就卸载了一个tab addon。 Outline 编辑器加强 关于版本选择上,UPK有一个普通版和一个专业版。edelivery网站上下载时会看见一个Oracle User Productivity Kit 3.6.1 Development Tool for Microsoft Windows和Oracle User Productivity Kit [...]
RMAN和数据库管道(PIPE)
数据库管道(PIPE)是一种多SESSION间传递消息的机制,可以通过包DBMS_PIPE进行消息的发布和接收,主要用作外部服务消息接口,也可以用于多个独立进程之间的通讯。在Oracle EBS环境中,MRP的计算过程就用到了数据库管道技术。RMAN也可以通过数据库管道进行操作,通过管道接口,可以直接使用PL/SQL来操作RMAN行为并获得输出结果。通过数据库管道技术,可以设计出基于RMAN的第三方备份、恢复管理系统。 用于RMAN的必须是私有管道,这是出于安全考虑。私有管道有如下限制: 各SESSION用户(USERID)必须和管道创建者一致 存储过程的执行权限和管道创建者(USERID)一致 用户必须通过SYSDBA角色连接到数据库 RMAN拥有两个私有管道,一个用于接收,一个用于发布。在启动RMAN时可以通过PIPE参数指定管道名称(此处为ABC),比如: [oradba@localhost ~]$ rman PIPE ABC TARGET / TIMEOUT 60 Recovery Manager: Release 11.2.0.1.0 – Production on Sun Mar 21 16:43:28 2010 Copyright (c) 1982, 2009, Oracle and/or its affiliates. All rights reserved. 该进程会等待DBMS_PIPE传入指令,如果60秒后无任何指令传入,则自动退出。若不加TIMEOUT参数,则RMAN会一直等待指令传入。 RMAN会自动打开两个私有管道,ORA$RMAN_ABC_IN和ORA$RMAN_ABC_OUT,前者用于接收消息,后者用于发布消息,消息类型都是VARCHAR2。第一次启用时,RMAN会自动初始化这两个管道,如果需要在启动RMAN之前就存入指令,则需要首先手工使用DBMS_PIPE.CREATE_PIPE创建管道。 l_status := dbms_pipe.create_pipe(pipename =>l_pipename,private => true); private 参数必须为true,否则默认会创建公共管道,无法用于RMAN。 发布指令到RMAN: DECLARE l_status INT; BEGIN dbms_pipe.pack_message(‘show [...]
iTunes 上的Oracle Podcasts
如果你有iPhone,那就可以在手机上随时收看Oracle的学习视频。如果你没有iPhone,也可以通过iTunes在电脑上收看,或者在其他支持MP4的移动设备上收看。 iTunes 上有很多免费学习资料(视频广播),有大学课程,有电视节目,很多公司都提供了自己录制的视频材料,比如Oracle。目前,Oracle 提供的podcasts包括以下内容: Oracle Author Podcasts 一些技术专家的观点 Oracle Buzz 各类新闻、趋势和话题 Oracle Database PodCasts Oracle 数据库学习 Oracle Fusion Middleware Radio 中间件产品 Oracle Green Enterprise 帮助客户更好了解Oracle产品 Oracle Intellicasts 商务智能之类的企业管理优化话题 Oracle Keynotes 企业新闻,产品和服务升级等 Oracle Magazine Oracle 杂志的编辑、作者等的会话节目 Oracle Technology Network TechCasts 了解Oracle最近的技术研发相关信息 Oracle’s AppCast 了解客户如何使用Oracle应用产品,以及最新的产品特性 Oracle@Work 三年不更新了,不看也罢 更多有用信息可以访问 http://blogs.oracle.com/databaseinsider/