2016年5月12日
摘要: 在Hadoop中,每个MapReduce任务都被初始化为一个job,每个job又可分为两个阶段:map阶段和reduce阶段。这两个阶段分别用两个函数来表示。Map函数接收一个<key,value>形式的输入,然后同样产生一个<ey,value>形式的中间输出,Hadoop会负责将所有具有相同中间k 阅读全文
posted @ 2016-05-12 22:13 松伯 阅读(3854) 评论(0) 推荐(0)
摘要: 首先考虑表的自连接,其次是列的设置,最后是结果的整理. 文件内容: 输出结果: 参考:《Hadoop实战》 阅读全文
posted @ 2016-05-12 01:52 松伯 阅读(539) 评论(0) 推荐(0)
  2016年5月11日
摘要: hadoop的map是具有输出自动排序功能的~继续学习~ 阅读全文
posted @ 2016-05-11 00:13 松伯 阅读(1560) 评论(0) 推荐(0)
  2016年5月10日
摘要: 如何将数据组织成某些可理解的形式,使得他可以比较容易地发现数据的趋势,并与其他人交流,这就是描述性统计的任务:简化结构并整理组织数据。整理一组数据的最常用过程是将数据放入一个频数分布。 频数分布是一种组织好的关于位于测量量表每个类别上的个体数目的数据表。 频数分布的结构可以是表或涂,但是,在这两种情 阅读全文
posted @ 2016-05-10 00:08 松伯 阅读(825) 评论(0) 推荐(0)
  2016年5月8日
摘要: 1、什么是总体?什么是样本?总体是一个研究的所有研究对象的个体的集合。样本是被选择出来的参与研究的特定的个体集合。样本被期望能够代表总体。 2、描述总体的特性的,如总体的平均数,被称为 参数。 3、总体和参数之间的关系与样本和 统计量 之间的关系是一样的。 4、统计技术被分为两大类。它们分别被称为什 阅读全文
posted @ 2016-05-08 13:26 松伯 阅读(891) 评论(0) 推荐(0)
摘要: -server: 启用-server时新生代默认采用并行收集,其他情况下,默认不启用。-server策略为:新生代使用并行清除,年老代使用单线程Mark-Sweep-Compact的垃圾收集器。 -XX:+UseConcMarkSweepGC: 设置年老代为并发收集。 -XX:+UseAdaptiv 阅读全文
posted @ 2016-05-08 10:48 松伯 阅读(2883) 评论(0) 推荐(0)
  2016年5月6日
摘要: RestTemplate是Spring提供的用于访问Rest服务的客户端,RestTemplate提供了多种便捷访问远程Http服务的方法,能够大大提高客户端的编写效率。调用RestTemplate的默认构造函数,RestTemplate对象在底层通过使用java.net包下的实现创建HTTP 请求 阅读全文
posted @ 2016-05-06 23:44 松伯 阅读(2602) 评论(0) 推荐(0)
摘要: SparkContext是spark的入口,通过它来连接集群、创建RDD、广播变量等等。 阅读全文
posted @ 2016-05-06 22:55 松伯 阅读(798) 评论(0) 推荐(0)
摘要: 每天进步一点点~开搞~ 阅读全文
posted @ 2016-05-06 21:23 松伯 阅读(1174) 评论(0) 推荐(0)
  2016年5月2日
