Big Data
文章平均质量分 68
坡上的云
软件工程师,专注于 大数据 & AI 领域。
展开
-
利用 mahout 实现的 k-means 算法对欧冠球队分档
网络上现在介绍mahout实现的 k-means 算法很多都使用Synthetic Control Chart Time Series数据synthetic_control.data 来做分析的数据。不过对于初学者来说,synthetic_control.data 的数据可能不太便于理解(它包括600个数据点,每个数据点有60个属性),同时分析出来的结果也不直观,难以在初学者脑中迅速形成感性的印象原创 2013-11-18 22:40:33 · 2222 阅读 · 1 评论 -
从Hadoop 1.x升级到Yarn
这里简单记录一下主要步骤。1、停掉所有的Hadoop 1.x进程2、copy Hadoop 2.x项目文件到所有节点上3、设置Hadoop 2.x的环境变量4、编辑Hadoop 2.x的配置文件值得注意的是:需要使用之前版本的HDFS的meta data和 data。因此以下几项需要和之前版本Hadoop的设置一样:a) core-site.xml- hadoop.原创 2014-03-15 17:25:17 · 1577 阅读 · 0 评论 -
HBase导出CSV格式数据的方法
本文的测试环境为hbase-0.96.0 + yarn(hadoop-2.0.3-alpha) + pig-0.12.0。在测试前,先创建了一张名为test的hbase表,它内容非常简单,就只有一行数据:HBase export工具导出的数据的格式是sequence file。比如,在执行完命令“bin/hbase org.apache.hadoop.hbase.mapreduce.E原创 2014-03-16 11:21:43 · 23295 阅读 · 2 评论 -
Oozie 与 Yarn 协同工作
记录一下Oozie针对于Yarn的安装和配置流程。本文Oozie的版本为3.3.2,Hadoop为2.2。原创 2014-03-17 22:58:01 · 7897 阅读 · 0 评论 -
3 分钟学会调用 Apache Spark MLlib KMeans
Apache Spark MLlib是Apache Spark体系中重要的一块拼图:提供了机器学习的模块。不过,目前对此网上介绍的文章不是很多。拿KMeans来说,网上有些文章提供了一些示例程序,而这些程序基本和Apache Spark 官网上的程序片断类似:在得到训练模型后,几乎都没有展示如何使用该模型、程序执行流程、结果展示以及举例测试数据等部分。笔者根据Apache Spark官网上的程序片断,写了一个完整的调用MLlib KMeans库的测试程序,并成功在Spark 1.0 + Yarn 2.2 的原创 2014-07-27 17:31:35 · 7627 阅读 · 0 评论 -
图数据库 Titan 快速入门
尤其在互联网世界,图计算越来越受到人们的关注,而图计算相关的软件也越来越丰富。本文将快速展示 Titan这个open source 的图数据库。原创 2014-10-01 21:38:44 · 21346 阅读 · 1 评论 -
Spark GraphX 入门实例完整scala代码
由于天然符合互联网中很多场景的需求,图计算正受到越来越多的青睐。Spark GraphX 是作为 Spark 技术堆栈中的一员,担负起了 Spark 在图计算领域中的重任。网络上已经有很多图计算和 Spark GraphX 的概念介绍,此处就不再赘述。 本文将一篇很好的 Spark GraphX 入门文章中代码块整合为一个完整的可执行类,并加上必要注释以及执行结果,以方便有兴趣的朋友快速从 API 角度了解 Spark GraphX。原创 2014-12-20 20:49:16 · 5757 阅读 · 0 评论 -
通过 Job History Server 的 web console 查阅在 Yarn 上 MapReduce job 的 job conf xml 文件
很多时候,Yarn 的用户希望知道自己运行过的某个 MapReduce job 的运行参数,此时可以从MapReduce History Server的 web console上查阅该 job的conf xml 文件内容。当然用户也可以先登录Yarn 的 web console的地址,然后再从上面跳转到 Job History Server 的 web console进行查阅。本文将以一个简单的图文例子来具体演示该功能。原创 2014-12-22 22:24:32 · 7726 阅读 · 1 评论 -
Hadoop 2.6.0 重要特性之 Docker Container Executor (DCE)
Docker Container Executor (DCE) 是 Hadoop 2.6.0 包含的一个重要特性:至此,大数据的巨人 Hadoop 也终于可以利用当前虚拟化/云计算领域的宠儿 Docker 的强大能力了。原创 2015-01-12 20:57:32 · 4481 阅读 · 3 评论 -
Spark 中 map 与 flatMap 的区别
通过一个实验来看Spark 中 map 与 flatMap 的区别。原创 2014-12-14 20:00:34 · 46627 阅读 · 2 评论 -
从 Yarn 回滚到 Hadoop 1.x
上一篇博客介绍了如何从Hadoop 1.x升级到Yarn ,而这篇博客将介绍如何从从 Yarn 回滚到 Hadoop 1.x。以下是主要步骤。1、首先,能够回滚的前提是之前upgrade后没有执行过finalizeUpgrade的操作,否则将会导致回滚失败、NameNode不能正常启动:2、设置、启用Hadoop 1.x的环境变量3、更改‘dfs.data.dir’目录的权限原创 2014-03-16 10:20:08 · 1142 阅读 · 0 评论 -
Yarn的JVM重用功能——uber
在文章开头,我想先做几点说明:1、本文的内容来自我对Yarn的相应功能的理解和实践。而我对该部分功能的理解主要来自对Hadoop的开发者之前相应言论的分析,并且我也将我的分析发给了Hadoop community, 并得到了Yarn的创始人兼架构师Arun Murthy的肯定回复。2、本文中uber的配置部分,主要参考之前Hadoop开发者的言论。但是我当初看该言论的时候对一些细节有所疑惑原创 2013-11-12 22:54:50 · 10100 阅读 · 4 评论 -
Hadoop 1.x 版本中的Task Controller 介绍
目前网络上对Hadoop 的 TaskController介绍的资料虽然不算少,但感觉纯谈感念的占多数,可能会使读者理解起来感到比较抽象,因此我在这里整理了一些自己对Task Controller的浅见,以及为本文设计的实例,希望能对读者起到一点帮助。 本文介绍Task Controller的顺序为:作用、配置、原理(由表及里、由浅入深)。另外,本文的代码是基于ApacheHadoop-1原创 2013-11-02 19:31:50 · 1884 阅读 · 0 评论 -
MapReduce的input为小文件和har文件的相关实验
如果MapReduce的input是一些小文件(文件size小于hdfs的默认block大小),那么MapReduce job将会为每一个小文件开启一个单独的map——最后导致有大量的map,而每一个map其实只处理一小部分数据,却花了很大的时间在map自身的启动和停止上。以下的实验将会验证小文件数量对map数量的影响,以及input为har文件时map数量的情况。实验一:Wo原创 2014-01-04 21:49:44 · 2933 阅读 · 2 评论 -
MapReduce的input为包含小文件的zip压缩文件的相关实验
Hadoop中也支持很多种压缩算法,比如gzip, zip, lzo等。将多个小文件压缩成一个压缩文件,不仅能节省空间,而且还能减少NameNode的内存压力。而且,有一些压缩文件(比如zip)对于MapReduce具有可分割性,能被分割成若干个split,适合作为 MapReduce 的输入。当然,如果一个压缩文件的size并不大,那么即便它包含了一定数量的小文件,MapReduce Job也只原创 2014-01-05 23:15:04 · 1574 阅读 · 0 评论 -
MapReduce的inputformat为CombineFileInputFormat的相关实验
上面文章分别介绍了面对大量小文件时,可以通过SequenceFile的方法来减少启动map的数量。其实,还可以通过使用CombineFileInputFormat来减少map的数量。由于网络上有不少介绍CombineFileInputFormat的文章,本文就不再赘述。这里推荐一篇文章:http://shiyanjun.cn/archives/299.html根据这篇文章里提供的代码,可以原创 2014-01-05 16:59:23 · 1127 阅读 · 0 评论 -
MapReduce的input为SequenceFile的相关实验
书接上文:解决小文件多的另外一个办法是使用SequenceFile。实验一:用Java code把指定文件夹下的所有小文件打包成SequenceFile代码如下:执行完该java 程序后,hdfs上面生成了SequenceFile: /sfile/sfile.seq我们可以用命令"hadoop dfs -text /sfile/sfile.seq" 以text原创 2014-01-05 11:26:17 · 2654 阅读 · 0 评论 -
利用 Java API 监控 Zookeeper 的结点变化
作为分布式系统的协调工具,Zookeeper 在 Hadoop 生态系统里扮演着很重要的角色。因为利用 Zookeeper,我们可以很轻松地在分布式系统里实现诸如“统一命名服务”、“分布式锁服务”、“ 配置管理”和“选举领导者”等功能。而Zookeeper能有如此多用武之地的主要原因是它拥有分布式系统中至关重要的几个性能:高一致性、高可用性和高性能。其中最重要的特性是高一致性。 在分布式系统里面实原创 2014-01-26 22:36:25 · 6795 阅读 · 0 评论 -
关于 hadoop-2.2 配置中的 yarn.nodemanager.aux-services 项
在hadoop-2.0.3-alpha 的配置中,yarn.nodemanager.aux-services项的默认值是“mapreduce.shuffle”,但如果在hadoop-2.2 中继续使用这个值,NodeManager 会启动失败,在logs/yarn-biadmin-nodemanager-hostname.log里会报如下的错:2014-01-19 22:35:04,309 F原创 2014-01-20 06:19:16 · 25089 阅读 · 0 评论 -
使用cygwin 和 scala-eclipse 搭建 Mahout 源代码的开发环境
Open Source的projects很好,不过有些时候难免需要根据自己的需要来更改、重编译Open Source project的源代码。今天搭建了一个Mahout 源代码的Eclipse开发环境。Mahout是用Maven编译的,而且运行在Linux系统上。但我比较习惯在windows上面做开发,所以就基于cygwin搭建了一个Eclipse开发环境。概要步骤如下:1、安装cygwi原创 2014-03-01 22:02:04 · 2061 阅读 · 0 评论 -
Spark 与 Hadoop 关于 TeraGen/TeraSort 的对比实验(包含源代码)
自从 Hadoop 问世以来,MapReduce 在很长时间内都是排序基准测试的纪录保持者,但这一垄断在最近被基于内存计算的 Spark 打破了。在今年Databricks与AWS一起完成的一个Daytona Gray类别的Sort Benchmark中,Spark 完胜 Hadoop MapReduce:“1/10计算资源,1/3耗时”。这是个很有意思的对比实验,因此笔者也在一个小规模集群上做了一个微缩版的类似试验。原创 2015-01-03 21:45:02 · 7795 阅读 · 10 评论