自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(39)
  • 资源 (3)
  • 收藏
  • 关注

原创 Next 7.5集成Gitalk

介绍最近在搭建Hexo + Next 的博客系统,在添加评论系统时选用了gitalk系统作为首选的评论系统,但是在添加过程中遇到了很多问题,在经过了好几次测试,终于将gitalk 与 Next 7.5.0 结合在一起。步骤创建存储仓库首先需要在github上创建一个新的public的仓库,名称为blog-comment创建Application创建地址为:https://github....

2019-11-29 20:08:33 450

原创 Spark Hint

介绍SparkHint是在使用SparkSQL开发过程中,针对SQL进行优化的一点小技巧,我们可以通过Hint的方式实现BraodcastJoin优化、Reparttion分区等操作,提供了传统SQL中无法实现的一些功能。语法介绍SparkSQL的语法定义是通Antlr4实现的,Antlr4是一个提供语法定义、语法解析等第三方库,Antlr4语法的定义基本复合正则表达式,因此会正则表达式的同...

2019-11-28 10:55:11 2769 1

原创 Java 访问控制权限

一、介绍访问控制权限控制客户端对类的访问权限,提供给客户端不同权限的接口,对整个程序结构和接口与实现都进行支持。二、详解1、包包(Package)基本上写过java语言都熟悉package是什么。package的主要作用,是对类提供一个命名空间。程序员可以将多个类文件放置到同一个package下来组织这些类文件关系。我们可以说一个类是由package+className实现了一个类的唯一标示。(1)

2017-11-02 11:33:10 696

原创 Java 初始化与清理

一、介绍程序在运行过程中,可能因为开发人员忘记给变量进行初始化导致程序出现错误,也可能因为无法释放内存造成内存泄露最终导致大量内存被占用,程序被动终止。因此在Java类或者对象的生命期间,变量(包括静态变量)的初始化以及对象不在使用时的内存回收也决定这程序的健壮性等多个方面。 初始化:初始化只是类或者对象在使用前,对其属性/变量进行初始化一个值。 清理:是指当一个对象使用后,对其占用的资源

2017-09-29 23:46:16 695

原创 Java 操作符

Java 操作符一、介绍Java中的操作符是用来操作Java对象的符号,常见的有加减乘除等操作,Java的操作符从C/C++的操作符继承而来,因此在很大程度上与C++的操作符相似。二、详解Java操作符分为算数操作符、赋值操作符、逻辑操作符、递增/递减操作符、位操作符等多种。1、优先级Java操作符存在一定的优先级别,最常见的就是先乘除后加减,其他操作符的优先级一般很难

2017-09-28 13:01:36 704

原创 Hadoop中Configuration类与参数设置规则

一、介绍我们在使用MapReduce框架进行开发时,总会使用到Configuration类的一个实例对象去初始化一个人任务,然后进行任务提交,而在整个任务执行过程中,客户点实例化的Configuration的对象,将作为整个任务过程中参数版本,任务执行过程中所需要的所有参数都是从客户端实例化的Configuration对象中进行获取。下面详细介绍一下Configuration的参数过程。二

2017-01-21 20:51:15 19601 2

原创 Solr的空间索引

一、Solr空间搜索的目的(1)索引空间点数据和其他形状的数据(2)通过圆形、正方形或者其他形状进行过滤搜索结果(3)通过两个点之间的距离或者是两个多边形的形状进行排序或者评分二、Solr空间搜索的域类型(FieldType)(1)LatLonType与POINT这两种类型都是数据点类型。LatLonType类型存储一个点在地图上的经纬度信息。POINT类型则是存储一个

2016-08-25 20:31:49 2602

原创 Solr的Schema API(模式)

一、介绍Solr中的每一个core/collection都拥有自己的schema(模式),在solr 5之前,solr使用schema.xml文件进行定义,早solr 5以后,solr支持通过api对core/collection进行模式的修改。因此在solr 5用户有两种模式方式:经典模式与manager-schema,两种模式。二、解释1、经典模式与manager-schema

2016-07-11 21:30:17 2647

原创 Solr中的Field、CopyField、DynamicField与其他Field

