- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
一种基于Hibernate并行查询方法
一种基于Hibernate的并行查询方法
为了保证车载动力电池的安全运行,全面掌握其运行状态,电动汽车远程监控系统已被各个厂家越来越重视,如何对监控产生的海量数据进行安全快速的查询是远程监控中的重要研究课题。本文着重介绍了一种基于Hibernate框架针对监控车辆的海量数据进行并行查询的设计思路、关键技术分析以及具体实现手段。通过将海量数据在ORACLE数据库中分区存储,查询终端经Hibernate服务器并行查询数据,保证了数据库安全的同时缩短了查询所需时间,达到了预期效果。
【关键词】远程监控 Hibernate 数据库 并行查询
电动汽车远程监控系统已被各个厂家越来越重视,而对监控产生的海量数据进行安全快速查询是远程监控中的重要研究课题。
基于Hibernate的远程监控数据并行查询目的在于:
(1)确保数据库安全;
(2)确保海量数据存储合理;
(3)提高海量数据查询效率。
本课题实现了通过中间Hibernate服务器将查询终端和数据库服务器间安全连接,通过按时间分区,保证了数据存储合理及在此基础上的并行查询算法的实现。
1 基于Hibernate的远程监控系统设计
架构图如图1,下面详细介绍模块。
1.1 远程监控终端采集模块
用于采集动力电池运营数据并将数据上传。
1.2 数据库集群
数据处理中心,负责存储查询数据,采用的是ORACLE11gR2 RAC版本。
1.3 远程监控系统应用服务器集群
数据接入服务器,负责接收远程终端采集来的数据。
1.4 Hibernate中间服务器模块
响应客户端的数据操作,保证数据安全。
1.5 客户端模块
包括pc,手机端等,通过中间服务器和数据库进行数据交换。
基于Hibernate的并行查询主要研究的是数据库安全和快速查询响应,因此远程监控终端采集模块和应用服务器集群不在此文的研究之中。
2 关键技术的研究
本项目中通过将数据库按时间进行分区,使海量数据合理存储;在查询端和数据库服务器集群间添加Hibernate框架中间服务器,保证数据安全;在客户端用并行查询的算法提高查询效率。
2.1 数据库分区
在存有海量数据的表格中,查询效率非常的低,进行按天分区后,查询时间大为缩短但还是未达到预期要求,因此我们提出了在分区基础上的并行查询。
2.2 Hibernate中间服务器
传统三层编程将客户端直连数据库,造成了安全隐患。而使用Hibernate架构,采用中间服务器处理客户端请求,避免了将数据服务器直接暴露在公网上,确保了数据安全。
2.3 并行查询算法
本项目并行查询基于数据库分区和Hibernate架构进行。在数据库中,我们将记录按天进行分区,为并行查询算法提供了可行基础。
数据库中的记录虽不断增加,但每天的记录是有限的,分区数据具备可操作性。如查询某辆车某月的数据,可以将数据查询拆分成30个并发线程,每个线程只查询一天的记录,将查询时间压缩至1天。
图2是两种查询方式的流程对比。
但长时距数据,不可能去开启无限线程,本项目采用了给定线程数上限按需循环去解决这个矛盾。在单个分区内进行查询效率最高,并行查询就是将所有的查询从跨分区的需求拆分为针对各个单独数据分区的查询,使查询效率大为提高。
本项目客户端采用C#开发,以单体信息查询为例,部分代码示例如下:
2.3.1 首先设置线程上限。
private long totalCount = 0; //存放计算结果
private readonlyintthreadCounts = 30; //处理的线程数
private static object locker = new object(); //线程锁
staticTCellInfoDao()
{
intminWorker, minIOC;
ThreadPool.GetMinThreads(out minWorker, out minIOC);
}
2.3.2 计算并发线程实际需要的数量,开启线程,在同步完成后给出结果统计
/// 并发计算count(*)
///
/// 车辆ID
/// 用户ID
/// 开始时间
/// 结束时间
/// 返回结果
public long QueryCellTotalCounts(string bwtid,stringuserID, DateTimebeginTime, DateTimeendTime)
{
Listmanua
您可能关注的文档
- 一次性根管充填治疗急性牙髓炎临床分析.doc
- 一次性根管与分次根管治疗牙髓根尖周病临床疗效观察.doc
- 一次性根管充填治疗慢性牙髓炎伴疼痛临床效果分析.doc
- 一次性根管充填治疗隐裂牙伴牙髓炎临床价值探析.doc
- 一次性根管治疗乳牙牙髓根尖周病临床疗效分析.doc
- 一次性根管治疗及全冠修复治疗隐裂牙效果分析.doc
- 一次性根管治疗后即刻桩核根帽修复效果分析.doc
- 一次性根管治疗在临床中应用.doc
- 一次性根管治疗对老年人磨牙感染根管疗效分析.doc
- 一次性根管治疗残髓炎近期疗效观察.doc
- 174页PPTXX集团管理体系优化整合咨询项目预诊断报告及项目建议书.PPT
- 134页PPT华为项目管理:发展历程、交付方法、文化驱动、团队管理、价值交付与数字化转型的项目管理综合体系-文库完整版.pptx
- 190页PPTIBM 管理咨询顾问能力进阶手册.pptx
- 688.【组织架构】197页PPT医药企业组织结构与流程设计报告.pptx
- 《社会学概论》(第2版)考研配套试题库(含名校真题).pdf
- 新疆建筑安全员B证考试复习题库大全-上(单选题汇总).pdf
- 二级建造师《建设工程法规及相关知识》近年考试真题试题库汇总(含答案.pdf
- 2025年二级建造师《建设工程法规》考前强化必背试题库(浓缩300题).pdf
- 统编版语文五年级上册全册优质版教案.doc
- 毛概结课考试题目及答案.doc
最近下载
- 2025年高级审计师《高级审计实务》考试题库 .pdf VIP
- 12251218各系统培训材料5、4a-系统操作指南.pptx
- 甘肃省突发公共卫生事件应急预案研究_张娜.pdf VIP
- 湘教版(2019)高中地理必修第一册知识点复习提纲详细版(实用,必备!).docx VIP
- (人教2024版)英语七年级上册全册语法总复习(知识点+练习) 学生版+解析版_可搜索.pdf VIP
- 小学科学优秀教学设计与案例分析.pdf VIP
- 中国非遗文化的传承与创新之路概述PPT.pptx VIP
- 大疆无人机精灵Rro+快速使用指南.pdf VIP
- 小学课后延时服务工作的研究.pdf VIP
- iMeter 7A用户使用说明书V1.0.pdf VIP
文档评论(0)