远程海量数据读取.docx

上传人:b****3 文档编号:3768266 上传时间:2022-11-25 格式:DOCX 页数:25 大小:173.74KB
下载 相关 举报
远程海量数据读取.docx_第1页
第1页 / 共25页
远程海量数据读取.docx_第2页
第2页 / 共25页
远程海量数据读取.docx_第3页
第3页 / 共25页
远程海量数据读取.docx_第4页
第4页 / 共25页
远程海量数据读取.docx_第5页
第5页 / 共25页
点击查看更多>>
下载资源
资源描述

远程海量数据读取.docx

《远程海量数据读取.docx》由会员分享,可在线阅读,更多相关《远程海量数据读取.docx(25页珍藏版)》请在冰豆网上搜索。

远程海量数据读取.docx

远程海量数据读取

目录

 

1绪论1

1.1开发背景1

1.2研究的意义1

1.3远程海量读取的实施方案2

2操作环境3

2.1软件开发平台及相关技术3

2.2Serv-UFTPServer简介3

2.3VisualStudio技术简介3

2.3.2扩展性4

2.3.3改进软件开发生命周期4

2.3.4应用范围4

2.4Oracle9i简介4

2.4.1Oracle9i的简单操作5

3可行性与需求分析报告6

3.1可行性分析6

3.1.1市场的可行性6

3.1.2技术可行性6

3.1.3时间、设备可能性6

3.1.4系统工作量6

3.1.5文档需求7

3.2需求分析7

3.2.1系统的要求7

3.2.2开发环境7

3.2.3开发进度安排7

3.2.4系统介绍8

3.2.5系统面向的用户群体8

3.2.6系统功能说明9

3.3系统的功能性需求9

3.3.1用户界面需求9

3.3.2软硬件环境需求9

3.3.3软件质量需求10

4软件总体设计11

4.1系统概述11

4.2本系统在整个移动系统的位置功能图11

4.3设计约束12

4.4系统的操作介绍12

5软件详细程序设计14

5.1软件界面设计标准与规范14

5.1.1编写目的14

5.1.2界面设计思想14

5.1.3界面设计原则14

5.1.4界面设计样式15

5.2软件编码设计标准与规范15

5.2.1结构化编码约定15

5.2.2数据库访问约定15

5.3数据库分析与设计16

5.3.1数据库环境说明16

5.3.4数据库16

5.4系统概述17

5.4.1界面设计规范17

5.4.2主界面设计17

5.4.3前台界面调用的类19

6软件测试分析报告22

6.1测试范围与主要内容22

6.2测试方法22

6.3测试报告22

总结24

致谢25

参考文献26

1绪论

1.1开发背景

21世纪是网络的时代,是信息的时代,是多媒体的时代。

Intertnet技术的迅猛发展与普及,推动了世界范围的信息传输和信息交流。

随着Internet的发展,Internet将提供越来越多的服务。

但就目前而言,网民使用较多的主要有下列服务:

电子邮件(E-mail),文件传输(FTP),远程登录(Telnet),万维网(WorldWideWeb),新闻组(Newsgroup/Usenet)和电子公告牌(BBS),聊天系统(chat)。

Internet如此流行,其中FTP功不可没。

成千上万的数据、软件分布在世界各地,有了ftp,足不出户,只要敲几个字,就能轻而易举地得到想要的。

现在全世界已有10000多个FTP文件服务器对所有Internet用户开放,用户可以通过与Internet相连的计算机,把自己需要的文件传过来。

现在,已经有许多互联网站点都建立了可供大众访问的资料库,这些资料都可以被通过FTP获取。

匿名FTP使用户有机会存取到世界上最大的信息库,这个信息库是日积月累起来的,并且还在不断增长,永不关闭,涉及到几乎所有主题。

而且,这一切是免费的。

Internet之所以能延续到今天,是因为人们使用通过标准协议提供标准服务的程序。

