
BigData
数据娃掘
人生何需久睡,死后自会长眠
展开
-
Mapreduce读写DB数据
有时候我们在项目中会遇到输入结果集很大,但是输出结果很小,比如一些 pv、uv 数据,然后为了实时查询的需求,或者一些 OLAP 的需求,我们需要 mapreduce 与 mysql 进行数据的交互,而这些特性正是 hbase 或者 hive 目前亟待改进的地方。好了言归正传,简单的说说背景、原理以及需要注意的地方:1、为了方便 MapReduce 直接访问关系型数据库(Mysql原创 2014-08-26 07:08:14 · 1190 阅读 · 0 评论 -
分分钟理解MapReduce精髓
微软著名的C++大师Herb Sutter在2005年初的时候曾经写过一篇重量级的文章:”The Free Lunch Is Over: A Fundamental Turn Toward Concurrency in Software“,预言OO之后软件开发将要面临的又一次重大变革-并行计算。转载 2014-08-26 11:13:48 · 767 阅读 · 0 评论 -
从Storm和Spark 学习流式实时分布式计算的设计
背景最近我在做流式实时分布式计算系统的架构设计,而正好又要参加优快云博文大赛的决赛。本来想就写Spark源码分析的文章吧。但是又想毕竟是决赛,要拿出一些自己的干货出来,仅仅是源码分析貌似分量不够。因此,我将最近一直在做的系统架构的思路整理出来,形成此文。为什么要参考Storm和Spark,因为没有参照效果可能不会太好,尤其是对于Storm和Spark由了解的同学来说,可能通过对比,更能体会到转载 2014-12-12 04:57:06 · 919 阅读 · 0 评论 -
hadoop中map和reduce的数量设置
hadoop中map和reduce的数量设置http://www.aboutyun.com/thread-5583-1-1.html(出处: about云开发)转载 2014-11-02 04:49:42 · 2631 阅读 · 0 评论 -
大数据学习之MapReduce篇
江湖传说永流传:谷歌技术有"三宝",GFS、MapReduce和大表(BigTable)!谷歌在03到06年间连续发表了三篇很有影响力的文章,分别是03年SOSP的GFS,04年OSDI的MapReduce,和06年OSDI的BigTable。SOSP和OSDI都是操作系统领域的顶级会议,在计算机学会推荐会议里属于A类。SOSP在单数年举办,而OSDI在双数年举办。那么这篇博客就来介绍转载 2014-11-02 03:26:56 · 1283 阅读 · 0 评论 -
Hadoop源码解析之: TextInputFormat如何处理跨split的行
我们知道hadoop将数据给到map进行处理前会使用InputFormat对数据进行两方面的预处理: 对输入数据进行切分,生成一组split,一个split会分发给一个mapper进行处理。 针对每个split,再创建一个RecordReader读取Split内的数据,并按照的形式组织成一条record传给map函数进行处理。最常见的FormatInput就是TextInpu转载 2014-10-24 15:49:09 · 595 阅读 · 0 评论 -
如何让Hadoop读取以gz结尾的文本格式的文件
背景:搜索引擎在build全量时,会产生数G的xml的中间文件,我需要去查询这些中间文件中,是否有某个特殊的字符。xml文件有很多,每个都有几百M,存储在hdfs上,而且是以gz结尾的文本格式的文件。查找时,我是写了一个实现Tool接口,继承自Configured类的MapReduce,这样就可以传入自定义的参数给我的MapReduce程序了。需要在文件里Grep的内容,就是以参数的形式传原创 2014-10-24 14:34:09 · 6594 阅读 · 0 评论 -
Java并发编程总结(Hadoop核心源码实例解读)
程序设计需要同步(synchronization),原因:1)复杂的功能要求的需要使用多线程编程,线程之间存在读写共享变量。2)读写共享变量(shared mutual variable),JVM的内存模型(Memory model: decide when and how changes made by one thread become visuble to others)受到其它因素转载 2014-10-24 15:27:32 · 845 阅读 · 0 评论 -
Hadoop 的HA高可集群用性
一、 Hadoop 的高可用性1. 概论本指南提供了一个HDFS 的高可用性(HA )功能的概述,以及如何配置和管理HDFS 高可用性(HA) 集群。本文档假定读者具有对HDFS 集群的组件和节点类型具有一定理解。有关详情,请参阅Apache 的HDFS 的架构指南。http://hadoop.apache.org/common/docs/current/hdfs_design.htm转载 2014-09-01 10:22:55 · 632 阅读 · 0 评论 -
MapReduce:详解Shuffle过程
Shuffle过程是MapReduce的核心,也被称为奇迹发生的地方。要想理解MapReduce, Shuffle是必须要了解的。我看过很多相关的资料,但每次看完都云里雾里的绕着,很难理清大致的逻辑,反而越搅越混。前段时间在做MapReduce job 性能调优的工作,需要深入代码研究MapReduce的运行机制,这才对Shuffle探了个究竟。转载 2014-07-29 20:20:45 · 965 阅读 · 0 评论 -
基于ZooKeeper的分布式Session实现
认识ZooKeeper...原创 2014-10-01 12:15:49 · 647 阅读 · 0 评论 -
使用万能框架HttpHelper抓取安卓APP数据
使用万能框架HttpHelper抓取安卓APP数据转载 2016-04-27 17:16:42 · 3321 阅读 · 0 评论 -
抓包工具Fidder详解(主要来抓取Android中app的请求)
如何使用抓包工具Fidder来抓取Android中app的请求。转载 2016-04-27 17:13:00 · 1510 阅读 · 0 评论 -
关于hadoop reduce阶段遍历Iterable的注意事项
之前有童鞋问到了这样一个问题:为什么我在 reduce 阶段遍历了一次 Iterable 之后,再次遍历的时候,数据都没了呢?可能有童鞋想当然的回答:Iterable 只能单向遍历一次,就这样简单的原因。。。事实果真如此吗?原创 2014-08-26 17:32:47 · 2823 阅读 · 1 评论 -
推荐系统思考小结(基于Mahout)
最近一直学习Mahout和推荐引擎相关的知识,一直想搞清楚,什么样的推荐系统的架构才是合理,既能对海量数据进行复杂运算,又能及时响应做出推荐。在网上发现一篇对推荐系统结构讲解的很好的文章数:据驱动销售——个性化推荐引擎,里面提到这样的思想...转载 2014-09-24 16:41:12 · 734 阅读 · 0 评论 -
Apache Mahout 实现的机器学习算法
Mahout实现的机器学习算法集... 算法大类算法名称中文名称分类算法Logistic Regression逻辑回归 Bayesian贝叶斯 SVM支持向量机 Perceptron转载 2014-10-10 09:51:26 · 835 阅读 · 0 评论 -
mahout个性化推荐的一些帖子
Mahout协同推荐简单实例...原创 2014-10-10 09:53:42 · 949 阅读 · 0 评论 -
消息订阅发布系统Apache Kafka分布式集群环境搭建和简单测试
kafka是LinkedIn开发并开源的一个分布式MQ系统,现在是Apache的一个孵化项目。在它的主页描述kafka为一个高吞吐量的分布式(能将消息分散到不同的节点上)MQ。Kafka仅仅由7000行Scala编写,据了解,Kafka每秒可以生产约25万消息(50 MB),每秒处理55万消息(110 MB)...原创 2014-10-01 11:46:04 · 883 阅读 · 0 评论 -
搭建kafka运行环境
由于项目涉及到kafka,自己以前没有接触过这方面的,学习了下,将搭建kafka运行环境同大家分享。转载 2014-10-01 11:49:40 · 2657 阅读 · 0 评论 -
分布式消息队列(Message Queue)系统:kafka扫盲
分布式系统很重要的一个设计原则是松耦合,即尽量减少子系统间的依赖。这样各个子系统可以相互独立的进行演进,维护,重用等。Message Queue (MQ)是一种很好的解耦手段。要了解MQ在系统整合中的作用,可以看Enterprise Integration Patterns (EIP)这本书或对应的网站。转载 2014-10-01 12:01:12 · 2878 阅读 · 0 评论 -
推荐算法之协同过滤实战
协同过滤(Collective Filtering)可以说是推荐系统的标配算法。在谈推荐必谈协同的今天,我们也来谈一谈基于KNN的协同过滤在实际的推荐应用中的一些心得体会。 我们首先从协同过滤的两个假设聊起。 两个假设:用户一般会喜欢与自己喜欢物品相似的物品用户一般会喜欢与自己相似的其他用户喜欢的物品上述假设分别对应了协同过滤的两种实现方式:原创 2014-08-18 14:20:50 · 1849 阅读 · 0 评论 -
用Ant编译eclipse hadoop plugin插件
网上讲的用Ant编译eclipse hadoop plugin插件,都讲的很复杂,对于我这样的菜鸟哪里经得起这么多折腾,本人经过实践,写出我的编译经验首先安装eclipse,记住eclipse版本一定要+3.3,笔者就犯过这样的错误,我开始用3.2版本编译总是提示jar包找不到,纠结了很久,最后去官网看了说明才明白,所一建议大家多看官方文档。,本次编译环境如下:ubuntu12转载 2014-08-31 02:36:30 · 621 阅读 · 0 评论 -
hive与hbase的区别与联系
问题导读:hive与hbase的底层存储是什么?hive是产生的原因是什么?habase是为了弥补hadoop的什么缺陷?共同点:1.hbase与hive都是架构在hadoop之上的。都是用hadoop作为底层存储区别:2.Hive是建立在Hadoop之上为了减少MapReduce jobs编写工作的批处理系统,HBase是为了支持弥补Hadoo转载 2014-08-20 23:28:56 · 775 阅读 · 0 评论 -
Hadoop RPC机制总结
RPC是Hadoop的基础组件,提供分布式环境下的对象调用功能。之前用了两天时间分析与测试Hadoop RPC,目的是想弄清楚它对集群协作的影响。本来想等深入研究后再总结,但怕过完十一就忘的差不多了,那就今天写下来。 这节描述三个部分: 1. Hadoop RPC 介绍 2. RPC server端的实体模型 3. 用户对RPC可以有哪些影响 Hadoop RPC介绍原创 2014-08-01 07:07:19 · 779 阅读 · 0 评论 -
Java线程池管理及分布式Hadoop调度框架搭建
多线程是程序员面试时常常会面对的问题,对多线程概念的掌握和理解水平,也常常被用来衡量一个人的编程实力。不错,普通的多线程已经不容易了,那么当多线程碰到“大象”又会产生什么样的火花?这里我们为大家分享上海创行科技技术总监严澜的博文——Java线程池管理及分布式Hadoop调度框架搭建。平时的开发中线程是个少不了的东西,比如tomcat里的servlet就是线程,没有线程我们如何提供多用户访问转载 2014-08-01 07:15:10 · 763 阅读 · 0 评论 -
Hbase自己理解
今天公司进行了一样关于Hbase的培训,让我对Hbase有了基础的了解。和大家分享一样。自己的理解不是很深,如果有说的不对地方,希望大家斧正。 什么是Hbase? HBase是一个分布式的、面向列的开源数据库。 分布式:Hbase的分布式是依托于Hadoop的,那Hadoop又是什么?Hadoop 是一个能够对大量数据进行分布式处理的软件框架。其实我也不懂这是个什么框原创 2014-08-01 07:00:00 · 1415 阅读 · 0 评论 -
使用Pig对手机上网日志进行分析
在成功安装Pig的基础上,本文将使用Pig对手机上网日志进行分析,具体步骤如下:写在前面:手机上网日志文件phone_log.txt,文件内容 及 字段说明部分截图如下需求分析显示每个手机号的上网流量情况。依次完成以下步骤:1、将Linux本地文件phone_log.txt上传到HDFS执行命令转载 2014-08-05 05:28:34 · 880 阅读 · 0 评论 -
Hadoop2.2.0 HA + Jdk1.8.0 + Zookeeper3.4.5 + Hbase0.98 集群搭建详细过程(服务器集群)
一、前言 过完年在外实习,实习中的一部分主要工作就是关于hadoop的搭建和维护。其实hadoop的搭建本身并不是什么难题,主要是当一些之前没怎么用过linux、没怎么用到java的可怜的孩纸们来搞hadoop的时候会相当的揪心,非常不巧我也是的。因此可以说,学hadoop的过程是一个很痛苦但是也很有成就感的过程。 先说一下我学习hadoop的过程,由于之前没有用过linux,转载 2014-08-05 05:46:15 · 1187 阅读 · 0 评论 -
flume-ng+Kafka+Storm+HDFS 实时系统搭建
一直以来都想接触Storm实时计算这块的东西,最近在群里看到上海一哥们罗宝写的Flume+Kafka+Storm的实时日志流系统的搭建文档,自己也跟着整了一遍,之前罗宝的文章中有一些要注意点没提到的,以后一些写错的点,在这边我会做修正;内容应该说绝大部分引用罗宝的文章的,这里要谢谢罗宝兄弟,还有写这篇文章@晨色星空J2EE也给了我很大帮助,这里也谢谢@晨色星空J2EE之前在弄这个的时候,跟转载 2014-08-05 05:37:27 · 1008 阅读 · 0 评论 -
zookeeper技术浅析
Zookeeper是hadoop的一个子项目,虽然源自hadoop,但是我发现zookeeper脱离hadoop的范畴开发分布式框架的运用越来越多。今天我想谈谈zookeeper,本文不谈如何使用zookeeper,而是zookeeper到底有哪些实际的运用,哪些类型的应用能发挥zookeeper的优势,最后谈谈zookeeper对分布式网站架构能产生怎样的作用。 Zookeeper是针原创 2014-07-29 20:34:54 · 1067 阅读 · 0 评论 -
hadoop版本比较
由于Hadoop版本混乱多变,因此,Hadoop的版本选择问题一直令很多初级用户苦恼。本文总结了Apache Hadoop和Cloudera Hadoop的版本衍化过程,并给出了选择Hadoop版本的一些建议。1. Apache Hadoop1.1 Apache版本衍化截至目前(2012年12月23日),Apache Hadoop版本分为两代,我们将第一代Hado转载 2014-08-05 15:30:27 · 823 阅读 · 0 评论 -
HBase如何实现多条件查询
实现条件查询功能使用的就是scan方式,scan在使用时有以下几点值得注意:1、scan可以通过setCaching与setBatch方法提高速度(以空间换时间);2、scan可以通过setStartRow与setEndRow来限定范围。范围越小,性能越高。通过巧妙的RowKey设计使我们批量获取记录集合中的元素挨在一起(应该在同一个Region下),可以在遍历结果时获得很原创 2014-08-20 23:41:56 · 3353 阅读 · 0 评论 -
hbase基础整理
当我们对于数据结构字段不够确定或杂乱无章很难按一个概念去进行抽取的数据适合用使用什么数据库?答案是什么,如果我们使用的传统数据库,肯定留有多余的字段,10个不行,20个,但是这个严重影响了质量。并且如果面对大数据库,pt级别的数据,这种浪费更是严重的,那么我们该使用是什么数据库?hbase数个不错的选择,那么我们对于hbase还存在下列问题:1.Column Family代表什么?2.原创 2014-08-20 11:22:51 · 743 阅读 · 0 评论 -
ubuntu系统下eclipse配置hadoop开发环境并运行wordcount程序
先列出本机环境:ubuntu 12eclipse 3.6hadoop 1.1.2ubuntu12环境下hadoop1.1.2伪分布式配置成功,然后用Ant编译eclipse hadoop plugin插件,接下来就是eclipse hadoop开发环境配置了。具体的操作如下:一、在eclipse下安装开发hadoop程序的插件将编译好的hadoo转载 2014-08-31 03:07:44 · 1068 阅读 · 0 评论 -
Mahout算法集
Apache Mahout 是 ApacheSoftware Foundation (ASF) 旗下的一个开源项目,提供一些可扩展的机器学习领域经典算法的实现,旨在帮助开发人员更加方便快捷地创建智能应用程序,并且,在 Mahout 的最近版本中还加入了对Apache Hadoop 的支持,使这些算法可以更高效的运行在云计算环境中。在Mahout实现的机器学习算法见下表转载 2014-08-14 09:26:16 · 640 阅读 · 0 评论 -
hbase学习笔记
说在前面,本文部分内容来源于社区官网经过适度翻译,部分根据经验总结,部分是抄袭网络博文,(不一一列举引用,在此致歉)一并列在一起,本文的目的,希望能总结出一些有用的,应该注意到的东西,基本思路是先提出一个话题,在此话题内,把相关联的东西加进去,而不是单独分出章节单独介绍,虽然条理性欠差,但有利于后期根据关键词查找。 Apache HBase 是Hadoop database的简称,hba原创 2014-08-27 12:01:46 · 675 阅读 · 0 评论 -
聚类算法-canopy
Canopy Clustering 这个算法是2000年提出来的,此后与Hadoop配合,已经成为一个比较流行的算法了。确切的说,这个算法获得的并不是最终结果,它是为其他算法服务的,比如k-means算法。它能有效地降低k-means算法中计算点之间距离的复杂度。Mahout中已经实现了这个算法,不知道其他的机器学习类库和工具中,有多少是实现了这个算法的。感觉上这个算法要实现不难,难在和Hadoo转载 2014-08-14 09:22:00 · 982 阅读 · 0 评论 -
Hadoop Mapper 阶段将数据直接从 HDFS 导入 Hbase
数据源格式如下:转载 2014-08-26 18:35:08 · 1456 阅读 · 0 评论 -
Pig、Hive、MapReduce 解决分组 Top K 问题
PS:如果说hive类似sql的话,那pig就类似plsql存储过程了:程序编写更自由,逻辑能处理的更强大了。pig中还能直接通过反射调用java的静态类中的方法,这块内容请参考之前的相关pig博文。附几个HIVE UDAF链接,有兴趣的同学自己看下:Hive UDAF和UDTF实现group by后获取top值 http://blog.youkuaiyun.com/liuzh转载 2014-08-26 06:44:09 · 740 阅读 · 0 评论 -
HBase Shell常用命令
下面我们看看HBase Shell的一些基本操作命令,我列出了几个常用的HBase Shell命令,如下:名称命令表达式创建表create '表名称', '列名称1','列名称2','列名称N'添加记录 put '表名称', '行名称', '列名称:', '值'查看记录转载 2014-08-20 23:48:34 · 614 阅读 · 0 评论