前言:我们精心挑选了数篇优质数据分析解决方案文章,供您阅读参考。期待这些文章能为您带来启发,助您在写作的道路上更上一层楼。
关键词:工业自动化;PLC;人机界面;数据库
1工艺流程及主要测控点
目前,油田配注系统普遍采用“集中配置,分散注入”的工艺流程,即一个配置站对应多个注入站。其过程是在配置站将化学药剂与清水按照一定比例混合,制成符合浓度要求的母液,母液经过熟化后,由外输泵输送至各个注入站,在注入站按照每口井的配比方案加入清水,然后,注入井下。注入站工艺流程为:上游配置站输送来的母液进入母液储罐,经柱塞泵增压后被输送到母液汇管中,再经过单井母液调节阀进入混合器。注水站来的清水经过单井清水调节器进入混合器,在这里与母液充分混合后被注入井下。注入站的测控参数主要包括母液储罐液位、柱塞泵进出口压力、单井压力、单井清水流量等。
2基本原理
采用“VBA+数据库”的方案实现报表查询。VBA(VisualBasicforApplication)是新一代标准宏语言,是基于VisualBasicforWindows发展而来的,语言简单易学,功能强大。VBA是VB的应用程序版本,必须依赖于已有的应用程序,不能独立运行。目前,WIinCC、FactoryTalkViewStudio、Ifix等主流组态软件都支持VBA编程。具体过程是利用组态软件SE的数据记录功能建立数据记录模型,将需要的数据采集并存储在ODBC指定的数据库中。当操作员查询报表时,选择日期后,按下查询按钮,即执行VBA代码,将数据库中的数据读出来,并写入报表模板中,生成指定日期的生产数据报表。
3报表开发过程
3.1添加HMI标签
展开HMI服务器的“HMI标签”,右键点击“标签”,点击“打开”,在打开的标签窗口中点击“新建”,在标签名称栏中输入标签名“DayReport_Date”,类型选择“字符串”,数据源类型选择“内存”,点击“接受”,保存标签。
3.2添加ActiveX控件引用
ActiveX控件是一种基于COM接口的控件,通常不能独立使用,只能在宿主程序中运行,支持COM接口规范的编程环境均可使用它。在报表查询画面中,需要使用日历控件,必须提前在“VisualBasic编辑器”中添加ActiveX控件引用。打开SE,点击“视图”,选择“VisualBasic编辑器”。在打开的窗口中点击“工具”,选择“引用”,在列表栏中勾选“MicroSoftCalendercontrol2007”,点击“确定”,保存设置。
3.3创建并组态画面
打开SE的应用项目浏览器窗口,展开HMI服务器的“图形”,右键点击“显示”,选择“新建”,创建画面“Report”。打开画面“Report”,添加日历控件、按钮、文本、字符串等对象。将日历控件的“Value”属性及字符串的表达式属性与“DayReport_DATE”标签相关联,并设置字体、颜色等其他相关属性。
3.4设计报表模板
根据生产岗位的需求,采用MicosoftOfficeExcel2007设计报表模板“日报表.xlsx”。并将报表模板文件存储在“D:模板”路径下备用(此路径应与VBA代码中指定的路径一致)。
3.5设置数据记录
展开HMI服务器的“数据记录”,右键点击“数据记录模型”,点击“新建”,打开数据记录模型的设置窗口。点击“设置”标签,选择“ODBC数据库”,点击“ODBC数据源”;选择“系统数据源”标签,点击“新建”;选择“系统数据源”,点击“下一步”;选择“MicosoftAccessDriver(*.mdb*.accdb)”,点击“完成”;弹出的“ODBCMicosoftAccess安装”窗口,在“数据源名”栏中输入“Report”,点击“创建”按钮,选择保存数据库的位置,在“数据库名”栏中输入“Report”,点击“确定”。点击“创建表”标签,在数据库中创建表“FloatTable”“StringTable”“TagTable”。点击“路径”标签,勾选“启用ODBC备用路径”。点击“文件管理”标签,设置清除ODBC数据库中保存旧记录的天数。点击“记录触发器”标签,勾选“周期性”,根据需求,在“间隔”栏中设置数据采集周期。点击“模型中的标签”标签,添加需要记录的数据标签。
3.6编制VBA程序
【关 键 词】数据库;双机热备份;系统;解决方案
【中图分类号】G250.74【文献标识码】A【文章编号】1672-5158(2013)07-0213-02
引言:近年来,随着经济改革的不断深入,企业的各项业务也有了长足发展,计算机应用水平得到迅速的提高。目前,开放平台加客户/服务器的双机热备份应用模式已经被我国中小型企业广泛采用。
通常这种应用模式是以两台小型机做互为备份的两个节点,同时联到一个共享磁盘柜上,构成一个Client/Server方式下的Server端服务器系统。这种服务器系统在考虑系统的高连续可用性时,一般从主机、网络到UPS电源都是一主一备,存放数据的磁盘选择磁盘镜像技术或选择磁盘冗余阵列5技术(RAID5)。
从硬件角度看,这种配置已经考虑了各组成部分的冗余,然而从应用的角度来看,这样的服务器系统还是有缺陷的。
对应用系统而言,数据库是非常重要的,而在这种服务器系统中数据库只有一个,一旦出现故障,不但整个系统会瘫痪,甚至还会给银行带来很大的经济损失。对于这个问题,双机热备份模式是无能为力的。在实际应用系统的运行过程中,由于参数设置不当或数据库本身存在的缺陷,使得数据库出现的问题在故障率中所占比重还是比较大的,因而给应用系统的可靠运行带来了较大的影响。本文针对这一问题,介绍我单位的一种解决方案。
一、系统的改进方案
为了解决Oracle数据库无备份的问题,必须另建一套服务器系统。然而对中小型企业来讲,另外投资一套小型服务器系统,经济上往往不允许。考虑到现在的PC服务器在性能上已经足可以充当企业级服务器,投资较小,所以我们选择了用PC服务器备份的方案,如图1所示:
根据对IBM System X服务器的压力测试结果,我们认为它具有处理日交易3万笔的能力,符合我单位目前业务的情况,因此我们选用了IBM System X服务器做备份Oracle数据库。
PC服务器硬件配置:
(1)CPU 4×Pentium Pro
(2)内存 8G
(3)硬盘 320G
软件环境:
(1)操作系统 Windows server 2003
(2)数据库 Oracle 10g
(3)应用软件 ERP软件
二、 RAID系统
RAID (Redundant Array of Inexpensive Dins),廉价冗余磁盘阵列。RAID是一种使用磁盘驱动器的方法,它将一组磁盘驱动器用某种逻辑方式联系起来,作为逻辑上的一个磁盘驱动器来使用,使RAID一般是在SCSI磁盘驱动路上实现的。它的优点在于:
通过将多个物理磁盘编织(weaving)进一个单独的逻辑卷来使用,使RAID相对传统的磁盘驱动器,在同样的容量下,价格要低许多。
通过将数据按条块(blocks)写入不同的磁盘来并行地读写几个磁盘,进而提升磁盘访向速度。带有多个磁盘控制器的RAID系统,存取速度提高很快。
RAID的具体实现可以靠硬件也可以靠软件,通过硬件实现RAID的产品有磁盘阵列柜,阵列柜中安装有磁盘阵列控制卡,可以直接将柜中的硬盘配置成为逻辑盘阵。磁盘阵列柜通过SCSI电缆与服务器上普通SCSI卡相连,系统管理员需直接在磁盘柜上配置磁盘阵列。
磁盘阵列控制器一般都支持多种RAID级别、磁盘的热插拔、在线平滑扩容和双冗余电源。
三、备份数据库工作原理
由于PC服务器中的操作系统、数据库与生产机中的版本不同,所以必须先将生产机中的数据库数据卸出来,以文本文件的形式传到PC服务器上,然后将此文本文件再装入PC服务器的数据库中,从而使两个数据库中的数据一致。慎重起见,还可以对重要表的有关字段进行求和,并将两个数据库的求和结果进行比较,若一致则可以放心,不一致则说明上述操作过程有问题,需要排除后重做。
1.日间备份
将每天晚上轧帐后的数据卸出并装载到PC服务器上,使得生产机和PC服务器中的数据在每天业务开始前保持一致。正常开机后,当生产机上的数据库出现问题不能正常使用时,可以通过修改PC服务器的网络地址,使上传的交易传到PC服务器,从而实现数据库的切换。
但应注意,切换后的数据库状态是每天业务开始时的状态,所以还应有一个追帐的过程,直到追帐完成,才算完成整个切换过程。这种切换所需的时间仍远远少于磁带恢复后再追帐的时间。一般磁带备份只做轧帐前的数据备份,这样磁带恢复后还要再做一个轧帐过程,才能恢复到开业时的数据库状态。
2.查找隔日数据
有时根据业务的需要,要求恢复前一天的有关数据,由于白天业务运转不允许生产数据库停下来恢复数据,有了PC服务器,可以将一些数据表在轧帐前卸出来,传到PC服务器上,需要时在PC服务器上恢复出来,进行数据的查找。
3.磁带备份的补充
服务器上的数据还起到异种介质备份的作用,提高了备份数据的可靠性。PC服务器可放在办公环境下使用,这样可使服务器与生产机保持适当的距离,一定程度上提高了整个系统的抗灾能力。
在双机热备份应用模式下,采用PC服务器作数据库的备份,提高了整个应用系统的连续可用性和数据备份的可靠性,由于该方案投资省、易实施,对中小型企业有一定的借鉴价值。
四、系统特点与总结
双机与磁盘阵列柜互联结构的特点是:
硬软结合实现真正意义上的数据与系统分离。
对硬件配置要求不高,服务器可采用不同或相差较大的配置。
系统切换时间段,平均切换时间为60秒。
切换过程对应用程序无影响,无需重新启动或登陆。
系统效率高。因为整个系统中数据读写、管理及容错由磁盘阵列来完成。而系统服务器故障纠错处理由HA软件来完成,而这两个都是相对独立的子系统。双机容错监控路径为SCSI线路(80M/S)和RS232线路或10/ 100MB自适应网卡线路,既不占用主机CPU资源,也不产用基础网络宽带,因此系统效率高。
双机与磁盘阵列柜互联结构不采用内存镜像技术,因此需要有一定的切换时间(通常为60-180秒),它可以有效地避免由于应用程序自身的缺陷导致系统全部宕机,同时由于所有的数据全部存贮在中置的磁盘阵列柜中,当工作机出现故障时,备份机接替工作机,从磁盘阵列中读取数据,所以不会产生数据不同步的问题,由于这种方案不需要网络镜像同步,因此这种集群方案服务器的性能要比镜像服务器结构高出很多。
双机与磁盘阵列柜互联结构的缺点是在系统当中存在单点错的缺陷,所谓单点错是指当系统中某个部件或某个应用程序出现故障时,导致所有系统全部宕机。在这个系统中磁盘阵列柜会导致单点错,当磁盘阵列柜出现逻辑或物理故障时,所有存贮的数据会全部丢失,因此在选配这种方案时,需要选用一个品质与售后服务较好的产品。
五、结束语
计算机技术、网络技术的广泛应用,使企业运作效率大大提高。同时也使现代企业对计算机系统的依赖性进一步增加。如何保证核心应用永不停止,关键数据不会丢失?越来越多的企业采用双机热备份或多机集群技术来解决这一问题,其中双机热备份技术以其技术成熟,成本相对较低,获得了广泛的应用。
典型的双机热备份系统通过在两台服务器上运行双机热备份软件和共用RAID磁盘阵列来实现。这种方案在电信,金触、证券、政府等部门和行业的成功应用,业己证明其可靠性和成熟性。
参考文献
文章首先对Oracle数据库应用中存在的主要问题进行了简要分析,在此基础上提出解决Oracle数据库应用问题的有效方案。期望通过本文的研究能够对Oracle数据库的推广应用有所帮助。
【关键词】Oracle数据库 应用 问题
1 Oracle数据库应用中存在的主要问题分析
Oracle数据库是一种关系型数据库管理系统,其体系结构如图1所示。
Oracle数据库的应用优势主要体现在如下几个方面:数据量大、数据保存时间长、所有数据全部可以实现共享、数据的可靠性较高、稳定性好等等。正是因为Oracle数据库所具有的这些优势,使其获得了广大使用者的认可。然而,该数据库在实际用于却存在一些问题,这在一定程度上影响了Oracle数据库的应用。
1.1 表空间数据删除引起的问题
对于Oracle数据库而言,它的表空间之间相关的数据有两种关系,一种是1对1的关系,另一种是1对多的关系,当需要永久性删除某个表空间时,这个将要被删除的表空间应当处于脱机状态,随后调取数据字典将对应的项目信息删除,再将操作系统目录中的数据文件删除即可。上述删除过程必须按照指定的顺序进行操作,若是先将表空间的数据文件删除,该表空间便无法找到存储媒体,由此可能会引起数据库应用异常,如数据库无法正常启动或关闭等。
1.2 字符集转换的问题
在Oracle数据库的应用中,中英文字符集的转换常常会出现问题,例如,开始应用该数据库时,要求使用英文的字符集,然后便选择英文字符集进行安装,在使用的过程中,由于一些新项目的增加,要求使用中文字符集,若是不对字符集进行转换,新增项目的汉字部分将会显示为3个“?”,由此给数据库的应用带来一定的影响。
1.3 回滚段联机产生的问题
在对Oracle数据库进行应用的过程中,回滚段联机是一个较为常见的问题,也是困扰大部分使用者的主要问题之一。数据库的使用者在对具体应用项目进行安装时,一般都是参照说明书的要求进行安装,由此可能会引起如下问题,即创建回滚段,然后联机,但却并未将之加入到数据库的初始化文件当中,当数据库重启之后,安装的回滚段便会处于脱机状态,这对使用者的应用带来了一定程度的影响。
2 解决Oracle数据库应用问题的有效方案
为了有效解决Oracle数据库应用中出现的各种问题,应当对数据库的性能进行优化,具体可从以下几个方面着手:
2.1 对数据库进行优化设计
想要使Oracle数据库的应用性达到最优,就必须要有一个良好的设计方案,从而使其各方面性能都达到使用者的要求,这样便能够避免实际应用中各种问题的发生。Oracle数据库的设计大体上可以分为两个方面,一方面是逻辑设计,另一方面是物理设计,在前者的设计中主要是为了将数据库中的一些冗余数据全部消除,借此来提高数据的吞吐速度,使数据的完整性得到保障,但对于大数据表而言,可能会影响其性能。所以,在物理设计的过程中,要进行综合考虑,并按照关联表当中的数据量大小以及对数据项访问的频繁程度,提高查询较为频繁的数据表冗余设计,以此来满足应用需要。
2.2 应用程序优化
相关统计结果显示,通过对应用程度进行优化,可以使数据库的性能提高60%左右。由此可见,对应用程序进行优化是提高Oracle数据库性能最为有效的途径之一,随着数据库性能的提升,其应用方面存在的问题会获得有效解决。可以通过对源代码和SQL语句两个方面对应用程序进行优化。通常情况下,SQL语句会消耗数据库中70%-90%的资源,它的执行效率高低直接关系到数据库本身的性能。为此,可对部分劣质的SQL语句进行调整,并对数据库的访问方法进行优化改进,借此来改善数据库系统的整体性能,从而提高其内存区的命中率,大幅度减少对网络带宽的占用以及I/O访问。
2.3 数据库内存分配的优化调整
对于Oracle应用实例而言,其通常都是由Oracle后台进程与SGA的一个内存区组成,在应用实例当中,SGA使用效率的高低会对数据库的性能产生极大的影响,鉴于此,可在具体应用中按照数据库的实际运行情况,对SGA的大小进行重新调整,同时,由于内存分配是在信息系统运行时进行优化配置,所以可在对磁盘I/O的检查时对其进行优化调整。
2.4 操作系统性能的优化配置
在对Oracle数据库操作系统的性能进行优化配置时,可从以下两个方面着手:
2.4.1 规划资源
提供大量的资源是调整操作系统的主要目的之一,资源的具体分配原则为使Oracle服务器的可用资源最大化,尤其是在C/S架构中,应当尽可能使服务器的全部资源都用来运行Oracle服务。因此,操作系统应当为Oracle提供足够的内存,从而可以容纳SGA、用户进程等,这样可以有效解决换页和交换的问题。
2.4.2 优化计算机的配置
对于操作系统而言,扩大内存较为常用的方式为增加虚拟内存,这部分内存属于磁盘空间,如果实际的内存空间不足时,操作系统便会将磁盘空间与内存当中的信息进行页面交换,由此会导致磁盘I/O的操作量增大,从而影响服务器的性能。通过对计算机的优化配置,可以有效减少内存的交换和分页。
3 结论
综上所述,Oracle数据库以其自身诸多的应用优势获得了使用者的一致认可,但在实际应用中,却常常会出现一些问题。为此,可以从提高Oracle数据库性能方面着手,通过各种优化措施,解决Oracle数据库应用中存在的问题,这对于促进Oracle数据库的大范围推广应用具有重要意义。
参考文献
[1]万娟.Oracle数据库应用中出现的问题及其对策[J]现代经济信息,2015(18).
[2]王春丽,王海飞.Oracle数据库安全问题探析与应对策略[J]电子世界,2016(14).