匿名FTP是Internet网上发布软件的常用方法。

Internet上的很多程序是由个人创造和维护的,他们通过匿名FTP把它们分发给世界各地的人们。

也可以找到电子杂志、用户网讨论组的档案、技术文件等等。

一个经验丰富的Internet用户,将在很大程度上依赖于匿名FTP。

在目前的国内大学里,ftp也成为学生交流信息、共享资源、合作项目的重要工具。

1.2研究的意义

随着各行各业信息化建设的推进,信息技术在社会生活各个角落中广泛应用,人们逐渐认识到各种应用的核心都是数据,数据是企业最重要的并且在不断增长的财富。

如何确保数据安全的同时,提高数据的可用性,这个问题已经摆在广大用户和厂商面前。

瞬息万变的现代社会需要企业及时对外界竞争环境的变化做出快速响应,数据作为企业信息的载体,必须为用户和企业应用提供实时灵活的访问,为企业迅速做出决策提供依据。

然而,随着人类信息化程度的提高,数据已超出它原始的范畴,它包含各种业务操作数据、报表统计数据、办公文档、电子邮件、超文本、表格、报告以及图片、音视频等各种数据信息。

因此,人们用海量数据来形容巨大的、空前浩瀚的、还在不断增长的数据。

任何一个地方的企业都正在努力面对他们公司的数据库由于规模扩大产生的沉重负担,提高海量数据访问能力和业务分析能力的要求也变得越来越紧迫。

海量数据是今天商业面对的一个现实,企业的数据库在规模上不断增长,虽然使用的技术也在不断增加,并且变得越来越复杂,但是数据增长仍保持着着惊人的速度。

海量数据的存在具有必然性,企业的任何一个部门,都需要对海量数据进行操作。

1.3远程海量读取的实施方案

本软件涉及到了FTP, 对于FTP大家肯定不陌生。

FTP(FileTransferProtocal),是文件传输协议的简称。

用于Internet上的控制文件的双向传输。

同时,它也是一个应用程序(Application)。

用户可以通过它把自己的PC机与世界各地所有运行FTP协议的服务器相连,访问服务器上的大量程序和信息。

而本软件则是在对FTP正确连接的情况下,对应用服务器上的数据进行判断和读取,由于写入数据库比读取数据要慢的很多,所以在读取的过程中用到了缓冲技术,即在写入数据库之前先把数据读到服务器磁盘中,之后再对数据进行写入操作,即再把读取过来的数据写入到数据库中,这样做可以减少对内存的要求。

通过对本系统的测试得出:

从服务器上读取100万条数据仅需20-30秒,达到了本系统的设计目标;另外对客户端的利用也非常高。

 

2操作环境

2.1软件开发平台及相关技术

网络服务器:

Serv-UFTPServer

办公系统软件:

Microsoftoffice2000

开发工具:

VisualStudio2005

数据库系统:

Oracle9i

2.2Serv-UFTPServer简介

在网上做过软件下载的人都知道,建立一个FTP下载服务器相对比较简单,一般用WIN2000下自带的IIS就能够做到,但IIS在功能上都有好多不尽人如意的地方,使用简单的FTP服务器构建软件Serv-UFTPServer则简单易用,Serv-U由两大部分组成,引擎和用户界面。

Serv-U引擎(ServUDaemon.exe)其实是个常驻后台的程式,也是Serv-U整个软件的心脏部分,它负责处理来自各种FTP客户端软件的FTP命令,也是负责执行各种文档传送的软件。

在运行Serv-U引擎也就是ServUDaemon.exe文档后,我们看不到任何的用户界面,它只是在后台运行,通常我们无法影响它,但在ServUAdmin.exe中我们能够停止和开始它。

Serv-U引擎能够在任何Windows平台下作为一个本地系统服务来运行,系统服务随操作系统的启动而开始运行,而后我们就能够运行用户界面程式了。

