实际实验中的服务器平台评测
来源:互联网 发布:取消数据库紧急模式 编辑:程序博客网 时间:2024/06/05 11:58
本文仅将实际操作结果展示出来,由于作者水平尚且有限,故而未能做出深度的分析,还请见谅!
/***************************************************************************************************************/
最近做一些实验,因为需要把语料导入数据库方便数据统计,因此在自己的台式机上搭建了平台,其软硬件配置如下:
项目
配置
硬件
主板
Intel G31 Series
CPU
Intel Pentium E5200 Dual Core 2.5GHz
内存
2GB DIMM x2 DDR2-667
硬盘
WD 320GB 7200rpm
软件
操作系统
Microsoft Windows 7 Professional x86
数据库
Microsoft SQL Server 2008 Express
Java运行时
Java(TM) SE 1.7.0_25-i586
在此配置下很悲剧地跑了将近三天,在程序运行初期,手工统计运行时间为120条/秒,但是到了运行末期,几乎每秒钟只能插入5条左右,这悲剧的速度实在让人捉急!
但是两天的时间消耗也并没有带来多好的结果,很多行莫名其妙的消失了(未能成功插入数据库),因此计划将平台改为服务器平台,由于手头当时有Windows Server 2008的正版授权,尽管也拿到了Windows Server 2012的正版授权,但是镜像仍然没有拿到,因此先使用了2008版本的服务器平台,在硬件配置不变的前提下,软件环境如下:
项目
配置
软件
操作系统
Microsoft Windows Server 2008 R2 Enterprise x64
数据库
Microsoft SQL Server 2008 Enterprise
Java运行时
Java(TM) SE 1.7.0_25-x64
很幸运,本次执行数据导入仅花费了将近一天的时间(约20小时)。这样的时间消耗原本已经提高了很多,但是对于仅有两百万条的记录来说,这种速度还是很低的,而且当初的情况还是出现了,只是没有那么严重,在导入过程的后期,每秒钟执行的SQL语句条数也仅在10条左右。从程序本身分析,由于调用的驱动包是Microsoft提供的sqljdbc4.jar版本,据说该驱动包本身就存在性能较低的问题,再加上本人也刚刚开始从事Java程序的开发,因此对于数据库这块还没有用批量插入这样的功能(主要是开发前期代码逻辑未能组织好),所以逐条插入的操作方式本身存在一些问题。
抛开程序的因素(因为这里使用的是同一版本的代码),仅比较软件平台,发现专职服务器的操作系统性能上还是要比普通的个人桌面操作系统要高一些,尽管用户体验不能相比(毕竟这也不是重点)。因此考虑使用微软宣称性能大幅度提高的2012版本平台进行再次测试,尽管这个测试对于我来说没有太大意义,因为将数据导入数据库才是我最终的目的,而这个目的我已经达到了,但是鉴于2012版本的平台可能会给我带来更高的查询效率,因此我认为这个想法是值得一试的。所以在再到2012版本的平台软件之后,开始进行部署:
项目
配置
软件
操作系统
Microsoft Windows Server 2012 Standard x64
数据库
Microsoft SQL Server 2012 Enterprise x64
Java运行时
Java(TM) SE 1.7.0_25-x64
太令人振奋了,在此平台上同样的数据导入任务仅用3.5小时就完成了。之所以说很幸运,一来是我已经做好了明天再查看进度的计划了,服务器上的性能计数器也能给我计时(数据导入过程中CPU的使用率较高),但是吃完晚饭回来竟然发现程序已经跑完了,而且数据一行也没有丢失(当然,在2008版本的平台上也没有出现数据丢失的现象,至于Win7平台上为什么会出现这种情况,我也表示很奇怪),这简直是一个天大的好消息。毕竟插入效率提升的话,相信查询效率也能有大幅度的提升,这对以后的工作是一个再好不过的消息了。
- 实际实验中的服务器平台评测
- java 实际应用中的实验与总结
- 网站性能评测实验
- 网吧平台使用评测
- 协议评测平台
- Wp和Win8平台在实际开发中的对比
- SilverStream 应用服务器评测
- Openfire服务器简要评测
- 戴尔R720服务器评测
- 阿里云服务器性能评测
- 个人网站服务器防火墙评测
- c#实际实验第四题
- 机器学习中的评测指标
- 中国六大B2B平台评测分析
- CloudStack、OpenStack等四大云平台评测
- 5大移动应用加固平台评测
- Windows平台下markdown编辑器使用评测
- 实际代码中的二分法
- redis学习笔记四之事务
- Java序列化Serializable和ObjectOutputStream
- 分布式数据库系列
- JS逻辑运算符
- ASP.NET MVC 2博客系列之模型验证
- 实际实验中的服务器平台评测
- iOS图片拉伸的3种常见技巧
- Android的全局键(home键/长按耳机键)详解
- hdu 4598 Difference
- 学习笔记
- php接口和异常处理
- redis学习笔记五之pipeline
- 鲍尔默在微软最大的遗憾?
- 大师的blog