欢迎光临112期刊网!
网站首页 > 论文范文 > 计算机论文 > 信息管理 > 海洋地质数据访问中间件的设计的问题和策略

海洋地质数据访问中间件的设计的问题和策略

日期:2023-01-24 阅读量:0 所属栏目:信息管理


 1 系统目标与功能
  数据访问中间件是为了解决分布式网络环境中,透明访问异构数据资源而开发的软件实现了应用领域中对象实体及属性与关系数据库中的关系表及数据之间的相互映射,从而使该中间件的使用者能够直接面对业务模型,以面向对象的方式进行业务实体的操作。
  MGDAM要能满足以下功能需求:①利用合适的分布式数据访问方法和数据提供方式,实现对不同单位海洋地质数据的分布式访问。②为上层业务应用提供统一的业务模型。③解决面向对象的开发和关系数据存储间的不匹配问题,实现对象关系映射(O/R-M)[4]。同时,基于合适的对象关系映射工具,能自动生成代码,减少开发工作量。④能快速适应数据源的变化。⑤主要满足用户信息查询的需求,不涉及进行数据的修改。
  2 系统设计
  2.1 系统架构设计 MGDAM的框架结构如图1所示,MGDAM位于异构数据源系统(数据层)和应用程序(应用层)之间,向下协调各数据源系统,向上为访问集成数据的应用提供统一数据模式和数据访问的通用接口[5]。其中数据层是实际的物理数据存储,主要是各类关系型数据库,包括Oracle、SQL Server、Access,提供关系数据模型,以关系表、字段、记录等方式提供数据。应用层是各种应用程序,包括WEB应用程序、WinForm应用程序等。
  MGDAM内部自下而上又可以分为四个逻辑层次:持久化层、业务模型层、数据服务层、服务管理层。
  持久化层[6]提供对象关系映射框架,实现对象关系映射机制;由于本项目是基于.net进行开发,则采用基于.NET的ORM映射工具NHibernate[7],利用NHibernate自动生成SQL去从数据库存取对象。
  业务模型层调用持久层以实现业务对象的持久化,提供映射后的业务对象模型,业务对象模型是统一逻辑模型的子类,符合逻辑模型定义,为数据服务层服务。
  数据服务层利用分布式通信编程框架WCF(Windows Communication Foundation)[8]构建数据服务传递数据,将业务对象模型发布为数据服务,对外部系统提供标准的应用程序接口,为下一步工作中构建企业级的面向服务架构提供服务。
  服务管理层完成寻找数据源或服务、传输查询请求、返回访问结果的任务。
  2.2 统一对象模型设计 海洋地质调查逻辑模型的设计遵循了以下原则:①体现面向对象的技术本质。采用面向对象的建模技术,以客观现实中的实体为依据进行数据组织,描述引用关系、继承、聚集以及多对多关系。②体现科学的数据管理体系。以海洋地质调查对象为数据单元,能根据不同应用的需要重新组织成所需要的数据集。③具有高度的集成性。模型覆盖海洋地质调查所有领域的对象,这些对象不按专业进行分割,而是按客观世界中对象间的联系组织,使各专业的应用软件都可以对该模型进行操作,并且其数据是相互一致的,实现不同应用软件在数据一级上的集成。典型代表如海洋地质取样数据逻辑模型,其UML类图如图2所示,包括样品站位要素类和多个对象类,如取样现场记录、样品入库记录、岩芯描述、岩芯照片、分析测试等。
 2.3 基于对象模型的数据契约设计 基于对象模型进行数据契约(Data Contract)[8]设计,主要是对对象模型中的每个对象类,通过DataContract与DataMember属性将其定义为数据契约。MGDAM基于C#语言将类的属性定义为C#的Virtual属性,并通过get和set关键字实现属性的定义。
  3 系统实现
  3.1 基于NHibernate实现对象关系映射 基于NHibernate实现对象关系映射,需要在建立持久化类基础上,创建NHibernate表映射和数据库连接。其实现的关键是创建NHibernate表映射,即建立映射文件,每个数据库表对应一个映射文件,用于生成数据模型。在映射文件中定义了数据存储到哪个数据库表,哪个属性映射到哪个字段,不同的对象如何相互关联。在运行过程中,NHibernate根据映射文件生成SQL语句[9]。如钻孔信息(BoreholeInfo)的映射文件定义如下:
    table="Borehole">
    unsaved-value="0">
  
   Z
  <!--一对多关系:BoreholeInfo有一个或多个DrillingRecords -->
  
  
  
  
  
  3.2 基于WCF实现数据服务 基于WCF实现数据服务的构建和托管,包括了以下过程:①创建WCF Service Library工程。②定义数据契约。③定义服务契约,通过ServiceContract与OperationContract属性将接口定义为服务契约。④实现服务契约,定义一个服务实现类,实现服务契约接口。⑤绑定数据服务。⑥数据服务的托管。为了方便数据服务部署,MGDAM采用了基于控制台应用程序实现数据服务自托管,其关键代码如下:
  namespace HOST
  { class Program
  { static void Main(string[] args)
  { Type serviceType=typeof(DataProviderService);
  using (ServiceHost host = new ServiceHost(serviceType))
  { ine("Data Services Starting....\r\n");
  ();
  ine("Data Services Available!\r\n");
  y(true);
  ine("Data Services Stoped!\r\n");
  ();
  }
  }
  }
  }
  3.3 分布式数据服务的访问 MGDAM的数据服务管理层负责对分布式数据服务进行注册、管理和访问,其关键技术为数据服务的动态调用,关键代码如下:
IList dataProvider =("");
  ……
  foreach (string strRemoteAddress in dataProvider)
  {DataProviderClient client = new DataProviderClient("WSHttpBinding_IDataProvider", strRemoteAddress);
  //根据已注册的数据服务动态调用
  //使用 "client" 变量在服务上调用操作。
  ….
  ();
  }
  if (docRst != null)
  return (XmlDocumentToString(docRst));
  else
  retur n "NULL RESULT";
  4 结论
  海洋地质数据访问中间件,利用NHibernate将数据从关系数据库中的表形式转化为对象,使得数据层和业务层分离,提高了系统的扩展性,同时提高了开发效率和质量;MGDAM基于WCF构建数据服务,为分布式海洋地质数据的访问提供了标准接口,使得已有信息系统和数据源能够在保持自治的基础上被充分利用起来,这样不仅节省了资源,而且也为信息化的不断发展提供了空间。
  参考文献:
  [1]林宏彬.基于中间件的数据访问服务的实现[D].华北电力大学(北京)硕士学位论文,2007.
  [2]Vijay Narayanan. Introduction to Data Services[J/OL]. http://articles/narayanan-soa-data-services,2009.
  [3]戴勤奋,苏国辉,魏合龙等.海洋区域地质调查数据库数据结构[R].青岛海洋地质研究所,2005.
  [4]张彦歆.基于.NET平台ORM技术的研究与应用[D].上海交通大学硕士学位论文,2009.
  .中国海洋大学硕士学位论文,2010.
  [6]孙卫琴.精通Hibernate:Java对象持久化技术详解[M].电子工业出版社,2005.
  [7]NHibernate-Relational Persistence for . NHibernate Reference Documentation. http://hib-docs/NHibernate/html/2006-06-03.
  .电子工业出版社,2012.
  [9]秦泽叶,高改梅.Nhibernate在实验室信息管理系统中的应用研究[J].科学之友,2010(30):40,43.

本文链接:http://www.qk112.com/lwfw/jsjlw/xinxiguanli/259015.html

论文中心更多

发表指导
期刊知识
职称指导
论文百科
写作指导
论文指导
论文格式 论文题目 论文开题 参考文献 论文致谢 论文前言
教育论文
美术教育 小学教育 学前教育 高等教育 职业教育 体育教育 英语教育 数学教育 初等教育 音乐教育 幼儿园教育 中教教育 教育理论 教育管理 中等教育 教育教学 成人教育 艺术教育 影视教育 特殊教育 心理学教育 师范教育 语文教育 研究生论文 化学教育 图书馆论文 文教资料 其他教育
医学论文
医学护理 医学检验 药学论文 畜牧兽医 中医学 临床医学 外科学 内科学 生物制药 基础医学 预防卫生 肿瘤论文 儿科学论文 妇产科 遗传学 其他医学
经济论文
国际贸易 市场营销 财政金融 农业经济 工业经济 财务审计 产业经济 交通运输 房地产经济 微观经济学 政治经济学 宏观经济学 西方经济学 其他经济 发展战略论文 国际经济 行业经济 证券投资论文 保险经济论文
法学论文
民法 国际法 刑法 行政法 经济法 宪法 司法制度 法学理论 其他法学
计算机论文
计算机网络 软件技术 计算机应用 信息安全 信息管理 智能科技 应用电子技术 通讯论文
会计论文
预算会计 财务会计 成本会计 会计电算化 管理会计 国际会计 会计理论 会计控制 审计会计
文学论文
中国哲学 艺术理论 心理学 伦理学 新闻 美学 逻辑学 音乐舞蹈 喜剧表演 广告学 电视电影 哲学理论 世界哲学 文史论文 美术论文
管理论文
行政管理论文 工商管理论文 市场营销论文 企业管理论文 成本管理论文 人力资源论文 项目管理论文 旅游管理论文 电子商务管理论文 公共管理论文 质量管理论文 物流管理论文 经济管理论文 财务管理论文 管理学论文 秘书文秘 档案管理
社科论文
三农问题 环境保护 伦理道德 城镇建设 人口生育 资本主义 科技论文 社会论文 工程论文 环境科学