在WinNT/2000系统中,Serv-U会自动安装后为一个系统服务,但在Win9x/Me中,需要在“服务器”面板中选择“自动开始”,才能让它转为系统服务。

Serv-U用户界面(ServUAdmin.exe)也就是Serv-U管理员,它负责和Serv-U引擎之间的交互。

它能够让用户配置Serv-U,包括创建域、定义用户、并告诉服务器是否能够访问。

启动Serv-U管理员最简单的办法就是直接点接系统栏的“U”形图标,当然,也能够从开始菜单中运行它。

2.3VisualStudio技术简介

VisualStudio是微软公司推出的开发环境。

是目前最流行的Windows平台应用程序开发环境。

目前已经开发到9.0版本,也就是VisualStudio2008。

VisualStudio可以用来创建Windows平台下的Windows应用程序和网络应用程序,也可以用来创建网络服务、智能设备应用程序和Office插件。

⏹2.3.1集成的工具

VisualStudio的成功已被证实,即开发人员偏爱一个具备对他们需要的工具提供接口的集成开发环境。

通过将开发人员在开发环境中需要的测试和性能工具(例如,单元测试、代码分析和性能分析)合并在一起,VisualStudioTeamSystem也期待着这种成功。

这使开发人员能够在生命周期的较早阶段就改善其代码的质量,而无需中断他们的工作。

通过尽早地为开发人员提供他们需要用于识别和解决质量问题的工具,更多的产品缺陷就能够在它们还未构成危害之前即被发现并解决。

2.3.2扩展性

尽管存在一些基本的工具可组成SDLC工具(例如,架构师工具、测试工具等),但是SDLC并未限制住工具的数量。

当集成支持SDLC的工具时,团队会发现在提高团队效率,同时降低复杂性这些方面的好处。

VisualStudioTeamSystem将提供基本的平台,让所有提供商能够以一种普通的、公众可理解的形式交换信息。

这理所当然地铸造了一个充满活力的合作伙伴体系,合作伙伴能够构建完全集成的工具,简化构建IT解决方案的复杂性,以及推动信息交流和鼓励团队协作。

要获得跨UI、数据和过程集成的最大价值,就需要扩展性。

扩展性促成交互性。

2.3.3改进软件开发生命周期

当Microsoft首先发布VisualBasic之时,就通过降低其复杂度从而使Windows软件开发得以广泛应用。

利用VisualBasic6.0,Microsoft让数以百万计的开发人员能够快速开发客户端/服务器应用程序。

最近,利用VisualStudio.NET,Microsoft又为开发人员提供了轻松开发分布式应用程序的工具与技术。

通过VisualStudio2005TeamSystem,Microsoft正在解决日益增加的应用程序复杂性及其设计、开发和部署所必需的生命周期问题。

这一点是通过提供必需的工具和指导从而能够预见、重复结果(无需付出生产效率和创新的代价)实现的。

2.3.4应用范围

VisualStudio2005,在Windows的操作系统下运行。

2.4Oracle9i简介

甲骨文公司(Oracle)是世界上最大的企业软件公司,向遍及145多个国家的用户提供数据库、工具和应用软件以及相关的咨询、培训和支持服务。

甲骨文公司总部设在美国加利福尼亚州的红木城,全球员工超过40,000名,2003年财政收入达到95亿美元,是《财富全球500强》企业之一。

甲骨文公司1989年正式进入中国市场,成为第一家进入中国的世界软件巨头,标志着刚刚起飞的中国国民经济信息化建设得到了甲骨文公司的积极响应,甲骨文首创的关系型数据库技术也从此开始服务于中国用户。

Oracle9i是业界第一个完整、简单的用于互联网的新一代智能化的、协作各种应用的软件基础架构。

Oracle9i实际上是指Oracle9iDatabase,Oracle9iApplicationServer和Oracle9iDeveloperSuite的完整集成。

