数据基于Hadoop云计算平台的资源搜索技术开发

云搜索  时间:2021-02-28  阅读:()

基于Hadoop云计算平台的资源搜索技术开发

目录

1. 1 Hadoop体系架构

1. 2 HDFS——分布式文件系统

1. 3 MapReduce——映射、化简编程模型

1.4 HBASE——分布式数据存储

2系统设计

2. 1系统体系结构

1 数据存储计算层该层由Hadoop平台实现

2 逻辑层该层是实现数据存储计算层与表示层的纽带

3 表示层该层是实现系统与用户的一个人机接口

2. 2数据整合设计

2. 3网络爬虫设计

1 假设[A  [吧b1

2 构造向量[ x0

3实验与数据分析

3. 1开发平台及其开发工具

3. 2实验结果分析

4结束语

正文

互联网的出现改变了我们的工作学习乃至生活方式其丰富的资源为我们提供了大量的信息然而由于缺乏行之有效的整合标准和手段 目前这些资源的分布呈现高度分散状态 内容庞杂无序结构化程度低用户往往难以快速准确地获取自己需信息。所以研究和设计出针对资源搜索的系统平台 以提高用户获取资源信息的速度和准确度有着非常重要的意义。而Hadoop作为新一代的分布式计算框架非常有利于处理“网络大数据” 。 中国电信、 中国移动、淘宝、

Facebook和Yahoo均有成功应用。

1 Hadoop概述

Apache Hadoop是一个用java语言实现的软件框架在由大量计算机组成的集群中运行海量数据的分布式计算 由pig HIVEChukwa ZooKe eper HBASE MAPre duc e HDFS等组成。如图1所示。本资源搜索系统主要使用了HD FS HBASE MAP r e duc e。

1. 1 Hadoop体系架构

图1 Hadoop体系架构

1.2 HDFS——分布式文件系统

HDFS是一个高度容错性的分布式文件系统能提供高吞吐量的数据访问非常适合大规模数据集上的应用其主要由Client、

DataNode和NameNode三部分组成其中 Cl i ent是面向用户的分布式文件系统应用程序 DataNode是存储在本地文件系统中的文件块单元在存储文件块的meta-data的同时 向NameNode周期发送所存储的文件块信息 NameNode是分布式文件系统中的管理者负责管理文件系统的存储块复制集群配置信息命名空间等。

1.3 MapReduce——映射、化简编程模型

MapReduce是一种编程模型用于大规模数据集的并行运算。 Map

映射和R e du c e 化简 采用分而治之思想先把任务分发到集群多个节点上并行计算然后再把计算结果合并从而得到最终计

算结果。多节点计算所涉及的任务调度、负载均衡、容错处理等都由MapReduce框架完成。

1.4 HBASE——分布式数据存储

HBase—Hadoop Database是一个高可靠性、高性能、面向列、可伸缩的分布式存储系统 HBase位于结构化存储层 HDFS为HBas e提供了高可靠性的底层存储支持 MapReduce为HBase提供了高性能的计算能力 Zookeeper为HBase提供了稳定服务和failover机制 Pig和Hive还为HBase提供了高层语言支持使得在HBase上进行数据统计处理变的简单。

2系统设计

2. 1系统体系结构

图2系统体系结构图

在browseerver三层体系结构下为了真正实现数据存储、计算、用户体验的分离将资源搜索系统分成三个独立的层。分别是数据存储层、逻辑层、表示层。

1 数据存储计算层该层由Hadoop平台实现选用Hadoop组件中的HBase作为存储数据库实现分布式数据存储该层主要是负责存储整个搜索引擎的底层结构化数据主要包括两个大规模的数据库一是面向客户查询的信息的读取二是面向爬虫所得页面与抽取

信息的写入为了提高存储Capacity和计算效率在Hadoop平台中选择多个数据节点DataNode。

2 逻辑层该层是实现数据存储计算层与表示层的纽带对关键算法如搜索算法、聚焦爬虫等的设计至关重要在设计中特别要考虑算法的可扩展性、可重用性、可维护性和健壮性等。

3 表示层该层是实现系统与用户的一个人机接口可以生成用户访问的Web页面 向普通用户提供查询界面 向管理员提供后台服务页面。

2.2数据整合设计

Hadoop云计算平台是利用MapReduce进行切分和整合数据MapReduce对数据进行整合的逻辑模型如图3所示。

图3 MapReduce的逻辑模型图

在进行MapReduce操作时首先对MapReduce程序运行前的参数进行配置根据输入数据的大小和参数的设置把数据分成M个分段 每个分段对应一个map线程然后编写M ap函数将分段中的数据作为Map的输入实现[Map in_key in_value ->{ keyjvaluej |j=0. . .M-1} ] 接着 Map的输出到Reduce在map端完成内存->排序->写入磁盘->复制在reduce端完成映射到reduce端分区->合并->排序最后将排好序的key/value作为Reduce

的输入经过Reduce计算输出结果实现[Reduce key

[value1 . . .  valuem]  -> key final_value |j=0. . .R-1}

如在计算URL访问频率中 Map函数首先处理日志中web页面请求的记录然后输出URL 1  Reduce函数把相同URL的value值都累加起来产生URL记录总数结果。

2.3网络爬虫设计

网络爬虫是一种自动搜集互联网信息的程序通过实现爬虫程序可以搜集某一站点的URLs 网页地址 并将搜集到的URLs存入数据库其不仅能够为搜索引擎采集网络信息而且可以作为定向信息采集器定向采集某些网站下的特定信息如招聘信息租房信息等系统采用开?源?网?络?蜘?蛛? ?S?p?i?d?e?r? ? SP IDER工作过程如图4所示。采集中每遇到一个页面都需要判断该页面的URL是否已发现的url若不是新发现的url则将其丢弃否则将它放入待采集ur l队列。系统采用美国哈佛大学教授拉宾Rab i n提出的Rab i n指纹算法。

1 假设[A  [吧b1 b2„ bm ]  ]是包含m个二进制字符的二进制字符串那么可以根据A构造相应的m-1度的多项式如下其中t是不定元即

[A t =b1 tm-1+b2tm-2+. . .bm-1t+bm] 1

给定一个度为k的多项式P t

[p t =a1tk+a2tk-1+. . .+ak-1t+ak] 2

那么A t除以P t的余数f t的度数为k-1 对于给定的字符串A定义A的指纹f A如下

[f A =A t mod P t ] 3

如果字符串A的指纹不同于字符串B的指纹那么字符串A也不同于字符串B f A≠f B =>A≠B 。

2 构造向量[ x0 x1. . .xi. . .xn ] [xi=0 1 2 . . .n]其中[i]为整数且[i∈0 max rabincode ] 初始值都设置为0然后用Rab i n算法计算ur l的指纹并将得到的二进制序列映射成整数i最后用i作为向量的下标判断[xi]的值如果[xi=0] 则此url未被访问过将[x i]的值设置为1如果[xi=1] 则此url已经被访问过将其丢弃。

3实验与数据分析

3. 1开发平台及其开发工具

为了测试所设计的基于Hadoop云计算平台的资源搜索系统的性能在实验中搭建了Hadoop集群 Hadoop集群采用4台服务器分别是3台Datanode和1台Namenode Cl ient通过Namenode来提交数据。 4台集群服务器配置信息为linux CentOS 5.4 +Hadoop  +Java  +CPU Intel酷睿2双核E7500 @2.93GHz +NetWork

NetLink BCM5784M Gigabit Ethernet +Memory2G Hard

Disk320G/7200

3.2实验结果分析

表1 Hadoop版本系统和Oracle系统耗时测试数据

[数据量万 &基于Hadoop平台秒 &Oracle单机测试

秒 &节约时间秒 &10&1.0&0.9&0. 1&500&3.0&7.7&4.7&1000&10.2&30&18.8&2000&15&49&34&5000&21&84&63

实验结果表明数据量小的时候10万  Hadoop版本系统和Oracle系统耗时差不多而数据量很大的时候5000万  Hadoop版本系统比Oracle系统节约很多时间这说明随着数据量的不断增大Hadoop版本系统节约的时间越多优势越明显。

下转第4480页

上接第4465页

4结束语

随着Internet的迅猛发展传统单机处理数据的方式已经难以满足Internet数据的爆炸式增长新的分布式数据处理技术也日益成熟其取代传统单机处理数据的方式已经成为必然在当前的海量处理和存储技术中 Hadoop平台成为云计算的首选基于此结合资源

垂直搜索领域使用Hadoop分布式平台设计出搜索效率、准确率较高的资源搜索引擎具有十分重要的意义。

参考文献

[1]江建举.基于Hadoop平台的海量文件存储策略研究[J] .深圳职业技术学院学报 2014 3

Cloudxtiny:£1.5/月,KVM-512MB/100GB/英国机房

Cloudxtiny是一家来自英国的主机商,提供VPS和独立服务器租用,在英国肯特自营数据中心,自己的硬件和网络(AS207059)。商家VPS主机基于KVM架构,开设在英国肯特机房,为了庆祝2021年欧洲杯决赛英格兰对意大利,商家为全场VPS主机提供50%的折扣直到7月31日,优惠后最低套餐每月1.5英镑起。我们对这场比赛有点偏见,但希望这是一场史诗般的决赛!下面列出几款主机套餐配置信息。CPU...

云俄罗斯VPSJusthost俄罗斯VPS云服务器justg:JustHost、RuVDS、JustG等俄罗斯vps主机

俄罗斯vps云服务器商家推荐!俄罗斯VPS,也叫毛子主机(毛子vps),因为俄罗斯离中国大陆比较近,所以俄罗斯VPS的延迟会比较低,国内用户也不少,例如新西伯利亚机房和莫斯科机房都是比较热门的俄罗斯机房。这里为大家整理推荐一些好用的俄罗斯VPS云服务器,这里主要推荐这三家:justhost、ruvds、justg等俄罗斯vps主机,方便大家对比购买适合自己的俄罗斯VPS。一、俄罗斯VPS介绍俄罗斯...

随风云25元/月 ,德阳高防云服务器 2核2G 10M 75元/月 内蒙古三线BGP服务器 2核2G 5M

公司介绍成都随风云科技有限公司成立于2021年,是国内领先的互联网业务平台服务提供商。公司专注为用户提供低价高性能云计算产品,致力于云计算应用的易用性开发,并引导云计算在国内普及。目前公司研发以及运营云服务基础设施服务平台(IaaS),面向全球客户提供基于云计算的IT解决方案与客户服务,拥有丰富的国内BGP、双线高防、香港等优质的IDC资源。公司一直秉承”以人为本、客户为尊、永续创新&...

云搜索为你推荐
真正免费的网络电话有真正的免费的网络电话吗 ?eset最新用户名密码ESET4.0最新用户名和密码百度手写百度手写显示ps抠图技巧请教PS抠图技巧!!!中小企业信息化中小企业信息化途径有哪些开机滚动条电脑开机有滚动条的画面雅虎天盾我机器上有瑞星杀毒和防火墙 我用雅虎天盾来查杀木马怎样?bt封杀BT下载被封锁了,怎么办,下载不了电影了!网页打开很慢为什么我打开网页很慢什么是云平台什么是云系统?
php空间租用 花生壳免费域名申请 主机屋 美国主机评测 息壤主机 256m内存 紫田 56折 godaddy域名优惠码 香港新世界电讯 免费ddos防火墙 网站被封 java虚拟主机 元旦促销 北京双线 免费吧 空间合租 江苏双线服务器 美国盐湖城 免费asp空间申请 更多