摘要: 1、for循环格式for(i <- 1 to 10){print(i)} 2、懒加载 lazy val a = 1; 直到用时才会加载 3、方法的声明格式 def(x:Int,y:Int) : Int ={} 最后一个冒号后面是返回类型,不加则没有返回值 4、默认参数 def loadConf(co 阅读全文
posted @ 2016-05-02 14:57 松伯 阅读(249) 评论(0) 推荐(0)
  2016年4月30日
摘要: Java虚拟机包括血多进行基本类型转换工作的操作码,这些执行转换工作的操作码后面没有操作数,转换的值从栈顶端获得。Java虚拟机从栈顶端弹出一个值,对它进行转换,然后再把转换结果压入栈。进行int、long、float和double类型之间转换的操作码。 这些操作码是把int类型转换为比int类型占 阅读全文
posted @ 2016-04-30 12:26 松伯 阅读(374) 评论(0) 推荐(0)
  2016年4月29日
摘要: 一、com.google.common.base.Preconditions包 便捷的参数判断,不需要自己来逐个写方法判断,简化代码。 Preconditions里面的方法: 1 .checkArgument(boolean) : 功能描述:检查boolean是否为真。 用作方法中检查参数 失败时抛 阅读全文
posted @ 2016-04-29 16:39 松伯 阅读(238) 评论(0) 推荐(0)
  2016年4月27日
摘要: 1、对象的强、软、弱和虚引用 在JDK 1.2以前的版本中,若一个对象不被任何变量引用,那么程序就无法再使用这个对象。也就是说,只有对象处于可触及(reachable)状态,程序才能使用它。从JDK 1.2版本开始,把对象的引用分为4种级别,从而使程序能更加灵活地控制对象的生命周期。这4种级别由高到 阅读全文
posted @ 2016-04-27 22:48 松伯 阅读(1347) 评论(0) 推荐(0)
摘要: 除了释放不再被引用的对象外,垃圾收集器还要处理堆碎块。新的对象分配了空间,不再被引用的对象被释放,所以堆内存的空闲位置介于活动的对象之间。请求分配新对象时可能不得不增大堆空间的大小,虽然可以使用的总空闲空间是足够的。这是因为,堆中没有连续的空闲空间放得下新的对象。 垃圾收集器算法 任何垃圾回收算法都 阅读全文
posted @ 2016-04-27 22:37 松伯 阅读(386) 评论(0) 推荐(0)
  2016年4月26日
摘要: Java虚拟机通过装载、连接和初始化一个JAVA类型,使该类型可以被正在运行的JAVA程序所使用,其中,装载就是把二进制形式的JAVA类型读入JAVA虚拟机中;而连接就是把这种读入虚拟机的二进制形式的类型数据合并到虚拟机的运行时状态中去。 连接阶段分为三个子步骤 验证、准备和解析。 "验证"步骤确保 阅读全文
posted @ 2016-04-26 23:38 松伯 阅读(310) 评论(0) 推荐(0)
  2016年4月24日
摘要: BlockingQueue很好的解决了多线程中,如何高效安全“传输”数据的问题。通过这些高效并且线程安全的队列类,为我们快速搭建高质量的多线程程序带来极大的便利。使用场景。 首先它是一个队列,而一个队列在数据结构中所起的作用大致如下图所示: 通过一个共享的队列,可以使得数据由队列的一端输入,从另外一 阅读全文
posted @ 2016-04-24 22:31 松伯 阅读(991) 评论(0) 推荐(0)
摘要: jdk1.7新特性 1 对集合类的语言支持; 2 自动资源管理; 3 改进的通用实例创建类型推断; 4 数字字面量下划线支持; 5 switch中使用string; 6 二进制字面量; 7 简化可变参数方法调用。 下面我们来仔细看一下这7大新功能: 1 对集合类的语言支持 Java将包含对创建集合类 阅读全文
posted @ 2016-04-24 12:56 松伯 阅读(809) 评论(0) 推荐(0)
  2016年4月23日
摘要: 使用StringTokenizer去掉字符串中的空格 主要是通过st.hasMoreTokens实现的去除空格,那么我们观察下源码: public StringTokenizer(String str, String delim, boolean returnDelims) { currentPos 阅读全文
posted @ 2016-04-23 23:22 松伯 阅读(328) 评论(0) 推荐(0)
摘要: MapReduce主要包括两个阶段:一个是Map,一个是Reduce. 每一步都有key-value对作为输入和输出。 Map阶段的key-value对的格式是由输入的格式决定的,如果是默认的TextInputFormat,则每行作为一个记录进程处理,其中key为此行的开头相对文件的起始位置,val 阅读全文
posted @ 2016-04-23 19:40 松伯 阅读(387) 评论(0) 推荐(0)
  2016年4月21日
摘要: 使用jackson进行json格式的数据封装非常方便~不需要写很多map啦~ 阅读全文
posted @ 2016-04-21 17:19 松伯 阅读(851) 评论(0) 推荐(0)
  2016年4月20日
摘要: 一般用于封装消息 发送XML通知等。 用于判断XML中的元素: 阅读全文
posted @ 2016-04-20 11:10 松伯 阅读(274) 评论(0) 推荐(0)
  2016年4月10日
摘要: Spark是一个通用的大规模数据快速处理引擎。可以简单理解为Spark就是一个大数据分布式处理框架。基于内存计算的Spark的计算速度要比Hadoop的MapReduce快上50倍以上,基于磁盘的计算速度也快于10倍以上。Spark运行在Hadoop第二代的yarn集群管理之上,可以轻松读取Hado 阅读全文
posted @ 2016-04-10 01:52 松伯 阅读(1318) 评论(0) 推荐(0)
  2016年4月2日
摘要: 废话就不多说了,直接开始啦~ 安装环境变量: yum install gcc yum install gcc-c++ 安装make,这个是自动编译源码的工具 yum install make yum install autoconfautomake libtool cmake 封装了底层的终端功能 阅读全文
posted @ 2016-04-02 17:11 松伯 阅读(2849) 评论(0) 推荐(0)
  2016年3月11日
摘要: 海量数据处理的常用技术可分为: 外排序:因为海量数据无法全部装入内存,所以数据的大部分存入磁盘中,小部分在排序需要时存入内存。 MapReduce:分布式处理技术 hash技术:以Bloom filter技术为代表 外排序:主要适用于大数据的排序、去重。 分布式处理技术:MapReduce 技术思想 阅读全文
posted @ 2016-03-11 22:13 松伯 阅读(639) 评论(0) 推荐(0)
  2016年3月7日
摘要: 决策树是一种树状结构,它的每一个叶节点对应一个分类,非叶节点对应在某个属性上的划分,根据样本在该属性上的不同取值将其划分为若干子集。构造决策树的核心问题是在每一步如何选择适当的属性对样本进行划分。 ID3算法 1、对当前样本集合计算所有属性的信息增益。 2、选择信息增益最大的属性作为测试属性,把测试 阅读全文
posted @ 2016-03-07 22:18 松伯 阅读(211) 评论(0) 推荐(0)
  2016年2月27日
摘要: 这里讲解下用户画像的技术架构和整体实现,那么就从数据整理、数据平台、面向应用三个方面来讨论一个架构的实现(个人见解)。 数据整理: 1、数据指标的的梳理来源于各个系统日常积累的日志记录系统,通过sqoop导入hdfs,也可以用代码来实现,比如spark的jdbc连接传统数据库进行数据的cache。还 阅读全文
posted @ 2016-02-27 12:33 松伯 阅读(6518) 评论(1) 推荐(0)
  2016年2月2日
摘要: 1、uptime 在Linux系统中,这些数据表示等待CPU资源的进程和阻塞在不可中断IO进程(进程状态为D)的数量。 2、dmesg|tail 命令会输出系统日志的最后10行,这些日志都可以排查性能问题。 3、vmstat 1 输出的日志中 r:等待在CPU资源的进程数。这个数据比平均负载更加能够 阅读全文
posted @ 2016-02-02 10:32 松伯 阅读(532) 评论(0) 推荐(0)
  2016年1月31日
摘要: 举例:到底北京人同意北京大力发展轨道交通,由于不大可能询问所有的一千多万北京市民,人们只好进行抽样调查以得到样本,并用样本中同意发展轨道交通的比例来估计真实的比例,从不同的样本得到的结论也不会完全一样。虽然真实的比例在这种抽样过程中永远不可能知道,但有可能知道估计出来的比例和真实的比例大致差多,从数 阅读全文
posted @ 2016-01-31 17:31 松伯 阅读(3940) 评论(0) 推荐(0)
  2016年1月30日
摘要: PageRank,网页排名,又称网页级别,传说中是PageRank算法拯救了谷歌,它是根据页面之间的超链接计算的技术,作为网页排名的要素之一。它通过网络浩瀚的超链接关系来确定一个页面的等级。Google把从A页面到B页面的链接解释为A页面给B页面投票,根据投票的来源(甚至来源的来源,即链接到A页面的 阅读全文
posted @ 2016-01-30 15:59 松伯 阅读(1192) 评论(0) 推荐(0)
摘要: 在概率论中所说的事件(event)相当于集合论中的集合(set)。 互补事件的概率 如果一个不出现,则另一个肯定出现的两个事件成为互补事件(complementary events,或者互余事件或对立事件).按照集合的记号,如果一个事件记为A,那么另一个记为的补集。P(A) + P(A) = 1 , 阅读全文
posted @ 2016-01-30 12:21 松伯 阅读(702) 评论(0) 推荐(0)
  2016年1月29日
摘要: 用少量数据来概括大量数字是日常生活中常见的。那么可以用少量所谓汇总统计量或概括统计量(summary statistic)来描述定量变量的数据。任何样本的函数,只要不包含总体的未知参数,都称为统计量(statistic),那么样本的随机性决定了统计量的随机性。 数据的"位置" 比如说哪个地方穷,那个 阅读全文
posted @ 2016-01-29 10:44 松伯 阅读(1771) 评论(0) 推荐(0)
  2016年1月27日
摘要: 抽样调查的领域涉及如何用有效的方式得到样本。这些调查都利用了问卷,而问卷的设计则很有学问。它设计如何用词、问题的次序和问题的选择与组合等等。涉及包括心理学、社会学等知识。问题的语言应该和被调查者的文化水平相适应。那么抽样调查的设计的目的之一是确保样本对总体的代表性,以保证后续推断的可靠性。然而每个个... 阅读全文
posted @ 2016-01-27 10:39 松伯 阅读(7864) 评论(1) 推荐(0)
  2016年1月25日
摘要: sparksql中获取表头信息方法一:可以使用 describetable; 方法二:先SEThive.cli.print.header=true; 然后 select * from table limit 0;代码中的使用直接通过list> tableHead =jdbcBaseDao.getBa... 阅读全文
posted @ 2016-01-25 13:43 松伯 阅读(1367) 评论(0) 推荐(0)
  2016年1月23日
摘要: 客户画像项目中可能会遇到此类问题,因为客户画像要求的是对单个用户信息的查询。 但倘若以日周期为准,今日梳理的数据宽表中某个字段为null,但此类字段不能以null显示,要以前一天有数据的值为今日的值,就需要做case when处理。 同时还有个问题,日表拥有某些客户信息(以日更新),但并不是用户全量 阅读全文
posted @ 2016-01-23 13:24 松伯 阅读(343) 评论(0) 推荐(0)
  2016年1月22日
摘要: 邻接矩阵:是表示顶点之间相邻关系的矩阵。因此,用一个一维数组存放图中所有顶点数据;用一个二维数组存放顶点间的关系(边或弧)的数据,这个二维数组称为邻接矩阵。邻接矩阵又分为有向图邻接矩阵和无向图邻接矩阵。设G=(V,E)是一个图,其中V={v1,v2,.....,vn}。G的邻接矩阵是一个具有下列性质... 阅读全文
posted @ 2016-01-22 14:09 松伯 阅读(1380) 评论(0) 推荐(0)
  2016年1月20日
摘要: 大数据体系结构:Spark简介Spark是整个BDAS的核心组件,是一个大数据分布式编程框架,不仅实现了MapReduce的算子map 函数和reduce函数及计算模型,还提供更为丰富的算子,如filter、join、groupByKey等。是一个用来实现快速而同用的集群计算的平台。Spark将分布... 阅读全文
posted @ 2016-01-20 21:04 松伯 阅读(1086) 评论(0) 推荐(0)
摘要: Hbase是运行在Hadoop上的NoSQL数据库,它是一个分布式的和可扩展的大数据仓库,也就是说HBase能够利用HDFS的分布式处理模式,并从Hadoop的MapReduce程序模型中获益。这意味着在一组商业硬件上存储许多具有数十亿行和上百万列的大表。除去Hadoop的优势,HBase本身就是十... 阅读全文
posted @ 2016-01-20 20:44 松伯 阅读(292) 评论(0) 推荐(0)
  2016年1月16日
摘要: Bolt是Topology中的数据处理的单元,也是Storm针对处理过程的编程单元。Topology中所有的处理都是在这些Bolt中完成的,编程人员可以实现自定义的处理过程,例如,过滤、函数、聚集、连接等计算。如果是复杂的计算过程,往往需要多个步骤和使用多个Bolt。 Bolt可以将数据项发送... 阅读全文
posted @ 2016-01-16 20:45 松伯 阅读(1509) 评论(0) 推荐(0)
  2016年1月12日
摘要: 代码如下: public static boolean execshell(String command, String user, String passwd, String host) throws JSchException, IOException { connect... 阅读全文
posted @ 2016-01-12 23:36 松伯 阅读(1026) 评论(0) 推荐(0)
摘要: Spout呢,是Topology中数据流的源头,也是Storm针对数据源的编程单元。一般数据的来源,是通过外部数据源来读取数据项(Tuple),并读取的数据项传输至作业的其他组件。编程人员一般可通过OutputFieldsDeclarer类的declareStream()方法来声明多个流,指定数据将... 阅读全文
posted @ 2016-01-12 22:56 松伯 阅读(3056) 评论(0) 推荐(0)