1.如何写wordcount在hadoop2.7.1中运行
1. 创建本地的示例数据文件:
依次进入【Home】-【hadoop】-【hadoop-1.2.1】创建一个文件夹file用来存储本地原始数据。
并在这个目录下创建2个文件分别命名为【myTest1.txt】和【myTest2.txt】或者你想要的任何文件名。
分别在这2个文件中输入下列示例语句:
2. 在HDFS上创建输入文件夹
呼出终端,输入下面指令:
bin/hadoop fs -mkdir hdfsInput
执行这个命令时可能会提示类似安全的问题,如果提示了,请使用
bin/hadoop dfsadmin -safemode leave
来退出安全模式。
当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结 束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入 安全模式。
意思是在HDFS远程创建一个输入目录,我们以后的文件需要上载到这个目录里面才能执行。
3. 上传本地file中文件到集群的hdfsInput目录下
在终端依次输入下面指令:
cd hadoop-1.2.1
bin/hadoop fs -put file/myTest*.txt hdfsInput
4. 运行例子:
在终端输入下面指令:
bin/hadoop jar hadoop-examples-1.2.1.jar wordcount hdfsInput hdfsOutput
注意,这里的示例程序是1.2.1版本的,可能每个机器有所不一致,那么请用*通配符代替版本号
bin/hadoop jar hadoop-examples-*.jar wordcount hdfsInput hdfsOutput
应该出现下面结果:
Hadoop命令会启动一个JVM来运行这个MapReduce程序,并自动获得Hadoop的配置,同时把类的路径(及其依赖关系)加入到Hadoop的库中。以上就是Hadoop Job的运行记录,从这里可以看到,这个Job被赋予了一个ID号:job_201202292213_0002,而且得知输入文件有两个(Total input paths to process : 2),同时还可以了解map的输入输出记录(record数及字节数),以及reduce输入输出记录。
查看HDFS上hdfsOutput目录内容:
在终端输入下面指令:
bin/hadoop fs -ls hdfsOutput
从上图中知道生成了三个文件,我们的结果在"part-r-00000"中。
使用下面指令查看结果输出文件内容
bin/hadoop fs -cat output/part-r-00000
2.hadoop 2.6.0 wordcount 例子在哪
1,在hadoop包中的hadoop-2.6.0->share->hadoop->mapreduce中的hadoop-mapreduce-examples 2.6.0.jar
2,运行命令hadoop jar share/mapreduce/hadoop-mapreduce-examples-2.6.0.jar wordcount /input/ /output/wordcount就可以了,其中的input和output是存放计算文件的文件夹
3.如何写wordcount在hadoop2.7.1中运行
1. 创建本地的示例数据文件:依次进入【Home】-【hadoop】-【hadoop-1.2.1】创建一个文件夹file用来存储本地原始数据。
并在这个目录下创建2个文件分别命名为【myTest1.txt】和【myTest2.txt】或者你想要的任何文件名。分别在这2个文件中输入下列示例语句:2. 在HDFS上创建输入文件夹呼出终端,输入下面指令:bin/hadoop fs -mkdir hdfsInput执行这个命令时可能会提示类似安全的问题,如果提示了,请使用bin/hadoop dfsadmin -safemode leave来退出安全模式。
当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结 束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。
运行期通过命令也可以进入 安全模式。意思是在HDFS远程创建一个输入目录,我们以后的文件需要上载到这个目录里面才能执行。
3. 上传本地file中文件到集群的hdfsInput目录下在终端依次输入下面指令:cd hadoop-1.2.1bin/hadoop fs -put file/myTest*.txt hdfsInput4. 运行例子:在终端输入下面指令:bin/hadoop jar hadoop-examples-1.2.1.jar wordcount hdfsInput hdfsOutput注意,这里的示例程序是1.2.1版本的,可能每个机器有所不一致,那么请用*通配符代替版本号bin/hadoop jar hadoop-examples-*.jar wordcount hdfsInput hdfsOutput应该出现下面结果:Hadoop命令会启动一个JVM来运行这个MapReduce程序,并自动获得Hadoop的配置,同时把类的路径(及其依赖关系)加入到Hadoop的库中。以上就是Hadoop Job的运行记录,从这里可以看到,这个Job被赋予了一个ID号:job_201202292213_0002,而且得知输入文件有两个(Total input paths to process : 2),同时还可以了解map的输入输出记录(record数及字节数),以及reduce输入输出记录。
查看HDFS上hdfsOutput目录内容:在终端输入下面指令:bin/hadoop fs -ls hdfsOutput从上图中知道生成了三个文件,我们的结果在"part-r-00000"中。使用下面指令查看结果输出文件内容bin/hadoop fs -cat output/part-r-00000。
4.如何自己搭建钓鱼网站检测系统
0*01基本系统架构 随着电子商务、互联网金融的快速发展,在利益的驱使下,从事“钓鱼攻击”的黑产呈逐渐上升趋势。
“钓鱼攻击”不仅对企业的品牌形象造成严重损害,还对用户的账户安全、甚至资金安全构成了极大的威胁。 目前“钓鱼攻击”已经为了网络欺诈的重要一环,因此反钓鱼系统在电子商务、金融证券、电信运营商等企业的安全运营中起着越来越重要的地位。
反钓鱼系统一般有如下两种架构。 对于这种架构主要适用于缺乏终端控制力的企业。
企业可以从各个渠道收集待检测的url,检测引擎调用利用WebKit引擎获取页面渲染后的有效内容,然后调用检测算法对页面内容进行检测。检测后将检测结果存至数据库,之后将检测结果输出至第三方的拦截系统、关停服务提供商等,最终遏制“钓鱼攻击”的发生。
对于第二种架构,适用于拥有大量终端的企业,利用终端的能力代替了WebKit。终端直接将疑似页面的特征发回后端的检测引擎,检测引擎生成检测结果、产出黑名单,同时将检测结果的返回至终端。
0*02检测引擎 检测引擎做为反钓鱼系统的核心承担着识别页面是否为钓鱼网站的任务。针对钓鱼网站的检测手段主要有IP黑名单,url分析,域名注册信息分析,页面内容分析,图像识别。
0*01基本系统架构 随着电子商务、互联网金融的快速发展,在利益的驱使下,从事“钓鱼攻击”的黑产呈逐渐上升趋势。“钓鱼攻击”不仅对企业的品牌形象造成严重损害,还对用户的账户安全、甚至资金安全构成了极大的威胁。
目前“钓鱼攻击”已经为了网络欺诈的重要一环,因此反钓鱼系统在电子商务、金融证券、电信运营商等企业的安全运营中起着越来越重要的地位。 反钓鱼系统一般有如下两种架构。
对于这种架构主要适用于缺乏终端控制力的企业。企业可以从各个渠道收集待检测的url,检测引擎调用利用WebKit引擎获取页面渲染后的有效内容,然后调用检测算法对页面内容进行检测。
检测后将检测结果存至数据库,之后将检测结果输出至第三方的拦截系统、关停服务提供商等,最终遏制“钓鱼攻击”的发生。 对于第二种架构,适用于拥有大量终端的企业,利用终端的能力代替了WebKit。
终端直接将疑似页面的特征发回后端的检测引擎,检测引擎生成检测结果、产出黑名单,同时将检测结果的返回至终端。 0*02检测引擎 检测引擎做为反钓鱼系统的核心承担着识别页面是否为钓鱼网站的任务。
针对钓鱼网站的检测手段主要有IP黑名单,url分析,域名注册信息分析,页面内容分析,图像识别等方法。 其中页面内容分析一直是钓鱼页面识别的主要手段。
页面识别的主要算法有贝叶斯算法、机器学习算法、Html文档特征等算法。 下面介绍下如何使用贝叶斯算法进行页面识别。
贝叶斯算法简介 贝叶斯分类是一类分类算法的总称,是关于随机事件A和B的条件概率和边缘概率的一则定理。 P(A)是A的先验概率或边缘概率。
之所以称为”先验”是因为它不考虑任何B方面的因素; P(A|B)是已知B发生后A的条件概率,也由于得自B的取值而被称作A的后验概率; P(B|A)是已知A发生后B的条件概率,也由于得自A的取值而被称作B的后验概率; P(B)是B的先验概率或边缘概率,也作标准化常量。 分类原理 我们用W来代表一个待分类的网页,用h+钓鱼网页,用h-代表正常网页。
利用贝叶斯公式,判定页面是否为钓鱼网页可描述为: P(h+|W)=P(h+)*P(W|h+)/P(W) P(h-|W)=P(h-)*P(W|h-)/P(W) P(W)为常量,可以暂时忽略。P(h+)、P(h-)为先验概率,即一个真实的网页集合中,钓鱼网页的比例与正常网页的比例。
为了求得P(W|h),我们可以将W进行分词,W={w1,w2,w3…}。如果我们假设w1,w2等是条件无关的,则P(W|h+)=P(w1|h+)*P(w2|h+)*P(w3|h+)。
P(wi|h+)经过Laplacean平滑处理后,P(wi|h+)=(1 + 特征词wi在h+训练集中的词频) / (全部特征词去重个数 + h+下所有词出现总数)。 这样我们便能计算出P(h+|W)与P(h-|W),比较大小可知页面属于哪一分类。
数据准备 为了获取待检测域名,我们可以从ICANN的Centralized Zone Data Service免费获取到全球的域名列表,做差量可得到全球的每日新增域名。之后将每日新增的域名导入到我们的待检测列表。
我们可以通过Python调用Phantomjs去获取页面中内容。 Phantomjs: var webPage = require('webpage'); var system = require('system'); var page = webPage.create(); if (system.args.length === 1) { console.log("error"); phantom.exit(); } else { url = system.args[1]; page.open(url, function (status) { if (status == 'success') { var content = page.content; console.log(content); } else { console.log("error"); } phantom.exit(); }); }; Python: def get_page_content(url): cmd = 'phantomjs getPageContent.js %s' % (url) stdout, stderr = subprocess.Popen(cmd, shell = True, stdout = subprocess.PIPE, stderr = subprocess.PIPE).communicate() return stdout 为了得到一个贝叶斯分类器,需要一个样本集对其进行训练。
首先要对页面做打标分类,一类为钓鱼页面样本集,一类为正常页面样本集。样本集就是我们的原始训练素材。
建立模型 这里针对中。
5.windows 运行hadoop自带例子程序wordcount总是死在Map 0% Reduce
HADOOP 不能运行在WINDOWS上。
图片只是Eclipse在WINDOWS上的开发客户端
你说的情况有很多种可能。
首先是配置,单机、伪集群,集群的配置各不相同。
从图上看,你的HDFS配置应该是成功了
请仔细检查MAP-RED的配置,或者贴出来。
检查HOSTS、PROFILE、*ENV等配置。
如果还是不能解决问题,请到HADOOP目录/logs 中查看各个组件的LOG记录,看看有没有异常信息。
转载请注明出处51数据库 » wordcount检测:
天下第一2892987