一、介绍在用户进行索引或者搜索的过程中,各种各样的Field提供给用户数据存储的借口,Solr通过读取Field的属性来对Field中的数据进行相关的处理。这里介绍Solr常用的Field(域)、CopyField(复制域)、DynamicField(动态域)域其他常用域。二、详解1 FieldField相当于Java中的类属性,用户存放数据,因此用户根据业务需要去定义相关的Fie

2016-07-10 17:36:11 6930

原创 Solr学习(2)----FieldType总结

一、介绍solr在对一个域进行存储和处理的时候,会根据域数据类型去进行相应的处理,例如Text类型的数据会进行分词处理,然后在进行索引的创建,并且,用户可以通过对域的类型进行制定,从而更好的操作查询得出的数据。Solr允许用户自定义FieldType(域类型),同时Solr也提供了大量基本的域类型。二、详解1、域类型的属性域类型作为一种数据类型,在创建或者定义时可以指定一些默认属性

2016-07-09 20:57:55 7256

原创 Solr中的Document、Field、Schema

一、介绍        solr是一套基于lucence开发的全文检索框架。在学习solr过程中,要充分掌握几个概念,方便开发者快速学习。solr自己提供了一套数据索引(index)和查询(search)的工具,用户可以通过solr提供的web界面进行相应的索引与查询操作,而在solr进行服务过程中,用户的数据都是以Document(文档)、Field(域)和模式(schema)的形式与sol

2016-07-04 16:02:43 3662

原创 通过MapReduce JobID 停止(kill)指定任务

一、说明       有时候我们在提交任务以后,能够获取一个MapReduce任务的ID,一般为Job_**********_xxxx的组合,下面将介绍如何获取JobID,与通过其他程序与JOBID停止一个正在运行的任务。二、流程1、提交任务并获取ID值。通常情况下,我们进行远程提交时,都会使用job.waitForCompletion(true);函数去提交一个任务并且在ecli

2016-05-09 21:27:23 9088

原创 Linux下Ant编译Hadoop-eclipse-plugin-2.x.x.jar插件

一、介绍因为一开始想做关于MapReduce任务的远程提交,在这个过程中有幸试验了Hadoop2.x 版本的eclipse 插件的编译方法,这里总结一下,方便新手学习二、过程1、

2016-03-31 15:34:08 1488

原创 提交MapReduce任务时,Ecplise自动生成Jar包

一、介绍上一届中提到了任务提交到Hadoop集群中的方法,但是最后一节时因为需要将jar包提交给hadoop集群,因此需要用户收到配置一个Export 一个任务的jar包,并在MapReduce任务的Main函数中指定。这里讲如何设置ecplise自动生成一个jar包。需要的工具是ant与ecplise的配合使用二、详解1、ant安装从这里下载ant的安装包,下载完成后,将ant解

2016-03-31 11:04:04 1232

原创 Eclipse远程提交MapReduce任务到Hadoop集群

一、介绍以前写完MapReduce任务以后总是打包上传到Hadoop集群,然后通过shell命令去启动任务,然后在各个节点上去查看Log日志文件,后来为了提高开发效率,需要找到通过Ecplise直接将MaprReduce任务直接提交到Hadoop集群中。该章节讲述用户如何从Eclipse的压缩包最终完成Eclipse提价任务给MapReduce集群。二、详解1、安装Eclipse,安装

2016-03-30 21:01:35 6521 2

原创 HBase总结(11)--观察者模式

一、介绍上一届简单介绍了协处理器的主要功能以及相应的特点,但没有对写出器的具体内容作出详细的解释。这篇文章解释了协处理器的观察者模式。观察者模式就是提供了一个触发器,用户通过集成相应的类(BaseRegionObverser等),重写其中想要实现的方法,然后将协处理器加载到表中,这是表就会通过协处理器“监听”用户预先设置的动作,一旦该动作被执行,用户所写的钩子函数就被触发,然后就能实现相应的功

2016-03-21 20:26:57 910

原创 HBase总结(10)--协处理器

一、介绍Hbase作为列存储的数据库,很多关于统计的函数没有直接快速的计算,因此HBase提供了协处理器的功能,协处理提供了用户在region服务器端插入自己的代码,从而实现特定功能的权利。通过用户自写的协处理器,用户可以创建二级索引、完成行数量的统计等功能。二、解释1、协处理器的分类:协处理器主要分为两类:观察者模式(obverser)和终端(endpoint)两种,这两种写出器