随着软件逐渐开始转变为一种托管服务(hostedservices),具有internet上的高伸缩性能的、智能化的、和可靠的Oracle9i将成为高质量的电子商务服务实现的关键软件。

2.4.1Oracle9i的简单操作

(1)装Oracle9i之后,以system登陆:

SQL>createuserqinxingyiidentifiedbyhust用户已创建

SQL>grantconnect,resourcetoqinxingyi授权成功。

注:

qinxingyi为用户名,hust为密码。

以上的创建用户过程可以使用户的表中没有了系统自动产生的n多临时表。

(2)Oracle数据表的建表语句connsystem/manager

grantconnect,resourcetoaidentifiedbya;

grantconnect,resourcetobidentifiedbyb;

conna/a

create table a(a number);

insert into a values

(1);

insert into a values

(2);

insert into a values(3);

create table b(a number,b varchar2(10));

insert into b values(1,'1111');

insert into b values(2,'2222');

insert into b values(3,'3333');

commit;

3可行性与需求分析报告

3.1可行性分析

3.1.1市场的可行性

随着我国科技的发展,20年前,中国开始引入移动通信技术;20年间,中国的移动通信产业经历了从无到有、从小到大、从弱到强的艰苦历程。

在经过这飞速发展的20年后,中国移动通信已经形成了完整的产业链,成为世界上移动用户最多的国家。

而推动这一切的,正是移动通信技术不断的发展。

纵观我国移动通信技术的演进,可以分为三个时期:

模拟时期、数字时期和数据时期。

然而在这20年的时间里人们的生活水平也得到了很大的提高,经济收入更是一高接一高,这样让通信事业得到了很大的发展,但是通信记录的增加也是令人不可思议,数据的急剧增加让厂商们不得不考虑处理办法了。

这样如何快速地把一天中人们的通信记录记下来就成了一个问题,而我们的这个海量数据读取无疑是对他们这样的商家来说是一个良策。

3.1.2技术可行性

系统的性质是基于VisualStudio的开发软件,因而海量数据读取系统设计的核心是对如何快速读取数据代码的考虑,提供一个能在瞬间把海量数据读取的可行性办法,即是用一个缓存池把批量读取过来的数据进行处理,因而该系统的实现在技术上是可行的。

3.1.3时间、设备可能性

系统设计与开发工作大概2到3个月,学校机房和宿舍均有电脑,有充足的实验设备,本人能够按时完成任务。

3.1.4系统工作量

该系统主要是由我一人完成,所以工作量相对还是很大.

3.1.5文档需求

依据国家《计算机软件产品开发文件编制指南》和《现代软件工程》的理论与原则编制标准的软件技术文档。

3.2需求分析

3.2.1系统的要求

(1)软件系统要完成的总体目标是什么?

在需求分析和资料搜集的基础之上,进行系统分析设计,本软件要求要从应用服务器上读取100万条的数据记录之后,再对读取的数据进行插入数据库的操作,要求把100万数据记录插入本地数据库中仅需20-30秒的时间,最终能实现了远程海量数据的读取。

(2)软件系统在可靠性和质量上有何具体要求?

本软件是为移动公司开发的,本软件在保证海量数据快速插入数据库中的同时,也要保证数据的准确性和有效性,对于质量来说经过一次次的反复测试,相信质量应该算很高。

(3)开发该软件系统是否有有效的技术?

本套软件前台是用VisualStudio2005提供的FTP类库,后台数据库是基于Oracle9i技术.技术上没有任何的问题。

(4)软件系统将来可能进行哪种扩充?

本系统开发时考虑到了以后的可扩展性,所以专门做成了类库,只需提高接口参数即可集成到任何别的系统中。

对于本系统来说,只是对某一种数据库进行操作。

以后可以扩充成能够集成对于不同的数据库来进行操作。

3.2.2开发环境

前台开发环境:

VisualStudio2005

后台数据库环境:

Oracle9i

3.2.3开发进度安排

