使用 multipleOutputs.write()时候,莫名奇妙的产生好多分区   job.setCombinerClass(ClassifierReduce.class); //注释掉该句 就不会出现几个文件就产生几个分区的现象 具体原因未知…
当遇到有特殊的业务需求时,需要对hadoop的作业进行分区处理 那么我们可以通过自定义的分区类来实现 还是通过单词计数的例子,JMapper和JReducer的代码不变,只是在JSubmit中改变了设置默认分区的代码,见代码: //1.3分区 //设置自定义分区类 job.setPartitionerClass(JPartitioner.class); //设置分区个数--这里设置成2,代表输出分为2个区,由两个reducer输出 job.setNumReduceTasks(2); 自定义的JP…
cnpm 莫名奇妙bug 莫名奇妙的痛 最近想搭建react@v16 和 react-router@v4,搭建过程打算用vue脚手架webpack模板那套配置方法(webpack3). 由于我之前安装的是webpack4,和高版本的webpack-dev-server,Vue那个是webpack3.然后我就直接cnpm i webpack@3.6.0 webpack-dev-server@2.9.1 -D,本想着替换版本,然后运行也可以. 但是在我已经搭建好react babel esclint…
MapReduce和自定义Partition MobileDriver主类 package Partition; import org.apache.hadoop.io.NullWritable; import org.apache.hadoop.io.Text; public class MobileDriver { public static void main(String[] args) { String[] paths = {"F:\\mobile.txt", "F…
[toc] 一.分区 问题:按照条件将结果输出到不同文件中 自定义分区步骤 1.自定义继承Partitioner类,重写getPartition()方法 2.在job驱动Driver中设置自定义的Partitioner 3.在Driver中根据分区数设置reducetask数 分区数和reducetask关系 案例实操 将统计结果按照手机归属地不同省份输出到不同文件中(分区),手机号136.137.138.139开头都分别放到一个独立的4个文件中,其他开头的放到一个文件中 (1)自定义分区类 M…
最近在是使用Spring配置定时定时任务(基于xml配置使用spring自带的定时任务),一开始使用没什么问题当使用久了就会出现有些定时任务自动停止了.(关于如何使用以及如何它的原理是啥,这里不进行阐述) 配置案例如下: <task:scheduled-tasks scheduler="scheduler"> <task:scheduled ref="deleteMoniterTimer" method="delMoniterByHost…
CentOS7 Failed to start LSB: Bring up/down networking. 说是mac地址不对.其实,本人并没有配置mac,按理说用的默认的.之前一直是可以正常工作的.为解决问题,也尝试配了一下. 随后使用以下命令解决的.也不知道什么原因,其实. 试一下: systemctl stop NetworkManager systemctl disable NetworkManager Removed symlink /etc/systemd/system/multi…
VirtualBox软件无法启动: 参考解决:http://blog.csdn.net/a_ssimi/article/details/52002939 修改兼容性:http://blog.csdn.net/wangcheeng/article/details/50325517 VirtualBox软件可以启动之后,进入控制台,在启动相应的虚拟机的时候,报错: 获取 VirtualBox COM 对象失败.  应用程序将被中断.    Failed to instantiate CLSID_Vi…
::-exec-] org.apache.coyote.http11.Http11Processor.service Error processing request java.lang.NullPointerException at org.apache.tomcat.util.buf.CharChunk.append(CharChunk.java:) at org.apache.catalina.mapper.Mapper.map(Mapper.java:) at org.apache.ca…
今天在用一个ajax验证用户名的功能,返回值报错,抓包看了下,多出来一堆点,源代码里显示方框和6个空行 这堆东西导致ajax判断返回值会错误,度娘了一下午(皇天不负游戏人啊),原来是一个坑爹的BOM头文件. 解决方法就是 输出前用ob_clean()函数,清除; 切记不要用记事本打开utf8编码的php文件.容易出现这种问题 下面是度娘的解释. BOM —— Byte Order Mark,中文名译作“字节顺序标记”.在这里找到一段关于 BOM 的说明: 在UCS 编码中有一个叫做 "Zero…
起因是这样的:我前几天用idea2020编辑器,用ssm框架搭建了一个图书管理系统.只是将图书信息的增删改查实现,还有用户的注册和登录功能实现.本来想着今天将用户信息的删除和修改完善以下,本来是很简单的事情,就在我将删除逻辑(从前台到后盾)实现后,然后满怀信息的打开Tomcat服务器,就等测试-结果一场四个小时的辛酸旅程开始了. 打开页面后,我先实现注册和登录,然后检查了一遍以前的功能都可以正常使用.就当我打开用户信息展示页面的时候,也没感觉到异常,就当我准备点击删除按钮,删除一个用户的信息的时…
在执行spark on hive 的时候在  sql.show()处报错 : Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/fs/CanUnbuffer 报错详情: Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/hadoop/fs/CanUnbuffer at jav…
这个问题来的有点莫名奇妙,之前我的hadoop运行一直是正常的,某一天开始运行Mapreduce就报这个错. 试过很多种方法都没有用,比如 1.path环境变量2.Hadoop bin目录下hadoop.dll和winutils.exe3.c:\windows\system32 下的hadoop.dll4.64为jdk条件都满足了还是报错 试了这些方法都没有用,最后只有改源码了. 下载相应版本的源码解压,找到NativeIO.java文件.将它加入到工程中去,如下图 修改NativeIO.jav…
最近在学习hadoop mapreduce编程的过程中遇到一个莫名奇妙的问题.最后通过调试时发现同时使用setCombinerClass(Reducer.class)  与  setReducerClass(Reducer.class)造成的.我个人觉得这两个不能同时使用,官方给出的WordCount例子中同时使用了这两个方法,我觉得是不严谨的,下面通过实验证明. 首先,我们来了解一下 setCombinerClass  的用法 如果同时使用这两个类会造成什么问题呢?会造成你reduce 输出的…
目前硬盘与主机系统的联系主要有几种传输介面规格: IDE介面:         IDE介面插槽所使用的排线较宽,每条排线上面可以接两个IDE装置,由於可以接两个装置,那为了判别两个装置的主/从架构, 因此这种磁碟机上面需要调整跳针(Jump)成为Master或slAVe!这种介面的最高传输速度为Ultra 133规格, 亦即每秒理论传输速度可达133MBytes. SATA介面: 所示为SATA硬盘的连接介面插槽. 我们可以看到该插槽要比IDE介面的小很多,每条SATA连接线仅能接一个SATA装…
4.2.2 总排序(Total order sorting) 有的时候需要将作业的的所有输出进行总排序,使各个输出之间的结果是有序的.有以下实例: 如果要得到某个网站中最受欢迎的网址(URL),就需要根据某种受欢迎的指标来对网址进行排序. 如果要让最活跃的用户能够看到某张表,就需要根据某种标准(发表文章数)对用户进行排序. 技术22 在多个reduce间对键进行排序 在MapReduce框架中,map的输出会被排序,然后被发送给reduce.不过,相同reduce的输入数据是有序的,不同redu…
1.安装Cygwin 从http://www.cygwin.com/ 下载cygwin的setup.exe,双击运行: 选择从Internet安装: 设置安装目录: 设置安装包目录: 设置“Internet Connection”的方式,选择“Direct Connection”: 选择一个下载站点: “下一步”之后,可能会弹出下图的“Setup Alert”对话框,直接“确定”即可 在“Select Packages”对话框中,必须保证“Net Category”下的“OpenSSL”被安装:…
Overview 记一次真真切切的NameNode单点故障. 学校机房着火之后,刀片机上的四台服务器,唯独就NameNode彻底宕掉了,去机房看了下硬盘都坏了.. 所以只能换一个master咯.基本上改一些配置文件就可以.要修改的配置如下: core-site.xml yarn-site.xml mapred-site.xml masters slave 本以为修改完了,格式化一下新的NameNode,在start-dfs.sh和start-yarn.sh就可以了.结果进web页面发现datan…
1.WordCount Job类: package com.simope.mr.wcFor; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IntWritable; import org.apache.hadoop.io.Text; import org.apache.hadoop.mapreduce.Job; import or…
如何使用Hadoop的Partitioner 博客分类: Hadoop hadooppartition Hadoop里面的MapReduce编程模型,非常灵活,大部分环节我们都可以重写它的API,来灵活定制我们自己的一些特殊需求.  今天散仙要说的这个分区函数Partitioner,也是一样如此,下面我们先来看下Partitioner的作用:  对map端输出的数据key作一个散列,使数据能够均匀分布在各个reduce上进行后续操作,避免产生热点区.  Hadoop默认使用的分区函数是Hash…
今天在项目中需要编写一个sh,执行一些初始化操作,然后调取原来的执行文件,但是我在操作中主要到了首行需要加入#!/bin/sh 的表达式,但是在执行时总是报错,原因是每次执行,表达式后边都会添加一个莫名奇妙的字符,最后才找到原因,是因为我用的windows编辑的文件,然后直接传到Linux运行,因为两个系统的换行符的编码不一样,所以出现在Linux下会多出一个字符,导致运行失败 可以使用 :set ff? 查询文件格式是unix的还是dos的 查了一下,确实是dos格式,然后使用以下命令,修改为…
需求 求每年的最高气温,年份升序,温度求最高 数据源内容如下 temperature.txt 2004 49 1981 -22 1981 -31 1965 -47 2027 -2 1964 6 2030 38 2016 -33 1963 13 2000 21 2019 0 2049 43 2039 8 1989 -18 2017 49 1952 -47 2016 -28 1991 20 1967 -39 2022 -47 2041 41 2039 -38 2021 33 1969 38 1981…
Linux就这个范儿 第15章 七种武器  linux 同步IO: sync.fsync与fdatasync   Linux中的内存大页面huge page/large page  David Cutler  Linux读写内存数据的三种方式 台湾作家林清玄在接受记者采访的时候,如此评价自己30多年写作生涯:“第一个十年我才华横溢,‘贼光闪现’,令周边黯然失色:第二个十年,我终于‘宝光现形’,不再去抢风头,反而与身边的美丽相得益彰:进入第三个十年,繁华落尽见真醇,我进入了‘醇光初现’的阶段,真正…
0.绪论 之前完全没有接触过大数据相关的东西,都是书上啊,媒体上各种吹嘘啊,我对大数据,集群啊,分布式计算等等概念真是高山仰止,充满了仰望之情,觉得这些东西是这样的: 当我搭建的过程中,发现这些东西是这样的: 对于初学者来说,我认为缺点如下: 1.需要控制,配置的东西太多,并且配置对应并不是很清晰(以后优化集群是否会有很高含金量?) 2.整个集群,我觉的从硬件到软件整体来说还是稳定性有待提高,尤其CDH 集群这块一会这个主机失去联系,一会NameNode挂,一会monitor挂,整个使用过程就是…
前言 最近总感觉跑了两年多ubuntu系统的MacBookAir6,2越来越不行了,内存总是亮红灯,软件效率也低了不少.最直接的解决方法当然是换电脑,购买一台配置更好的,比如2017款xps,不过在我狠下心买的时候,xps的发布时间推迟了!!!还推迟了10来天!!!我又不想将就买其他型号,于是干脆自己尝试着重装系统解决(结果特别满意,因此才有了这篇文章^_^).这篇文章记录了我安装archlinux的整个的过程,涉及到MacBookAir6,2下archlinux的安装.配置.优化等等,希望对那…
一.网络设置相关 1.网卡的物理地址的动态重置 出于某些需求,例如网络中的 IP 地址或网络帐号与网卡物理地址绑定,使得多个设备无法切换上网,可尝试临时更改物理地址.不过,系统偏好设置是不能修改网卡物理地址的,这就是命令行的用武之地了.具体来说,若心中已有想修改的物理地址,例如 00:1f:3c:93:b5:99,可执行 $ sudo ifconfig en1 ether 00:1f:3c:93:b5:99 来临时修改网卡的物理地址:若没有物理地址,只是想临时启用尝试一下,可用 openssl…
背景:时下都流行enum类型的使用tinyint,那enum就真没有用的价值了么? PHP低级编程的兄弟是这样来看这个问题的,我作下笔录如下,期望能客观的理解这个enum字段的优点及缺点: 膘哥观点:    enum有优点.但个人觉得...缺点更多,客观的讲:优点主要是在建数据 库的时候就可以把一些值给规范好.缺点是..enum不适合PHP.主要是PHP是弱类型,如:你insert into ..... set a= 1,你没法知道你是想 a= '1' 还是 a= 1(a='1'是插入值1,a=…
问题一:最简单的鼠标移过手变型的css要改了 cursor:pointer;/*FireFox(火狐)不支持cursor:hand*/ dw8下面自动出来的也没有hand这个属性了,标准的是pointer 问题二:FireFox(火狐)不支持滤镜 最常见的半透明不支持. filter: Alpha(Opacity=50); /* for IE */ opacity: .5;/* for Firefox */ style="-moz-opacity:0.5; filter:alpha(opacit…
HBase集群搭建 搭建环境:假设我们的linux环境已经准备好,包括网络.JDK.防火墙.主机名.免密登录等都没有问题,而且一定要有zookeeper.下面我们用3台linux虚拟机来搭建Hbase集群,首先启动我们的3台linux虚拟机,主机名分别为hadoop01.hadoop02和hadoop03. 1.启动zookeeper集群 启动zookeeper的命令: [root@hadoop01 zookeeper]# bin/zkServer.sh start 查看zookeeper启动状…
我的笔记本是DELL的Inspiron 14z,原装存储器是由32G的固态硬盘和512G的机器硬盘组成.后来我自己又给它加了一个256G的固态硬盘,装并装上了CentOS,打算把500G的机械硬盘当资料存储盘.但是奇怪的是尽管我用尽各种办法都没法成功挂载那块32G的固态硬盘和512G的机器硬盘,后来用磁盘工具查看磁盘信息的时候发现有两个莫名奇妙的RAID ARRAY的条目.然后就联想到了我的笔记本原来使用的是intel的快速存储技术,那么有可能是因为磁盘中还残留有Intel RSTe RAID信…