2016-03-18 21:35:57 685

原创 HBase总结(9)--计数器

一、介绍如果在HBase中使用某一行的值进行Put操作进行计数器功能,为了保证原子性操作,必然会导致一个客户端对计数器所在行的资源占有,如果在大量进行计数器操作时,则会占有大量资源,并且一旦某一客户端崩溃,将会使得其他客户端进入长时间等待。HBase中定义了一个计数器来完成用户的技术操作,并且防止资源占有问题,并且也保证其原子性。二、解释1、创建计数器在HBase中,HBase将某

2016-03-16 20:40:17 3633

原创 HBase总结(8)--附加过滤器、FilterList

一、介绍本节介绍HBase提供的最后两种过滤器,并且也介绍多个过滤器配合使用的方法。二、详解1、附加过滤器(1)跳转过滤器:SkipFilter(Filter filter)该过滤器的参数为一个过滤器。该过滤器的作用为:当参数中的过滤器过滤一个某一个KeyValue对象时,则跳转过滤器会将整行的数据进行过滤。public void example(String tabl

2016-03-14 20:02:54 2720

原创 HBase总结(7)--专用过滤器

一、介绍除了上述介绍的比较过滤器以外,hbase还提供了许多专门用于一些特殊场景的过滤器,这样的过滤器叫做专用过滤器二、例子1、单列值过滤器:SingleColumnValueFilter该过滤器用在用用户指定的某一类来过滤一行,即如果某一行的指定列的最大版本的数据不符合条过滤器条件时,整行数据将要被过滤掉。该过滤器有两个构造函数:(1)SingleColumnValueF

2016-03-09 20:36:13 2892

原创 HBase总结(6)--比较过滤器

一、介绍比较过滤器是一种专门的用于比较的过滤器,通过实现比较运算符与比较器,来实现用户的需求二、详解1、行过滤器该种过滤器主要对行值(row)进行过滤,不符合条件的row的行将要被过滤掉。public void testRowFilter(String tableName,CompareOp compareOp,ByteArrayComparable compare) {

2016-03-08 13:44:43 1971

原创 HBase总结(5)--过滤器介绍

一、介绍HBase过滤器是一套为完成一些较高级的需求所提供的API借口。从过滤器的名称我们就可以看出:过滤器就是对数据库获取的数据进行过滤,将符合条件的数据返回客户端,从而减少从region服务器想客户端发送的数据,从而减少数据传输,提高效率。二、解释1、过滤器体系HBase已经提供了很多完成的过滤器,通过这些过滤器我们已经可以实现自己所需要的绝大多数功能,但同时HBase提供了

2016-03-07 13:29:07 1264

原创 HBase总结(4)--数据扫描与Scan对象

一、介绍Put、Delete与Get对象都是Row的子类,从该继承关系中我们就可以了解到Get、Delete与Pu对象本身就只能进行单行的操作,HBase客户端还提供了一套能够进行全表扫描的API,方便用户能够快速对整张表进行扫描,以获取想要的结果---scan二、流程介绍全表扫描是一种不需要行键值的操作,因此初始化时不需要指定行键值,因此就产生了不同的使用方法1、不进行Scan对

2016-03-05 15:01:06 15315

原创 HBase总结(3)--数据删除与Delete对象

一、介绍本章的删除与前两节的数据添加(Put)和数据查询(Get)的使用方法基本上是相同的,只不过要介绍一下在进行删除过程中一些需要注意的地方。二、过程介绍Delete删除的过程分为单行删除、多行删除与原子性操作1、单行删除HBase的删除并不像传统关系型数据库的删除,HBase删除动作并不会立刻将HBase存储的数据进行删除,而是心在制定的KeyValue存储单元上打上删除标

2016-03-05 11:49:45 16302

原创 HBase总结(2)--数据查询与Get对象

一、介绍在HBase客户端的API中提供了两种从服务器端获取数据的方式。Get行获取和Scan扫描表的方式。下面就简单介绍一些使用Get获取数据时的使用方法二、数据获取Get数据的获取与上节Put数据插入一样,分为多种使用方式。1、单行获取:get(Get get)单行获取每次RPC请求值发送一个Get对象中的数据,因为Get对象初始化时需要输入行键,因此可以理解为一个Get对

2016-03-04 11:42:36 9740 1

原创 HBase总结(1)-- 数据插入与Put对象

一、介绍HBase的客户端包中集中了CURD操作,用户可以通过其中不同种类的API尽心CURD操作。HBase数据插入使用Put对象,Put对象在进行数据插入时,首先会想Hbase集群发送一个RPC请求,得到响应后将Put类中的数据通过序列化的方式传给HBase集群,集群节点拿到数据后进行添加功能。二、数据插入详解HBase客户端拥有多重方式进行数据插入,通过调整不同的属性从而实现

2016-03-03 19:59:36 37906 2

原创 Cesium.js 加载3D模型

一、Cesuimjs介绍Cesiunjs是一套GIS行业中进行地图渲染的js库,该库使用的WebGL进行地图渲染。并且结合HTML5进行相应,从而实现3D中渲染地图。本篇文章则介绍如何将后缀名为max的文件加载到Cesiumjs中去。二、加载过程因为cesium只支持GLTF格式的3D描述文件,而笔者拿到的.max文件。因此要实现从max文件转换到gltf文件过程,然后通过cesium相应的api...

2016-02-29 14:25:22 18028 8

原创 Log4j详解

一、介绍Log4j是Apache基金会下的一个开源的日志组件。其强大的日志功能使得其在Java项目中应用十分广泛,其官方网站为:http://logging.apache.org/log4j/1.2/二、Log4j详解1、Log4j组成Log4j主要有三个组件组成:日志等级组件(logger)、日志输出组件(appender)和日志格式组件(layout)。(1)日志等级组

2016-02-25 21:05:26 553

原创 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 11170

原创 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 720

原创 Hadoop学习(9)----MapReduce阶段的Split阶段

一、介绍在上一届的信息中我们已经知道MapReduce框架,在处理过程中主要分为四个阶段:Split(分片)阶段、Map阶段、Shuffle(混排、重拍)阶段、Reduce阶段。接下来笔者将会分别详细介绍着四个阶段,也会加上Hadoop2.6.0的源码进行分析。从而加深读者对Split阶段的理解。我们知道从文件开始读取,经过一些列处理后,文件数据将以键值对的方式进入到Map阶段中,这就是S

2015-07-01 21:41:03 3148

原创 Hadoop学习(8)----MapReduce讲解

1 Hadoop的两个核心组件:HDFS和MapReduce,HDFS负责大数据的分布式存储,而MapReduce则是对大数据的分布式处理框架,能够并行的进行大数据文件处理,从而提高处理效率。该篇博客就是对MapReduce进行讲解。2 MapReduce讲解MapReduce框架

2015-06-21 11:06:54 1050

原创 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 1601

原创 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 1855

原创 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 749

原创 hadoop学习(4)----hadoop-1.2.1的安装

1 下面是对

2015-06-15 09:38:44 558

原创 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 634

原创 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 637

原创 Hadoop学习(1)----HDFS详解

1、HDFS介绍HDFS(Hadoop Distrabuted File System)是Apache顶级项目Hadoop的重要组件,是一种分布式文件系统,基于数据流模式访问和为处理大文件而产生,具有高可用性、高安全性、高扩展性、高容错率等特点,因为使用在普通的商用PC中和节点扩展性,所以HDFS文件系统可以通过购置廉价的上午电脑而实现现行扩展存储和规模的强大优势。2、基础概念2.1

2015-06-07 16:35:55 783

DHTMLX 5 CHM API文档

2016年10月5号,dhtmlx官网发布的最新的离线api手册,如果想下载最新的请打开该路径http://docs.dhtmlx.com/chm/dhtmlx.chm.zip

2016-11-10

JTS-1.14.0

JTS1.14版本 jar包

2016-08-25

Hadoop plugin for eclipse

该资源还有Hadoop-ecplise-plugin-2.7.1.jar和hadoop.dll、winutls.exe文件

2016-03-30

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除