J2EE环境中透明持久存储优化及在JDO中的实现

J2EE环境中透明持久存储优化及在JDO中的实现

论文摘要

透明持久技术是面向对象环境中实现持久存储的主流开发技术,如J2EE环境中的实体Bean,第三方对象关系映射工具及JDO。该类技术在企业级应用中的难点是如何在维持软件体系结构清晰的同时又能保证系统处理持久数据的性能。本文通过分析J2EE环境中几种透明持久技术各自的特点,JDO的体系结构、生命周期状态管理、API包结构及持久实现方法,提出了透明持久技术中查询处理的优化方案: 为提高查询效率,本文提出在持久实现的三层模型中业务层与持久层之间增加对象访问层,该层建立了两类数据结构:索引对象及实例缓存,因此业务层的查询可通过索引对象解析成对对象ID的查询。由于对象ID包含实例的物理存储信息,相对于JDO环境对象遍历的查询方式,该方法在索引过滤因子较小的情况下,能节省磁盘的访问时间。 针对JDO对于关联对象的连接运算效率不高,将产生较长的查询延时,本文提出Refsort-loops连接算法:通过缓存关联对象的引用,并依照重新排序后的引用序列查询关联对象。使用该算法避免了对同一引用实例或是位于同一数据块上不同记录的重复读取,并将对磁盘的随机读取方式转变为按列表预取的读取方式。通过将该算法与Hash-loops和Probe-loops连接算法的比较,并在JDO环境予以实现,证明该连接算法通过缓存外层对象的空间换取了更短的磁盘访问时间。 JDO透明持久的概念平滑地实现了对象模型和关系模型的映射,对提高面向对象应用开发效率和保持软件结构的清晰有十分重要的意义。本文通过基于JDO的分析和查询技术优化,为透明持久技术性能的改善提出了可行的方案。

论文目录

  • 摘要
  • ABSTRACT
  • 插图索引
  • 附表索引
  • 第1章 引言
  • 1.1 JDO与持久存储概述
  • 1.1.1 Java环境中基本的持久存储方案的局限性
  • 1.1.2 对象模型与关系模型阻抗不匹配
  • 1.1.3 JDO
  • 1.2 主流持久存储方案的研究现状
  • 1.2.1 CMP
  • 1.2.2 对象关系映射工具
  • 1.2.3 JDO
  • 1.2.4 关联对象的连接算法
  • 1.3 本文的主要研究内容及创新点
  • 1.3.1 主要研究内容:
  • 1.3.2 论文的创新点
  • 1.4 本文的组织结构
  • 1.5 小结
  • 第2章 J2EE环境持久存储技术
  • 2.1 持久存储
  • 2.1.1 透明持久
  • 2.1.2 对象关系映射
  • 2.2 基本的持久实现技术
  • 2.2.1 serialization(序列化)
  • 2.2.2 JDBC
  • 2.3 J2EE环境透明持久技术的分析与比较
  • 2.3.1 会话bean和JDBC
  • 2.3.2 实体Bean实现持久性
  • 2.3.3 JDO
  • 第3章 JDO技术分析
  • 3.1 JDO运行环境
  • 3.1.1 非管理环境
  • 3.1.2 管理环境
  • 3.1.3 两种使用环境之间的比较
  • 3.2 JDO架构
  • 3.2.1 典型的架构模型
  • 3.3 JDO的生命周期状态
  • 3.3.1 生命周期状态概述
  • 3.3.2 七种具体的生命周期状态
  • 3.3.3 生命周期状态转换
  • 3.4 JDO API
  • 3.4.1 javax.jdo包的结构
  • 3.4.2 javax.jdo包
  • 3.4.3 javax.jdo.spi包
  • 3.5 JDO开发流程
  • 3.5.1 创建持久类
  • 3.5.2 JDO描述符
  • 3.5.3 实现持久实例
  • 第4章 对象访问层
  • 4.1 JDO环境的对象查询
  • 4.1.1 对象遍历
  • 4.1.2 JDOQL
  • 4.2 对象访问层的设计与实现
  • 4.2.1 对象访问层的架构
  • 4.2.2 索引对象
  • 4.2.3 实例缓存
  • 4.3 基于JDO的实现
  • 4.3.1 索引类(Index)
  • 4.3.2 实例缓存(InstanceBuffer)
  • 4.3.3 业务层查询
  • 4.4 性能分析
  • 第5章 关联对象的Refsort-loops连接算法
  • 5.1 连接运算基本问题描述
  • 5.1.1 引用
  • 5.1.2 关联对象导航连接
  • 5.2 Refsort-loops算法
  • 5.2.1 Refsort-loops算法描述
  • 5.2.2 Hash-loops算法
  • 5.2.3 Probe-loops算法
  • 5.3 Refsort-loops算法在JDO中的实现
  • 5.3.1 Join类
  • 5.3.2 抽取符合条件的外层对象
  • 5.3.3 排序引用
  • 5.3.4 连接引用对象与外层对象
  • 5.4 性能分析与对比
  • 结论
  • 参考文献
  • 致谢
  • 附录A 攻读学位期间所发表的学术论文
  • 附录B 攻读学位期间所参与的主要项目
  • 相关论文文献

    标签:;  ;  ;  ;  ;  

    J2EE环境中透明持久存储优化及在JDO中的实现
    下载Doc文档

    猜你喜欢