(计算机软件与理论专业论文)基于net的综合录井信息系统的研究与应用.pdf_第1页
(计算机软件与理论专业论文)基于net的综合录井信息系统的研究与应用.pdf_第2页
(计算机软件与理论专业论文)基于net的综合录井信息系统的研究与应用.pdf_第3页
(计算机软件与理论专业论文)基于net的综合录井信息系统的研究与应用.pdf_第4页
(计算机软件与理论专业论文)基于net的综合录井信息系统的研究与应用.pdf_第5页
已阅读5页,还剩8页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 综合录井技术是石油地质勘探学科的一个分支。综合录井现场钻井速度、钻 井水平和应对事故突发能力的提高依赖于基地生产监督部门的决策和指挥。但是, 综合录井行业具有施工地区分散、偏远等固有特点,这使井场采集到的录井信息 往往不能及时送达到指挥基地,极大的影响了基地生产监督部门对录井现场的动 态把握和指挥。 利用网络技术实现录井信息平台化、网络化,使基地人员足不出户就可通过 浏览器及时掌握录井现场信息,是油田用户对综合录井软件提出的更高要求,也 是录井软件业发展的必然趋势;另一方面,对于信息化建设不发达的用户群,特 别是中小型油田用户,成本投入也是必须考虑的问题。因此,对综合录井软件的 研究与开发必须兼顾性能与成本。 n e t 开发框架和s q ls e r v e r2 0 0 0 数据库设计原理为本系统的研究提供了重 要理论支持。本文在深入分析了这些基础理论后,系统阐述了基于n e t 的综合录 井信息系统的研究与应用。主要研究内容包括三个部分:系统的总体设计,综合 录井信息系统中心数据库的构建以及系统的实现。 关键词:综合录井信息,n e t ,中心数据库,网络化 a b s t r a c t i n t e g r a t i v el o g g i n gt e c h n i q u ei s ab r a n c h o fp e t r o l e u ms u b j e c ti ng e o l o g i c e x p l o i t a t i o nf i e l d h o wt o a c c e l e r a t ed r i l l i n gv e l o c i t y , e n h a n c ed r i l l i n gl e v e la n d i m p r o v et h ea b i l i t i e so fd e a l i n gw i t ha c c i d e n t sd e p e n d so nd e c i s i o n sa n dc o m m a n d s c o n d u c t e db yp r o d u c ts u r v e i l l a n c ed e p a r t m e n to nb a s e h o w e v e r , i n t e g r a t i v el o g g i n g i n d u s t r yh a si n h e r e n tc h a r a c t e r i s t i c s ,s u c ha sd i s p e r s i v ea n dr e m o t ec o n s t r u c t i o np l a c e t h e s ec h a r a c t e r i s t i c sm a k el o g g i n gi n f o r m a t i o nc o l l e c t e di no i lf i e l dc a n n o tb e t r a n s m i t t e dt ot h eb a s ei nt i m ea n di ta f f e c t sd y n a m i cc o m m a n dt o t h eo i lf i e l d c o n d u c t e db yp r o d u c ts u r v e i l l a n c ed e p a r t m e n to nb a s e i no r d e rt oe n a b l et e c h n i c i a n st om a s t e ri n f o r m a t i o na b o u to i lf i e i db yb r o w s e ri n t i m ew i t h o u tg o i n gt ot h eo i lf i e l d w ec 趾m a k ei n t e g r a t i v el o g g i n gi n f o r m a t i o ns y s t e m c r o s sp l a t f o r ma n dn e t w o r k i n gu s i n gi n f o r m a t i o nt e c h n i q u e t h i si sn o to n l yah i g h e r r e q u i r e m e n tf o ri n t e g r a t i v el o g g i n g , b u ta l s oan e c e s s a r yt r e n df o rl o g g i n gs o f t w a r e d e v e l o p m e n t m e a n w h i l e c o s ti sa l s oap r o b l e mf o rm e d i u m s i z e do rs m a l lo nf i e l d c l i e n t ,s ow em u s tc o n s i d e rc o s ta n df u n c t i o nd u r i n gt h er e s e a r c ha n dd e v e l o p m e n to f l o g g i n gs o f t w a r e n e tf r a m e w o r ka n ds q ls e r v e r2 0 0 0d a t a b a s ed e s i g n t h e o r ya r et h et w o i m p o r t a n tt e c h n i q u e sf o rt h i sp a p e r w ea n a l y z et h e s et h e o r i e sd e e p l yf i r s t l y , a n dt h e n e x p o u n dt h er e s e a r c ha n da p p l i c a t i o no fi n t e g r a t i v el o g g i n gi n f o r m a t i o ns y s t e mb a s e d o n n e t t h i sp a p e rb r i e f l yi n t r o d u c e dt h r e ea s p e c t s :f i r s t l y , w em a k em a s t e rp l a nf o r s y s t e m ,s e c o n d l y , w ec o n s t r u c tc e n t r a ld a t a b a s ea n dl a s t ,w ei m p l e m e n tt h ei n t e g r a t i v e l o g g i n gi n f o r m a t i o ns y s t e m k e y w o r d s :i n t e g r a t i v el o g g i n gi n f o r m a t i o n ,n e t , c e n t r a ld a t a b a s e ,n e t w o r k i n g 独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作 及取得的研究成果。据我所知,除了文中特别加以标注和致谢的地方 外,论文中不包含其他人已经发表或撰写过的研究成果,也不包含为 获得电子科技大学或其它教育机构的学位或证书而使用过的材料。与 我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的 说明并表示谢意。 签名:冰吗日期:j 口口易年,工月告日 关于论文使用授权的说明 本学位论文作者完全了解电子科技大学有关保留、使用学位论文 的规定,有权保留并向国家有关部门或机构送交论文的复印件和磁盘, 允许论文被查阅和借阅。本人授权电子科技大学可以将学位论文的全 部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描 等复制手段保存、汇编学位论文。 ( 保密的学位论文在解密后应遵守此规定) 、 签名:冰约导师签名:襄膨 日期:2 o o 易年,2 月岁日 第一章引言 1 1 课题研究来源及意义 第一章引言 录井工程是石油勘探工程的重要组成部分,是钻井施工的“眼睛”,能够使 工程地质人员“看到”或了解地面、井下的施工情况,科学掌握生产动态并控制 生产作业【1 1 。综合录井技术作为石油地质勘探学科的一个分支,近年来已成为石 油勘探开发中不可替代的手段。综合录井现场钻井速度、钻井水平和应对事故突 发能力的提高依赖于基地生产管理部门、监督部门的决策和指挥。综合录井信息 能否及时、准确地记录并从施工现场传递到后方勘探管理及研究部门,将直接关 系到油气勘探施工的进程和最终效益。然而,综合录井行业具有施工队伍分散、 流动和施工地区偏远等固有特点,这使得井场采集到的录井信息往往不能及时送 达到指挥基地,极大的影响了基地生产监督部门对录井现场的动态把握和指挥。 信息技术借助于网络技术正在以前所未有的速度广泛应用于社会生活的各个 领域,石油行业也不例外。这些年来“数字油田”、“数字井场”的理念已经形成, 它们的提出正是在信息技术发展的大的背景下产生的。信息技术的发展,要求录 井信息的传输要彻底摆脱过去以电台或车辆传输为主的状况,建立起以互联网为 基础的新型的信息传输方式1 2 】。这就要求综合录井软件除了具备稳定、可靠、灵 活、功能完善、强大的扩展力等特点外,更重要的是,还要逐步实现平台化、网 络化、和智能化,从而改变原有的录井信息传输方式。这是油田用户对综合录井 软件提出的更高的要求,也是录井软件业发展的必然趋势。 录井信息网络化早在十几年就得到世界各大石油公司的重视,而在我国还处 在初级建设阶段,未能形成行业范围内的全面推广,与国际录井市场已经广泛应 用的网络信息平台相比,我们还存在着许多不足,缺乏开发经验,因此国内录井 信息网络化的开发在我国录井软件行业还属于新生事物。 在这样的背景下,本文提出了基于n e t 的综合录井信息系统的研究与应用。 本课题来源于中国电子科技集团公司第二十二研究所,是a c e 智能录井系统 下的一个子课题。a c e 智能录井系统适用于二十二所推出的新一代的综合录井仪 器,该系统不仅在实时采集方面具有良好的稳定性、可靠性、灵活性,更重要是 电子科技大学硕士学位论文 它顺应当今综合录井技术智能化、信息化、网络化的发展趋势,将基于互联网的 实时数据通讯技术、可视化组态、智能测控、嵌入式开发、n e t 等高新技术应用 到设计中,为用户搭建了一个功能强大的、全新的、面向w e b 应用的综合录井信 息平台系统。 综合录井信息系统作为a c e 智能录井系统中一个非常重要的组成部分,主要 负责录井信息数据存储、管理、发布和交换;它在整个综合录井工作中所起到的 作用是至关重要的,不仅承担着高速度高密度的实时数据通讯和存储任务,而且 还担负着即时输出和响应广域网络范围内数据访问请求的任务。它的开发使a c e 智能录井系统面向w c b 应用真正成为现实。 综合录井信息系统的服务对象主要定位于信息化建设不发达的用户群,特别 是中小型油田用户。与国内大的石油企业相比,中小型油田用户在资金、管理等 一些方面还存在着巨大的差距。因此,成本也是这些用户需要非常关注的问题。 在与这些用户的长期合作中,作为录井软件研发单位,研发组成员深刻地认识到, 如何兼顾软件性能与成本两者之间的平衡,以最低廉的成本尽可能地开发最优的 软件,应是我们在开发中必须贯彻的思想。这不仅对我们的油田用户来说是非常 重要的,同样也是我们在录井软件业激烈的竞争中得以取胜的法宝。 1 2 课题研究主要内容 该课题研究的主要内容是综合录井信息系统的设计与实现。其中包括综合录 井信息系统的总体设计、综合录井信息系统中心数据库的构建以及综合录井信息 系统的实现。 本人的主要工作是:首先对系统进行总体设计,主要包括系统的逻辑结构以 及功能模块的划分;其次详细阐述了综合录井信息系统中心数据库的构建,这是 本文的一个研究重点。研究内容主要包括数据库逻辑设计、制定存储方案、制定 备份恢复处理方案以及安全策略的研究与实现;最后,是本文的实现部分,这是 又一个研究重点。研究内容重点包括应用逻辑层的设计与实现,采用a s e n e t 技 术开发应用程序、系统优化和安全实现,并对实现中存在的技术难题进行详细分 析。 1 3 论文组织结构 2 第一章引言 本文共分为六章: 第一章:引言。主要阐述了课题的研究背景,课题研究方向与研究现状,课题来 源以及意义。 第二章:介绍了n e t 基本理论,包括n e t 开发框架和n e t 开发平台v s n e t , 详细研究和分析了a d o n e t 数据访问技术和a s e n e t 技术。同时,研 究并介绍了s q ls e r v e r2 0 0 0 复制技术,这是构建综合录井信息系统中心 数据库的理论重点。 第三章:综合录井信息系统的总体设计。重点进行系统逻辑结构的设计、系统功 能模块的划分和系统安全性设计。 第四章:综合录井信息系统中心数据库的构建。数据库构建是本文的一个研究重 点,在对数据库进行逻辑设计后,着重进行了数据库的存储与备份方案, 安全策略的分析与研究,同时对一些技术难题提出了解决方法,并进行 了实验分析。 第五章:综合录井信息系统的实现。这是本文的又一个研究重点。在对系统进行 总体设计后,详细阐述了如何基于n e t 开发框架实现本系统。重点包括 应用逻辑层的设计与实现,采用a s p n e t 技术开发应用程序以及系统的 系统优化和安全策略,并对系统进行了测试,同时对系统实现中存在的 技术难题提出了解决方法,并进行了实验分析。 第六章:总结与展望 3 电子科技大学硕士学位论文 2 1 n e t 框架 第二章相关技术介绍 目前,国内综合录井信息网络平台软件的开发方式一般有两类:j 2 e e 和n e t 。 从开发角度看,j 2 e e 平台适用于比较大型的项目,而n e t 平台则适用于中小型项 目。由于综合录井信息系统的服务对象主要定位于信息化建设不发达的用户群, 特别是中小型油田,因此,采用n e t 平台相对更适于综合录井信息系统开发。 2 1 1 n e t 框架概述 n e t 框架是一种新的计算平台,它简化了在高度分步式i n t e r n e t 环境中的应 用程序的开发,它是建立在开放的i n t e r a c t 协议和标准之上的,并采用了许多新的 工具和服务应用于计算和通信。 m i c r o s o f t n e t 平台提供创建x m l w e bs e r v i c e 服务,并将这些服务集成在一 起。x m lw e bs e r v i c e 允许应用程序通过i n t e r n e t 进行通讯和共享数据,而不管所 采用的是哪种操作系统、设备或编程语言。简单地说,n e t 就是一个开发和运行 软件的新的环境,只不过这个环境提供了许多基于w e b 的服务,更加易于使用, 使得多种语言之间以及网络上机群之间的基于组件的交互访问更加方便。n e t 使 开发人员能够比任何m i c r o s o f t 早期平台更为有效地利用各种技术,真正实现代码 的重复利用、代码专用化、资源管理、多语言开发、安全性、部署以及管理方面 的好处。 n e t 框架旨在实现下列目标【3 j : 无论对象代码是在本地存储和执行,还是在本地执行但在i n t e r a c t 上分布, 或者是在远程执行,都提供一个一致的面向对象的编程环境。 提供一个将软件部署和版本控制冲突最小化的代码执行环境。 提供一个保证代码( 包括由未知的或不完全受信任的第三方创建的代码) 安全执行的代码执行环境。 提供一个可消除脚本环境或解释环境的性能问题的代码执行环境。 使开发人员的经验在面对类型大不相同的应用程序( 如基于w i n d o w s 的应 用程序和基于w e b 的应用程序) 时保持一致。 4 第二章相关技术介绍 按照工业标准生成所有通信,以确保基于n e t 框架的代码可与任何其他 代码集成。 2 1 2 n e t 开发框架 n e t 框架是m i c r o s o f t n e t 最重要的部分,它的设计目的是使人们更容易的 建立网络应用程序和网络服务,其开发框架如图2 - 1 所示。 回困回回e 图2 - 1m i c r o s o f t n e t 开发框架 由图可以看到,n e t 开发框架主要由几个部分组成:首先是通用语言运行时 以及它所提供的一组基础类库;其次,在开发技术方面,n e t 提供了全新的数据 库访问技术a d o n e t ,以及网络应用开发技术a s p n e t 和w i n d o w s 编程技术 w i nf o r m s ;在开发语言方面,n e t 提供了v b 、v c + + 、c 萨、j s c r i p 等多种语言支 持;而v i s u a ls t u d i o n e t 则是全面支持n e t 的开发工具1 4 。以下对各个部分进行 概要介绍。 2 1 2 1 n e t 框架开发基础 ( 1 ) 通用语言运行时 c l r ( 通用语言运行时) ,即c o m m o nl a n g u a g er u n t i m e ,它位于n e t 开发框 架的最低层,是整个开发框架的基础。c l r 是一个可被各种不同编程语言所使用 的公共语言运行库,它为多种语言提供了一种统一的运行环境。c l r 的作用就是 5 电子科技大学硕士学位论文 在语言编译过程中,将m i c r o s o f t i n t e r m e d i a t e l a n g u a g e ( 中间语言,简称1 l ) 编译 为平台专用的代码【5 】,其执行模型如图2 - 2 所示。 图2 - 2 n e t 框架执行模型嘲 c l r 的很多特性可用于所有面向它的编程语言。如果c l r 用异常来报告错误, 那么所有的语言都将通过异常得到错误报告;如果c l r 允许我们创建线程,那么 所有的语言都可以创建线程。另外它还提供了更多的功能和特性,表现在:提供 了统一和简化的编程模型;避免了d l l 的版本和更新问题,从而大大简化了应用 程序的发布和升级;多种语言之间的交互;自动的内存和资源管理等等。 m i c r o s o f t n e t 正是基于通用语言运行时,实现了这些开发人员梦寐以求的功能。 ( 2 ) 基础类库 基础类库( b a s ec l a s sl i b r a r y ) 为开发者提供了一系列的编程接口。这组基础 类库包括了从输入输出到数据访问等各方面,提供了一个统一的、面向对象的、 层次化的、可扩展的编程接口。它使用一种点号分隔的方法,使得查找和使用类 库非常容易。例如基础类库中的根,它的命名空间是s y s t e m ;提供数据访问的类 库的命名空间是s y s t e m d a t a 。在使用时,开发者只需在自己的应用中添加所需的 基础类库的引用,然后就可以使用这个类库中的所有方法、属性等等。与传统的 w i n d o w s 编程相比,使用和扩展基础类库都非常容易,这使得我们能够高效、快 速的构建基于下一代互联网的网络应用。 2 1 2 2 n e t 数据访问技术a d o n e t ( 1 ) m 3 0 n e t 结构【7 】 几乎所有的应用程序都需要访问从简单的文本文件到大型的关系型数据库等 6 第二章相关技术介绍 各种不同类型的数据。在m i c r o s o f t n e t 中访问数据库的技术是a d o n e t 。 a d o n e t 是专为基于消息的w e b 应用程序而设计的,同时还能为其他应用程序结 构提供较好的功能。通过支持对数据的松耦合访问,a d o n e t 减少了与数据库的 活动连接数目,从而实现了最大程度的数据共享i s ,其结构如图2 3 所示。 i 卜 i l 图2 - 3a d o n e t 体系结构 a d o n e t 包含了两个核心组件:n e t 数据提供程序( n e td a t ap r o v i d e r ) 和数据集( d a t a s e t ) 。n e t 数据提供程序包含了c o n n e c t i o n 、c o m m a n d 、d a t a r e a d e r 和d a t a a d a p t e r 四个对象,这些对象用于连接到数据库,并允许保持本地存储数据 与原数据库的同步 9 1 ;数据集包含了d a t a t a b l e 、d a t a r o w 、d a t a c o l u m n 、c o n s t r a i n t 和d a t a r e l a t i o n 对象,这些对象用于存储从数据库检索到的信息的本地副本,这个 本地副本存储在雠程序所运行的计算机内存中【1 0 】。下面对这两个核心组件进行详 细阐述: n e t 数据提供程序 n e t 数据提供程序用于连接到数据库、执行命令和检索结果,其设计目的是 为了实现数据操作和对数据的快速、只进、只读访问【1 l l 。它保留了经典a d o 的大 部分特性。其中,c o n n e c t i o n 对象负责与数据之间的物理连接,它的属性包含了数 据提供程序、数据源、所连接到的数据库和连接期间用到的字符串;c o m m a n d 对 象向数据库提供者发出命令,返回的结果以一种流的形式贯穿于这些连接中; d a t a r e a d e r 对象用于访问单向、只读、只向前翻滚的数据源;d a t a a d a p t e r 对象是 c o n n e c t i o n 对象和数据集之间的桥梁,其主要作用是在d a t a b a s e 和d a t a s e t 对象之 间传递数据,同时也可以对底层数据保存体进行添加、删除或修改操作【1 2 1 。表2 - 1 对n e t 数据提供程序的四个核心对象进行了概括。 7 电子科技大学硕士学位论文 表2 - 1 n e t 数据提供程序的四个核心对象 对象说明 c o n n e c t i o n建立于特定数据源的连接 c o m m a n d 对数据源执行命令。公开p a r a m e t e r s ,并且可以从c o n n e c t i o n 在 t r a n s a c t i o n 的范围内执行 d a t a r e a d e r 从数据源中读取只进且只读的数据流 d a t a a d a p t e r 用数据源填充d a t a s c t 并解析更新 数据集 d a t a s e t 是a d o n e t 的核心,它是支持a d o n e t 的断开式、分布式数据方 案的核心对象,其设计目的是为了实现独立于任何数据源的数据访问。d a t a s e t 并 不连接到数据源上,它为数据源置入其内部的数据做了一个备份,所以可以把 d a t a s e t 理解为本地的、常驻内存的小型数据库。其中,d a t a s e t 中的 d a t a t a b l e c o l l e c t i o n 属性表示零个或多个d a t a t a b l e 的集合;d a t a t a b l e 代表内存中 的一张表,它包含的d a t a r o w c o l l e c t i o n 属性、d a t a c o l u m n c o l l e c t i o n 属性和 c o n s t r a i n t c o l l c c t i o n 属性,分别代表数据表所有行、所有列和所有约束;d a t a s e t 中的d a t a r e l a t i o n c o l l e e t i o n 属性表示关系的集合,关系使在d a t a s c t 中从一个表导 航至另一个表成为可能【1 3 1 。总之,d a t a s e t 代表了一套包含表、约束和表间关系的 完整数据结合,它可以用于多种不同的数据源,用于x m l 数据,或用于管理应用 程序本地的数据,并以一致的视图呈现给用户。 ( 2 ) a d o n e t 新特性 a d o n e t 提供了一组用来连接到数据库、运行命令、返回记录集的类库,是 a s p n e t 对象与后台数据库的桥梁【1 4 1 。与a d o 相比,a d o n e t 的革新主要体现 在如下几个方面:a d o n e t 提供了对x m l 的强大支持;引入了d a t a s e t 的概念, 使我们可以用一个统一的编程模型来创建和使用数据,提高了程序的交互性和可 扩展性;此外,a d o n e t 还引入了d a t a r e a d e r 对象,可以用来高效率的读取数据, 产生一个只读的记录集。 简而言之,a d o n e t 通过一系列新的对象和编程模型,并与x m l 紧密结合, 使得在n e t 中操作数据十分方便和高效。 8 第二章相关技术介绍 2 1 2 3 n e t 应用程序开发技术 ( 1 ) a sp n e t a s p n e t 是n e t 中的网络编程结构,它使得建造、运行和发布网络应用非常 方便和高效,本课题也正是采用a s e n e t 技术来进行开发的。我们从以下几个方 面来了解a s p m 强: a s p n e t 网络表单 a s p n e t 网络表单的设计目的是使得开发者能够非常容易的创建网络表单, 它把v b 中的快速开发模型引入到网络中,从而大大简化了网络应用的开发。具体 表现在:a s p n e t 可以支持多种语言,c l r 支持的所有语言在a s p n e t 中都可以 使用;代码和内容分开,在a s p 开发中,内容和脚本交错,使得开发者对代码的 维护和升级都很困难,而a s e n e t 采用代码分离,使开发人员和设计人员能够更 好的分工合作,从而提高开发效率;另外,在a s p n e t 中通过引入服务器端控件, 将类似v b 的快速开发应用到了网络开发中来,这样大大提高了构建网络表单的效 率。同时由于服务器端控件是可扩展的,开发者还可以建造自己需要的服务器端 控件。 a s p n e t 网络服务 网络服务是下一代可编程网络的核心,它实际上就是一个可命名的网络资源, 可用来在i n t e m e t 范围内方便的表现和使用对象。在a s e n e t 中,建造和使用网 络服务只需编写一个后缀为a s m x 的文件,并在这个文件中加入想要表现的方法 即可。这种便利使网络服务的建造者不需要了解s o a p 、x m l 的细节,只需把精 力集中在服务本身,这也为独立软件服务开发商提供了很好的机会。 a s p n e t 应用框架 a s p n e t 应用不再是解释脚本,而是编译运行,再加上灵活的缓冲技术,从 根本上提高了性能。主要表现在:由于a s p n e t 的应用框架基于c l r ,因此,发 布一个网络应用,仅仅是一个拷贝文件的过程,即使是组件的发布也是如此;开 发者通过直接替换、删除文件就可以更新和删除网络应用,非常方便;通过将应 用的配置信息存放在x m l 格式的文件中,使得管理员和开发者对应用程序进行分 开管理;同时,提供了更多样的认证和安全管理方式,在可靠性等多方面都有很 大提高。 ( 2 ) w i n d o w s 的应用 传统的基于w i n d o w s 的应用( w i nf o r m s ) 仍然是n e t 战略中不可或缺的一 部分。开发基于w i n d o w s 应用程序,除了可以利用现有的技术例如a c t i v e x 控件 9 电子科技大学硕士学位论文 以及丰富的w i n d o w s 接口外,还可以基于c l r 开发、使用a d o n e t 、使用网络 服务并实现多语言支持。 2 1 2 4 通用语言规范 n e t 开发框架支持多种语言,在目前的测试版中已经支持v b 、c + + 、雠和 j s c r i p t 四种语言以及它们之间的深层次交互。也就是说,几乎所有市场上的编程语 言都有可能应用于n e t 开发框架。这种语言的开放和交互的特性正是开发者所喜 爱的。 需要特别指出的是,微软在n e t 中推出了全新的雠语言,它是微软公司专门 为n e t 量身订做的编程语言,与n e t 有着密不可分的关系【1 5 1 。这种全新的面向 对象的语言在网络方面能力强大,开发周期短,有众多开源库支持1 1 6 】,使得开发 者可以快速地构建从底层系统级到高层商业组件的不同应用。科在保证了强大的 功能和灵活性的同时,给c 和c + + 带来了类似于v b 的快速开发,并且它还针 对n e t 作了特别设计,比如雠允许x m l 数据直接映射为它的数据类型等等,这 些特性结合起来使得饼成为优秀的下一代网络编程语言1 1 7 】。与此同时n e t 对原 有的v b 和c + + 也做了很大的改进,使得它们更加适应n e t 开发框架的需求。例 如在v b n e t 中增加了继承等面向对象的特性以及结构化的出错处理等等;提供 了可管理的c + + 扩展,大大提高了利用c + + 来开发n e t 应用的效率等。 2 1 3 n e t 开发平台 v i s u a ls t u d i o n e t ( 简称v s n e t ) 是m i c r o s o f t 公司推出的具有战略性发展的 开发平台。它是为简化第三代因特网分布式环境下的应用程序开发,基于开放互 联网标准和协议之上,实现异质语言和平台高度交互性而构建的新一代计算和通 信平台。n e t 具有跨语言、跨平台、安全和支持开放互联网标准和协议等诸多优 点。 v s n e t 框架是位于操作系统之上的n e t 最重要的基础构架,它是全新的跨 语言软件开发平台,顺应了当今软件工业分布式计算、面向组件、企业级应用、 软件服务化、以w e b 为中心等大的趋势。v s n e t 框架将m i c r o s o f t 公司的所有编 程语言开发环境统一起来,组成一个多语言组件开发和执行环境,并且可以创建、 配置和运行w e b 服务以及w i n d o w s 平台的应用,其目的是便于开发人员更容易地 建立w e b 应用程序和w e b 服务,使i n t e r a c t 上的各应用程序之间可以使用w e b 服 务进行沟通。这种新的计算平台,简化了高度分布式i n t e r a c t 环境中应用程序的开 1 0 第二章相关技术介绍 发,所有的编程语言,从高层的j a v a s c r i p t 到低层的c + + 语言,都可以进行交互。 更重要的是,v s n e t 框架还可以利用互联网和企业内部网,访问整个网络上的 w e b 服务。 v s n e t 具有如下基本特点; 为w i n d o w s 和w e b 实现有效的小组开发; 使用功能强大的工具和技术创建可缩放的、可靠的企业应用程序; 基于综合的企业生命周期平台创建; 开发迅速快捷; 代码效率高,执行速度快。 目前,越来越多的应用软件都转向基于互联网开发,v s n e t 也是目前使用最 广泛的开发工具。该平台对网络服务的支持,就是致力于在应用层面加强对标准 的支持,以及增强企业、应用之间互相沟通的能力。因此,v s n e t 是开发基于 w e b 应用的一个强有力的开发平台。 2 2s o ls e r v e r2 0 0 0 复制技术 2 2 1 复制简介 s o ls e r v e r2 0 0 0 复制技术提供了一个强大的备份数据库的功能,它是在数据 库之间对数据和数据库对象进行复制、分发及同步以确保数据一致性的一组技术。 使用复制可以将数据分发到不同位置,同时还能够使用户提高应用程序性能 1 9 。 ( 1 ) 复制的优点 s o l s e r v e r 2 0 0 0 复制技术最突出的优点在于数据的随时可用性,即当用户需 要数据时,数据库随时随地都能提供,保证系统的高可用性。除此之外,它还包 括其他优点: 提高聚合读取性能; 可在多个站点保存相同数据的副本。当多个站点需要为报表应用程序读取 相同的数据或需要各个独立的服务器时,这一点十分有用; 允许更大的独立性。用户在连接断开的情况下也可以继续使用数据的副 本,然后在连接恢复时将对数据库所做的更改传播到其它数据库。 ( 2 ) 使用复制的条件 有下列需求时,复制是分布式数据环境的一种解决方案: 1 1 电子科技大学硕士学位论文 将数据复制或分发至一个或多个站点; 依照调度方式分发数据复本: 将数据更改分发到其它服务器上; 允许多个用户和站点进行更改,然后将数据修改合并到一起,进行潜在的 识别和解决冲突; 生成用户可以浏览大量数据的w e b 应用程序; 可以有选择地在订阅站点上进行更改,这些站点透明地处于发布服务器的 事务控制之下。 2 2 3 复制模型 s q ls e r v e r2 0 0 0 复制技术使用发布工业术语来表示复制拓扑中的组件和进 程。其模型由下列对象组成:发布服务器、分发服务器、订阅服务器、发布、项 目和订阅,除此之外,还有负责在发布服务器和订阅服务器之间复制和移动数据 的复制进程:快照代理程序、分发代理程序、日志读取器代理程序、队列读取器 代理程序和合并代理程序【1 9 1 。 ( 1 ) 发布服务器 发布服务器是提供数据以便复制到其它服务器的服务器。发布服务器可以具 有一个或多个发布,每个发布代表一组逻辑相关的数据。除了指定其中哪些数据 需要复制之外,发布服务器还检测事务复制期间发生更改的数据并维护有关此站 点上所有发布的信息。 ( 2 ) 分发服务器 分发服务器是作为分发数据库宿主并存储历史数据和或事务以及元数据的服 务器。分发服务器的角色根据执行的复制类型而不同。远程分发服务器是独立于 发布服务器并配置为复制的分发服务器的服务器。本地分发服务器是既配置为复 制的发布服务器又配置为复制的分发服务器的服务器。 ( 3 ) 订阅服务器 订阅服务器是接收复制数据的服务器,它订阅的是发布而不是发布中分离的 项目,并且订阅服务器只订阅其需要的发布,而不是发布服务器上所有可用的发 布。根据复制的类型和所选择的复制选项,订阅服务器还可以将数据更改传播回 发布服务器或将数据重新发布到其它订阅服务器。 ( 4 ) 发布 第二章相关技术介绍 发布是订阅的基础,它是一个数据库中的一个或多个项目的集合。这种多个 项目的分组使得同时复制指定逻辑相关的一组数据和数据库对象变得更容易。 ( 5 ) 项目 项目是指定要复制的数据表、数据分区或数据库对象。项目可以是完整的表、 某几列( 使用垂直筛选) ,某几行( 使用水平筛选) 、存储过程或视图定义、存储 过程的执行、视图、索引视图或用户定义函数。 ( 6 ) 订阅 订阅是对数据或数据库对象的复本的请求。订阅定义了将接收的发布和接收 的时间、地点。订阅的同步或数据分发可以由发布服务器( 强制订阅) 或订阅服 务器( 请求订阅) 请求。发布可以支持强制订阅和请求订阅的混合。 2 2 3 复制原理 执行和监控复制的方法有几种,而复制的进程根据选择的复制类型和选项的 差异而不同。一般说来,复制包括以下几个阶段:配置复制、生成和应用初始快 照、修改复制数据以及同步和传播数据。 ( 1 ) 配置复制 当配置发布服务器和分发服务器时,首先依据配置向导进行复制配置;配置 完毕后,可以根据数据、数据的子集和或数据库对象创建发布;创建发布后,可 以在发布服务器或订阅服务器上创建强制和或请求订阅,其中需要确定使用的复 制类型、订阅服务器要订阅的数据库类型、要发布的数据对象、快照文件存储的 位置、初始化快照进行同步的时间以及发布要使用的选项。 ( 2 ) 生成和应用初始快照 无论选择的是快照复制、事务复制还是合并复制,s q l s e r v e r2 0 0 0 都会创建 数据的初始快照,并将其保存在创建发布时选择的快照文件夹中。创建订阅以后, 应用初始快照的时间由快照代理程序调度。快照代理程序包含架构、数据和数据 库对象的快照文件,它负责将文件存储在快照文件夹中,并在分发服务器上的分 发数据库中( 用于快照复制或事务复制) 和发布数据库中( 用于合并复制) 记录 同步作业。对于快照复制和事务复制,分发代理程序将快照从分发数据库移动到 订阅服务器上的目的表,并应用复制所需的脚本、架构和数据;对于合并复制, 当合并代理程序第一次运行或为重新初始化设置订阅时,合并代理程序将快照移 动到订阅服务器,然后应用复制所需的脚本、架构和数据。 电子科技大学硕士学位论文 ( 3 ) 修改已复制的数据 根据复制类型和配置发布时所选择的选项,订阅服务器在初始快照已经复制 之后能够修改数据并将更改传播到发布服务器,然后发布服务器可以将更改传播 到其它订阅服务器。 下列复制类型和选项允许订阅服务器修改复制的数据: 合并复制; 即时更新的快照复制或事务复制; 排队更新的快照复制或事务复制。 ( 4 ) 同步和传播数据更改 同步处理数据是指在初始快照已经应用于订阅服务器之后,数据在发布服务 器和订阅服务器之间传播的过程。 对于快照复制,同步处理数据意味着在订阅服务器上重新应用快照,以便订 阅数据库上的架构和数据与发布数据库保持一致;对于事务复制,对数据进行同 步处理意味着数据插入、更新、删除和其它修改在发布服务器和订阅服务器之间 分发;对于合并复制,同步处理意味着合并在多个站点进行的数据修改、检测和 解决冲突( 如果有的话) 并将数据最终汇聚为所有站点上相同的数据值。 2 2 4 复制类型介绍 s q l s c r v c r2 0 0 0 支持三种可用的复制类型:快照复制、事务复制和合并复制。 ( 1 ) 快照复制 快照复制是完全按照数据和数据库对象出现时的状态对其进行复制和分发的 过程。快照复制不要求对更改进行连续的监视,因为对发布数据所做的更改不会 增量地传播到订阅服务器。订阅服务器用数据集的完全刷新而不是单独的事务来 进行更新。因为快照复制一次复制整个数据集,所以将数据修改传播到订阅服务 器的时间要更长一些。复制快照发布的频率通常低于其它发布类型。快照复制的 适用范围: 数据主要是静态数据,不经常更改; 一定时期内允许有已过时的数据副本; 复制小批量数据; 站点经常脱接,并且可接受高滞后时间( 数据在一个站点上更新到其在另 一个站点上更新之间的时间量) 。 1 4 第二章相关技术介绍 ( 2 ) 事务复制 事务复制将数据的初始快照传播到订阅服务器,然后,当发布服务器上发生 数据修改时,捕获个别的事务并传播到订阅服务器。 s q l s e r v e r2 0 0 0 监视i n s e r t 、u p d a t e 和d e l e t e 语句,以及对存储过 程的执行和对索引视图的更改,事务复制将对服务器的这些操作存储为事务,然 后连续或按一定的调度间隔将这些更改传播到订阅服务器,保留事务边界。例如, 如果在事务中更新1 0 0 行,则包含所有1 0 0 个数据修改的整个事务或者全部传播 到订阅服务器,或者一个也未被传播。当所有改动传播完毕后,全部订阅服务器 的值将与发布服务器的值相同。事务复制通常在下列情况下使用: 希望将数据修改传播到订阅服务器,通常在更新发生的几秒内进行; 需要事务是原子事务( 或者在订阅服务器上全部应用,或者都不应用) ; 订阅服务器通常连接到发布服务器; 应用程序不能承受订阅服务器接收更改时的高延迟。 ( 3 ) 合并复制 合并复制跟踪发生在每个服务器上的数据,并且将它们合并到一起,它允许 对参加合并复制的任意服务器进行更新【2 0 l 。首先在订阅服务器上应用初始快照, 然后s q ls e r v e r2 0 0 0 在发布服务器和订阅服务器上跟踪对己发布数据的更改。 数据在调度时间或请求时在服务器之间进行同步。由于在多个服务器上独立地进 行更新,发布服务器或多个订阅服务器可能更新同一数据。于是,合并更新时就 可能出现冲突。合并复制包含默认或自定义冲突解决选项,可在配置合并复制时 加以定义。当冲突发生时,合并代理程序唤醒调用冲突解决程序,决定向其它站 点接受和传播哪些数据。 合并复制可用的选项包括:水平和垂直筛选己发布的数据,包含联接筛选和 动态筛选,使用可选同步方,优化同步以改善合并性能,验证已复制的数据以确 保同步,以及使用可连接的订阅数据库。 合并复制适用于下列情况: 多个订阅服务器需要在不同时刻更新数据并将这些更改传播到发布服务 器和其它订阅服务器; 订阅服务器需要接收数据、脱机更改数据、然后将更改同步到发布服务器 和其它订阅服务器; 应用程序延迟请求为高或低; 站点独立很重要。 电子科技大学硕士学位论文 2 3 本章小结 本章首先介绍了n e t 以及n e t 框架,其中主要介绍了a d o n e t 的体系结构, 包括n e t 数据提供程序和数据集:其次,又详细介绍了a s e n e t 应用程序开发技 术和n e t 的开发平台v s n e t ,这些都是综合录井信息系统实现的理论技术。同 时,在本章的第二部分,介绍了s o ls e r v e r2 0 0 0 同步复制技术,其中包括复制模 型、复制原理和复制类型介绍,并对三种复制类型做了比较和分析,这是下一章 构建综合录井信息系统的重要数据库理论支持。 第三章综合录井信息系统总体设计 3 1 系统概述 第三章综合录井信息系统总体设计 3 1 1 系统背景分析 综合录井信息系统是井场综合数据平台的一个子系统。井场综合数据平台是 集井场综合采集系统,远程传输系统和基地的综

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论