![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大数据知识点总结
莫西里
Hadoop分布式系统开发
展开
-
Spark Hint
介绍SparkHint是在使用SparkSQL开发过程中,针对SQL进行优化的一点小技巧,我们可以通过Hint的方式实现BraodcastJoin优化、Reparttion分区等操作,提供了传统SQL中无法实现的一些功能。语法介绍SparkSQL的语法定义是通Antlr4实现的,Antlr4是一个提供语法定义、语法解析等第三方库,Antlr4语法的定义基本复合正则表达式,因此会正则表达式的同...原创 2019-11-28 10:55:11 · 2870 阅读 · 1 评论 -
HBase总结(4)--数据扫描与Scan对象
一、介绍Put、Delete与Get对象都是Row的子类,从该继承关系中我们就可以了解到Get、Delete与Pu对象本身就只能进行单行的操作,HBase客户端还提供了一套能够进行全表扫描的API,方便用户能够快速对整张表进行扫描,以获取想要的结果---scan二、流程介绍全表扫描是一种不需要行键值的操作,因此初始化时不需要指定行键值,因此就产生了不同的使用方法1、不进行Scan对原创 2016-03-05 15:01:06 · 15340 阅读 · 0 评论 -
Eclipse远程提交MapReduce任务到Hadoop集群
一、介绍以前写完MapReduce任务以后总是打包上传到Hadoop集群,然后通过shell命令去启动任务,然后在各个节点上去查看Log日志文件,后来为了提高开发效率,需要找到通过Ecplise直接将MaprReduce任务直接提交到Hadoop集群中。该章节讲述用户如何从Eclipse的压缩包最终完成Eclipse提价任务给MapReduce集群。二、详解1、安装Eclipse,安装原创 2016-03-30 21:01:35 · 6557 阅读 · 2 评论 -
HBase总结(5)--过滤器介绍
一、介绍HBase过滤器是一套为完成一些较高级的需求所提供的API借口。从过滤器的名称我们就可以看出:过滤器就是对数据库获取的数据进行过滤,将符合条件的数据返回客户端,从而减少从region服务器想客户端发送的数据,从而减少数据传输,提高效率。二、解释1、过滤器体系HBase已经提供了很多完成的过滤器,通过这些过滤器我们已经可以实现自己所需要的绝大多数功能,但同时HBase提供了原创 2016-03-07 13:29:07 · 1281 阅读 · 0 评论 -
HBase总结(10)--协处理器
一、介绍Hbase作为列存储的数据库,很多关于统计的函数没有直接快速的计算,因此HBase提供了协处理器的功能,协处理提供了用户在region服务器端插入自己的代码,从而实现特定功能的权利。通过用户自写的协处理器,用户可以创建二级索引、完成行数量的统计等功能。二、解释1、协处理器的分类:协处理器主要分为两类:观察者模式(obverser)和终端(endpoint)两种,这两种写出器原创 2016-03-18 21:35:57 · 691 阅读 · 0 评论 -
提交MapReduce任务时,Ecplise自动生成Jar包
一、介绍上一届中提到了任务提交到Hadoop集群中的方法,但是最后一节时因为需要将jar包提交给hadoop集群,因此需要用户收到配置一个Export 一个任务的jar包,并在MapReduce任务的Main函数中指定。这里讲如何设置ecplise自动生成一个jar包。需要的工具是ant与ecplise的配合使用二、详解1、ant安装从这里下载ant的安装包,下载完成后,将ant解原创 2016-03-31 11:04:04 · 1242 阅读 · 0 评论 -
Linux下Ant编译Hadoop-eclipse-plugin-2.x.x.jar插件
一、介绍因为一开始想做关于MapReduce任务的远程提交,在这个过程中有幸试验了Hadoop2.x 版本的eclipse 插件的编译方法,这里总结一下,方便新手学习二、过程1、原创 2016-03-31 15:34:08 · 1495 阅读 · 0 评论 -
HBase总结(6)--比较过滤器
一、介绍比较过滤器是一种专门的用于比较的过滤器,通过实现比较运算符与比较器,来实现用户的需求二、详解1、行过滤器该种过滤器主要对行值(row)进行过滤,不符合条件的row的行将要被过滤掉。public void testRowFilter(String tableName,CompareOp compareOp,ByteArrayComparable compare) {原创 2016-03-08 13:44:43 · 1982 阅读 · 0 评论 -
HBase总结(7)--专用过滤器
一、介绍除了上述介绍的比较过滤器以外,hbase还提供了许多专门用于一些特殊场景的过滤器,这样的过滤器叫做专用过滤器二、例子1、单列值过滤器:SingleColumnValueFilter该过滤器用在用用户指定的某一类来过滤一行,即如果某一行的指定列的最大版本的数据不符合条过滤器条件时,整行数据将要被过滤掉。该过滤器有两个构造函数:(1)SingleColumnValueF原创 2016-03-09 20:36:13 · 2913 阅读 · 0 评论 -
HBase总结(11)--观察者模式
一、介绍上一届简单介绍了协处理器的主要功能以及相应的特点,但没有对写出器的具体内容作出详细的解释。这篇文章解释了协处理器的观察者模式。观察者模式就是提供了一个触发器,用户通过集成相应的类(BaseRegionObverser等),重写其中想要实现的方法,然后将协处理器加载到表中,这是表就会通过协处理器“监听”用户预先设置的动作,一旦该动作被执行,用户所写的钩子函数就被触发,然后就能实现相应的功原创 2016-03-21 20:26:57 · 917 阅读 · 0 评论 -
HBase总结(8)--附加过滤器、FilterList
一、介绍本节介绍HBase提供的最后两种过滤器,并且也介绍多个过滤器配合使用的方法。二、详解1、附加过滤器(1)跳转过滤器:SkipFilter(Filter filter)该过滤器的参数为一个过滤器。该过滤器的作用为:当参数中的过滤器过滤一个某一个KeyValue对象时,则跳转过滤器会将整行的数据进行过滤。public void example(String tabl原创 2016-03-14 20:02:54 · 2732 阅读 · 0 评论 -
通过MapReduce JobID 停止(kill)指定任务
一、说明 有时候我们在提交任务以后,能够获取一个MapReduce任务的ID,一般为Job_**********_xxxx的组合,下面将介绍如何获取JobID,与通过其他程序与JOBID停止一个正在运行的任务。二、流程1、提交任务并获取ID值。通常情况下,我们进行远程提交时,都会使用job.waitForCompletion(true);函数去提交一个任务并且在ecli原创 2016-05-09 21:27:23 · 9128 阅读 · 0 评论 -
Hadoop中Configuration类与参数设置规则
一、介绍我们在使用MapReduce框架进行开发时,总会使用到Configuration类的一个实例对象去初始化一个人任务,然后进行任务提交,而在整个任务执行过程中,客户点实例化的Configuration的对象,将作为整个任务过程中参数版本,任务执行过程中所需要的所有参数都是从客户端实例化的Configuration对象中进行获取。下面详细介绍一下Configuration的参数过程。二原创 2017-01-21 20:51:15 · 19641 阅读 · 2 评论 -
HBase总结(3)--数据删除与Delete对象
一、介绍本章的删除与前两节的数据添加(Put)和数据查询(Get)的使用方法基本上是相同的,只不过要介绍一下在进行删除过程中一些需要注意的地方。二、过程介绍Delete删除的过程分为单行删除、多行删除与原子性操作1、单行删除HBase的删除并不像传统关系型数据库的删除,HBase删除动作并不会立刻将HBase存储的数据进行删除,而是心在制定的KeyValue存储单元上打上删除标原创 2016-03-05 11:49:45 · 16388 阅读 · 0 评论 -
HBase总结(9)--计数器
一、介绍如果在HBase中使用某一行的值进行Put操作进行计数器功能,为了保证原子性操作,必然会导致一个客户端对计数器所在行的资源占有,如果在大量进行计数器操作时,则会占有大量资源,并且一旦某一客户端崩溃,将会使得其他客户端进入长时间等待。HBase中定义了一个计数器来完成用户的技术操作,并且防止资源占有问题,并且也保证其原子性。二、解释1、创建计数器在HBase中,HBase将某原创 2016-03-16 20:40:17 · 3663 阅读 · 0 评论 -
HBase总结(2)--数据查询与Get对象
一、介绍在HBase客户端的API中提供了两种从服务器端获取数据的方式。Get行获取和Scan扫描表的方式。下面就简单介绍一些使用Get获取数据时的使用方法二、数据获取Get数据的获取与上节Put数据插入一样,分为多种使用方式。1、单行获取:get(Get get)单行获取每次RPC请求值发送一个Get对象中的数据,因为Get对象初始化时需要输入行键,因此可以理解为一个Get对原创 2016-03-04 11:42:36 · 9780 阅读 · 1 评论 -
hadoop学习(7)----将Hadoop2.6源码导入到win7下的eclipse
1 介绍在我们学习Hadoop过程中,源码学习将是一种很好的学习方式,笔者通过这篇微博记录一下自己的如果编译Hadoop2.6的源码并且导入到eclipse中2 编译在编译过程中需要几个工具:Maven、protobuf2.5(1)安装Maven下载地址:http://maven.apache.org/download.cgi下载后解压,并且开始配置环境变量:新建变量M原创 2015-06-21 10:07:10 · 1603 阅读 · 0 评论 -
Hadoop学习(8)----MapReduce讲解
1 Hadoop的两个核心组件:HDFS和MapReduce,HDFS负责大数据的分布式存储,而MapReduce则是对大数据的分布式处理框架,能够并行的进行大数据文件处理,从而提高处理效率。该篇博客就是对MapReduce进行讲解。2 MapReduce讲解MapReduce框架原创 2015-06-21 11:06:54 · 1055 阅读 · 0 评论 -
Hadoop学习(1)----HDFS详解
1、HDFS介绍HDFS(Hadoop Distrabuted File System)是Apache顶级项目Hadoop的重要组件,是一种分布式文件系统,基于数据流模式访问和为处理大文件而产生,具有高可用性、高安全性、高扩展性、高容错率等特点,因为使用在普通的商用PC中和节点扩展性,所以HDFS文件系统可以通过购置廉价的上午电脑而实现现行扩展存储和规模的强大优势。2、基础概念2.1原创 2015-06-07 16:35:55 · 788 阅读 · 0 评论 -
Hadoop学习(2)----hdfs shell命令
1. shell介绍HDFS(Hadoop Distributed File System)作为Hadoop的文件系统,其也拥有文件系统的一些属性,例如权限、shell语句等。当操作HDFS文件系统上的文件的时候Hadoop提供了两种方法,一种是hadoop的shell语句,另一个是hadoop的原生API借口。Hadoop shell其实与linux的shell作用相同,都是对文件、用户原创 2015-06-09 11:43:44 · 644 阅读 · 0 评论 -
Hadoop学习(3)----HDFS API
1 API介绍除了HDFS shell以外,hdfs还可以通过api接口操作文件的整个文件系统,并且在MapReduce任务过过程中,也有可能会用到HDFS的api接口,今天简单介绍一下HDFS的api接口2 api详解我们通过实现shell命令行的方式进行api的介绍(1)ls命令行的实现使用api:FileSystem.list(Path path)public sta原创 2015-06-11 23:53:15 · 643 阅读 · 0 评论 -
hadoop学习(10)----map端的执行过程
1、介绍在经过split阶段后,将会在RecordReader的类或者其子类中将split(分片的数据)读取成键值对,这样就可以讲split分片中的数据以键值对的方式读入到map端去了。2、详解首先我们看一下org.apache.hadoop.mapreduce.Mapper类中的结构public class Mapper { public abstract class原创 2015-07-10 21:31:56 · 722 阅读 · 0 评论 -
Hadoop学习(9)----MapReduce阶段的Split阶段
一、介绍在上一届的信息中我们已经知道MapReduce框架,在处理过程中主要分为四个阶段:Split(分片)阶段、Map阶段、Shuffle(混排、重拍)阶段、Reduce阶段。接下来笔者将会分别详细介绍着四个阶段,也会加上Hadoop2.6.0的源码进行分析。从而加深读者对Split阶段的理解。我们知道从文件开始读取,经过一些列处理后,文件数据将以键值对的方式进入到Map阶段中,这就是S原创 2015-07-01 21:41:03 · 3199 阅读 · 0 评论 -
hadoop学习(4)----hadoop-1.2.1的安装
1 下面是对原创 2015-06-15 09:38:44 · 560 阅读 · 0 评论 -
Hadoop学习(5)-----hadoop 2.6的安装
1 介绍为了解决Hadoop 1.x框架中的问题:例如单namenode节点问题等问题,Apache基金会推出新一代的hadoop框架,Hadoop 2.x系列版本,在该版本中,HDFS的一些机制进行了改善,并且Hadoop的MapReduce框架升级为YARY框架(MapReduce 2),并且实现了与spark等现在叫流行的大数据分析框架的集成。关于Hadoop 2.x系列,我们将会在后面原创 2015-06-16 23:21:42 · 753 阅读 · 0 评论 -
hadoop集群Restful接口的使用
一、介绍 在通常情况下,我们使用HDFS的command命令去查看hdfs上的文件,或者使用默认的hadoop的web管理器查看,从hadoop0.2.23后,hadoop设计了一套Rest风格的接口,通过http协议访问的方式,去浏览和操作HDFS上的数据。下面将一下hadoop的rest接口。二、解析(1)原生restHDFS的原生rest接口需要进行开启才能够使用原创 2015-08-31 15:16:04 · 11193 阅读 · 0 评论 -
HBase总结(1)-- 数据插入与Put对象
一、介绍HBase的客户端包中集中了CURD操作,用户可以通过其中不同种类的API尽心CURD操作。HBase数据插入使用Put对象,Put对象在进行数据插入时,首先会想Hbase集群发送一个RPC请求,得到响应后将Put类中的数据通过序列化的方式传给HBase集群,集群节点拿到数据后进行添加功能。二、数据插入详解HBase客户端拥有多重方式进行数据插入,通过调整不同的属性从而实现原创 2016-03-03 19:59:36 · 38068 阅读 · 2 评论 -
Hadoop(6)----hadoop1.x 与 hadoop2.x之间的区别
1 介绍随着企业数据化和Hadoop的应用越加广泛,hadoop1.x的框架设计越来越无法满足人们对需求,Apache一直在对Hadoop1.x进行修改,最后退出了新一代的Hadoop2.x,下面笔者将从HDFS和MapReduce两个方面对Hadoop1.x和Hadoop2.x直接的区别2 HDFS之间的区别Hadoop 1.X:在Hadoop1.x中,HDFS的采用Mast原创 2015-06-18 23:29:49 · 1871 阅读 · 0 评论