论文部分内容阅读
船舶制造虚拟试验数据管理系统是利用水动力学、流体动力学、理论模型和细粒度数值算法,以高性能计算和大规模数据分析为基础,支持科研领域和工业领域的使用者,完成在不同海洋状态下,船舶受到海洋的流体动力的作用和影响的虚拟试验。船舶制造虚拟试验系统需要支持较大规模的使用者,同时、在线完成试验过程。与此同时,船舶制造虚拟试验系统在工作过程中使用大量的试验参数、模型等数据,并产生大量的试验结果数据。因此,船舶制造虚拟试验系统需要支持并发性高、大规模试验数据的分布式数据库管理系统。船舶制造虚拟试验系统中试验类型众多,不同试验的参数差别大,参数的类型多而且格式不统一,试验中生成数据格式多样,关系型数据库难以满足虚拟试验系统的数据特点和性能要求,因此采用无模式的NoSQL数据库进行数据的组织和管理。本文的目标是构建分布式的MongoDB数据库管理系统,为船舶制造虚拟试验系统提供数据管理支持。本文设计并实现了船舶制造虚拟试验数据管理系统,支持虚拟试验数据的分布式存储、查询、删除、更新、增加、聚合、Map-Reduce、索引、全文检索、审计、备份、灾备与容错、日志分析等功能。根据需求分析,将船舶制造虚拟试验数据管理系统主要分为四个模块:客户端Client模块、中间件MiddleWare模块、数据库审计CMD模块和存储单元MongoDB模块,详细说明每个模块的实现方法与核心结构,并通过流程叙述和流程图的方式辅助说明实现过程。而后重点介绍中间件MiddleWare模块与其他各模块的接口实现,原因是中间件MiddleWare模块位于系统的中心位置,其他模块彼此间互不连通,是通过中间件MiddleWare模块完成命令和操作,并获得命令结果。最后介绍测试相关内容,选择了查询和插入作为代表功能,进行以下七组测试:查询速度测试、查询吞吐量测试、插入速度测试、插入吞吐量测试、容错功能测试、文件功能测试、审计功能测试。根据测试结果可以看出,本文中设计并实现的数据管理系统达到了预期要求,完成了需求分析的要求功能,在一定规模数据量的背景下,响应时间也达到要求,是可行且可靠的。