论文首页哲学论文经济论文法学论文教育论文文学论文历史论文理学论文工学论文医学论文管理论文艺术论文 |
(3) 面向对象编程
PHP提供了类和对象。基于web的编程工作非常需要面向对象编程能力。PHP支持构造器、提取类等。
(4) PHP可伸缩性
传统上web文档的交互作用是通过CGI来实现的。CGI程序的伸缩性不很理想,因为它为每一个正在运行的CGI程序开一个独立进程。解决方法就是将经常用来编 写CGI程序的的解释器编译进你的web服务器(比如mod_perl,JSP)。PHP就可以以这种方式安装,虽然很少有人愿意这样以CGI方式安 装它。内嵌的PHP可以具有更高的可伸缩性。
2.2 MYSQL数据库简介
MySQL是最流行的开放源码SQL数据库系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型,它具有很多优点:
) MySQL是一种数据库管理系统。
(2) MySQL是一种关联数据库管理系统。
(3) MySQL软件是一种开放源码软件。
(4) MySQL数据库服务器具有快速、可靠和易于使用的特点。
(5) MySQL服务器工作在客户端/服务器模式下,或嵌入式系统中。
(6) 有大量可用的共享MySQL软件。
MYSQL最大表尺寸增加到了65536TB(2567 – 1字节),因此MySQL数据库的最大有效表尺寸通常是由操作系统对文件大小的限制决定的,而不是由MySQL内部限制决定的,win32 w/ FAT/FAT32最大有效表尺寸2G/4G,win32 w/ NTFS最大有效表尺寸2TB(可能更大),Linux 2.4+最大有效表尺寸4TB(ext3)。
MySQL服务器采用了多层设计和独立模块。在此列出一些:
(1) Replication(稳定)
大量使用复制功能的服务器均处于生产模式下,结果良好。
(2) InnoDB表(稳定)
自3.23.49版以来,InnoDB事务存储引擎一直很稳定。InnoDB正用于大型、重负荷生产系统。
(3) BDB表(稳定)
Berkeley DB码十分稳定,但在MySQL服务器中,我们仍在改进BDB事务存储引擎。
(4) 全文本搜索(稳定)
全文本搜索的使用范围十分广泛。在MySQL 4.1中,增加了重要的特性增强。
(5) MyODBC 3.51(稳定)
MyODBC 3.51采用了ODBC SDK 3.51,并广泛用于生产活动中。某些出现的情况看上去与应用程序相关,与ODBC驱动程序或底层数据库服务器无关。
(科教范文网http://fw.ΝsΕΑc.com编辑)
3 需求分析
3.1 功能需求
由于网络资源的越来越丰富,分布的位置越来越广泛,不局限与某一个狭小的,因此用户对散布在各地的文档的检索工作变得愈加困难。如何准确快速地从广泛的网络资源中找到我们需要的信息已经成为现在网络所面临的一大难题。
当前搜索引擎主要有三种,全文搜索引擎、目录搜索引擎、元搜索引擎;这三种搜索引擎都不能解决我们所需要对主题信息的搜索,因此,要解决这一问题就需要另外构建一种新的搜索引擎,它能为人们快速搜索所需要的具有一定的专业性的信息。
3.1.1 系统流程图
首先建立各种分类,对应不同的主题;然后建立切分、词典,利用词典词条对搜索回来的web文档进行词条的切分和词频统计,并根据词频分布生成各web文档的特征向量和初始阀值,建立索引;在抓取web文档的时候要考虑要抓取的web文档是否已经被抓取过,当需要抓取的URL很多时,这是非常值得考虑的,这样可以节省时间和空间。当用户进行查询是,系统接受用户输入,对输入的查询信息进行处理,然后到数据库里搜索信息,最后把搜索的结果采用分页方式返回给用户,用户根据需要点击链接,其过程如图3.1所示。
内容来自www.nseac.com
图3.1系统流程图
3.1.2 功能模块
这个搜索引擎系统的主要目的是为用户提供信息搜索,因此,系统由两个大模块组成,一个是搜索模块,另一个是管理模块,管理模块又分为八个子部分,具体模块划分如图3.2所示。
图3.2系统模块图
(1) 搜索模块
搜索模块为用户提供搜索功能,用户直接在搜索页输入需要搜索的信息,然后系统处理用户输入,对数据库进行搜索,然后把得到的结果显示给用户。
(2) 站点列表模块
站点列表模块列出管理员指定搜索的URL,管理员可以对这些URL的抓取属性进行编辑,使得对该URL的抓取可以得到很好的控制。
(3) 添加站点模块
添加站点模块用来管理需要抓取的URL,管理员可以从这里添加新的URL。
(4) 类别列表模块
类别列表模块用来显示系统中也存在的类别,在这里可以对类别属性进行编辑。
(5) 添加类别模块
添加类别模块用来添加新的类别,管理员可以从这里直接为系统增加新类别。
(6) 索引模块
索引模块每次只对单个URL进行抓取,而在站点列表中可以一次要求抓取多个UR。
(7) 清除模块
清除模块主要是对站点列表、数据库等进行彻底清除。
(8) 统计模块
统计模块对URL、关键词等进行相关统计工作。
3.2 性能需求
由于搜索引擎对web文档抓取和处理用户的搜