12月10日毕业论文(设计)任务书,明确目标。

12月20日进行需求分析和学习软件工具,完成文献综述和外文翻译。

03月01日完成ftp相关学习。

主要采用Serv-UFTPServer等工VisualStudio技术。

03月15日设计远程海量数据读取模型。

以及分成那几个重要的功能来进

行突破。

03月20日完成数据库的学习和应用。

03月26日继续对数据库进行学习和研究。

04月01日主要开始编写代码。

04月18日继续编写代码部分。

04月28日测试软件部分,以及修改不完善的部分。

04月30日开始编写论文。

3.2.4系统介绍

本系统是针对移动公司而做,本系统需要对应用系统产生的海量数据进行读取,其中,服务器端除了需要本软件外,还需要Oracle数据库来进行存储数据,应用服务器端需要安装Serv-UFTPServer,操作系统选择人们常用的WindowsXP。

本系统采用服务器IP的唯一性进行管理,操作简单明了易用,界面也美观大方,但是由于本人能力有限本,本软件还有很多地方需要改进,希望优秀人士给予指导和建议。

本系统计划于2007年12月初开始着手准备,2008年4月底初步完成开发工作,其余论文工作根据时间安排逐次进行。

3.2.5系统面向的用户群体

据有关人士统计,需要对海量数据进行处理的公司有很多,例如:

中国移动公司、中国各大银行等。

3.2.6系统功能说明

系统功能如图3-1所示

图3-1系统功能流程图

 

3.3系统的功能性需求

3.3.1用户界面需求

简洁、易用、易懂、美观、大方、标准,具备一定的兼容性。

3.3.2软硬件环境需求

软件环境:

兼容当前主流操作系统WindowsXP。

硬件环境:

P4以上计算机,内存在1G以上,拥有modern或网卡等上网设备。

3.3.3软件质量需求

易用、健壮、兼容性好、运行稳定、有一定安全保障。

4软件总体设计

4.1系统概述

系统是让用户安全登录服务器,由于IP地址的唯一性,以及用户拥有的用户名和密码,确保了用户登陆的准确性和安全性,所以本软件的安全性是不容质疑的;另外端口号的专一性也保证了数据读取通道的畅通,这样也间接地保证了快速读取海量数据的安全性。

读完数据之后,本软件就会把数据保存到服务器硬盘,然后写入到相关数据库的表中去。

写入数据库之前,本系统也将对其进行用户名和密码的判断,以确保其插入数据的安全性和有效性。

数据库的安全性就是指数据库中数据的保护措施,一般包括登陆的身份验证管理、数据库的使用权限管理和数据库中对象的使用权限管理三种安全性保护措施,就本软件而言我采用的是第一种措施。

在写入数据库中时本软件考虑到了有效利用的问题,首先把读取的数据转换成Oracle批量导入数据的控制文件和Oracle批量导入数据的Bat文件。

4.2本系统在整个移动系统的位置功能图

如图4-1所示,说明了本软件在整个移动系统中功能。

图4-1本软件功能图

 

4.3设计约束

系统将实现应用服务器产生的数据、服务器数据库的全面管理,而对数据的快速读取是系统的核心部件,怎样实现快速的读取,而又快速写入服务器数据库,是本系统设计的难点。

本系统必须实现对数据的分批处理,以及当读入到本地时进行的缓存操作。

系统的设计原则如下:

可靠性:

系统应保证长期安全地运行。

系统中的软硬件应满足可靠性设计要求。

安全性:

系统应具有必要的安全保护和保密措施,有很强的应对计算机犯罪和病毒的防范能力。

容错性:

系统应具有较好的容错能力,有较强的抗干扰性。

对各类用户的误操作应有提示的能力。

适应性:

系统应对不断发展和完善的统计核算方法、调查方法和指标体系具有广泛的适应性。

可扩充性:

系统的软硬件应具有扩充升级的余地,不可因软硬件扩充、升级或改型而使原有系统失去作用。

实用性:

本软件采用成熟而实用的技术,使系统建设的投入产出比达到最高,能产生良好的社会效益和经济效益。

先进性:

在实用的前提下,应尽可能跟踪国内外最先进的计算机软硬件技术、信息技术及网络通信技术,使系统具有较高的性能指标。

易操作性:

贯彻面向最终用户的原则,建立友好的用户界面,使用户操作简单直观,易于学习掌握。

4.4系统的操作介绍

本系统有两个主要操作,如图4-2所示,这是FTP的连接操作。

图4-2系统操作模块图(FTP连接)

如图4-3所示,这是把数据插入数据库的连接操作。

图4-3数据库操作模块图(客户端数据库)

 

系统功能介绍:

系统是让用户安全登录服务器,由于IP地址的唯一性,以及用户拥有的用户名和密码,确保了用户登陆的准确性和安全性,所以本软件的安全性是不容质疑的;另外端口号的专一性也保证了数据读取通道的畅通,这样也间接地保证了快速读取海量数据的安全性。

读完数据之后,本软件就会把数据保存到本地硬盘,然后写入到相关数据库的表中去。

写入数据库之前,本系统也将对其进行用户名和密码的判断,以确保其插入数据的安全性和有效性。

服务器数据库:

这部分主要是在连接服务器之后对其数据进行读取而设计的,首先把从应用服务器上读取下来的数据进行操作,然后写入到相关数据库的表中去。

写入数据库之前,也要对其进行用户名和密码的判断,以确保其安全性和数据的有效性。

数据库的安全性就是指数据库中数据的保护措施,一般包括的登陆的身份验证管理、数据库的使用权限管理和数据库中对象的使用权限管理三种安全性保护措施,就本软件而言我采用的是第一种措施。

5软件详细程序设计

5.1软件界面设计标准与规范

5.1.1编写目的

本系统制定界面设计标准规范的目的是为了规范和统一软件界面设计制定软件界面设计标准与规范。

易用性是本软件的优点,按钮名称易懂,用词准确,摒弃模棱两可的字眼,能望文知意。

理想的情况是用户不用查阅帮助就能知道该界面的功能并进行相关的正确操作。

对于本系统而言虽然只有几个界面,但是在界面的设计方面也做了很多思考。

如对界面上不同的功能进行了整合区分,FTP连接信息和数据库信息分开设计,让操作者一目了然。

5.1.2界面设计思想

标准化是本系统的特点,本系统采用了VisualStudio2005自带的搭配方案。

无论是控件使用,提示信息措词,还是颜色、窗口布局风格,遵循统一的标准,做到真正的一致。

这样得到的好处:

(1)使用户使用起来能够建立起精确的心里模型,能够很容易地熟练使用本软件。

(2)降低培训、支持成本,支持人员不会行费力逐个指导。

(3)给用户统一感觉,不觉得混乱,心情愉快,支持度增加。

5.1.3界面设计原则

简单易用、简洁明了、兼容性好、标准、规范。

5.1.4界面设计样式

如图5-1所示,这是本系统的操作界面。

图5-1界面设计样式图

5.2软件编码设计标准与规范

5.2.1结构化编码约定

编码应清晰、可读性好,运用缩进、空行,结合大小写区别等方法保持程序结构良好。

对于数据库的代码,是预先知道服务器上数据类型和结构,而本软件只是对其进行读取和写入预先已经设计好的数据库和相关的表.。

5.2.2数据库访问约定

ActiveXDataObjects(ADO).NET是一种把基于Microsoft.NET的web应用程序以及MicrosoftWindows应用程序连接到诸如SQLServer数据库或XML文件等数据源的技术。

ADO.NET是.NETFramework类库中包含的一整套数据访问技术,用于提供对关系数据和XML的访问,主要是用于连接和处理数据源的类(包括Con

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 自然科学 > 物理

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1