自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(48)
  • 资源 (1)
  • 收藏
  • 关注

原创 MetaStore服务启动时,“Metastore contains multiple versions (3) [ version = 1.2.0, comment = ...”的解决方法。

HiveMetaStore MetaException(message:Metastore contains multiple versions (3) [ version = 1.2.0, comment = Set by MetaStore... 的处理方法

2022-08-06 08:48:05 531 1

转载 java Queue中 remove/poll/take, add/offer/put, element/peek区别

项目中用到了 BlockingQueue,使用take()方法获取阻塞队列的头部元素,突然想起 队列还有个 poll 方法也是返回头部元素,特意查了查两个方法的区别,有个帖子总结的不错,特转载以记录。原贴地址:java Queue中 remove/poll/take, add/offer/put, element/peek区别方法 作用 差别 remove 删除队列里面指定元素 有则删除返回 true,没有则返回 false poll 移除并返问队列头部的元素

2020-10-28 17:02:57 573

原创 java 1.8的线程池

java 1.8的线程池FixedThreadPoolSingleThreadExecutorCachedThreadPoolScheduledThreadPoolFixedThreadPool创建一个具有固定线程数的线程池,当创建的线程达到最大数量后,就不再创建新的线程。当所有的线程都在使用时,新提交的任务会阻塞在队列中,直至有线程空闲出来。package com.dfire.monitor.service.impl.poolTest;import java.text.SimpleDateFor

2020-07-22 17:27:57 604

转载 java8 stream().map().collect()用法

知识小记,原文转载地址:https://www.cnblogs.com/ngy0217/p/11080840.html有一个集合:List<User> users = getList(); //从数据库查询的用户集合现在想获取User的身份证号码;在后续的逻辑处理中要用;常用的方法我们大家都知道,用for循环,List<String> idcards=new ArrayList<String>();//定义一个集合来装身份证号码for(int i=

2020-06-08 14:32:41 592

原创 Java中的 CountDownLatch工具类

最近在公司项目中遇到 CountDownLatch 工具类,特意查了查相关的资料,特做此记录,有些内容为网络摘取。CountDownLatch 简介:CountDownLatch 是一个同步工具类,在Java 1.5中被引入,用来协调多个线程之间的同步,位于java.util.cucurrent 包下。CountDownLatch 的原理:CountDownLatch 能够使一个...

2020-04-29 15:10:33 312

原创 Mac环境下, VMware Fusion下的虚拟机( CentOS 7)的 NAT网络配置

本帖子能够实现的效果: 1、虚拟机能访问外网、虚拟机能访问Mac本机; 2、Mac本机可以连接虚拟机。步骤如下:1、配置 VMware Fusion 虚拟网络配置 VMware Fusion 安装完成后,会在Mac OS中新建两个网卡:vmnet1以及vmnet8(在 /Library/Preferences/VMware Fusion 下可以看到),...

2020-01-16 11:38:52 3684 4

原创 遍历Map的四种方法

public static void main(String[] args) { // 构建一个Map 初始值为3条数据 Map<String, String> map = new HashMap<String, String>(); map.put("1", "xiaqiu"); map.put("2", "pangzi"); map.put("...

2019-06-11 01:17:46 14196 1

原创 遍历ArrayList,并删除某些元素的方法实现

本文是根据https://blog.csdn.net/qq_32575047/article/details/78902254的帖子进行整理的,在此感谢一下。题目:一个ArrayList对象aList中存有若干个字符串元素,现欲遍历该ArrayList对象,删除其中所有值为"abc"的字符串元素,请用代码实现。publicclassTest1{public...

2019-06-11 01:12:51 884

转载 reduceByKey和groupByKey区别与用法

转载原文地址:https://blog.csdn.net/weixin_41804049/article/details/80373741在spark中,我们知道一切的操作都是基于RDD的。在使用中,RDD有一种非常特殊也是非常实用的format——pair RDD,即RDD的每一行是(key, value)的格式。这种格式很像Python的字典类型,便于针对key进行一些处理。针对...

2019-06-10 22:37:37 11502

转载 Hive如何根据表中某个字段动态分区

使用hive储存数据时,需要对做分区,如果从kafka接收数据,将每天的数据保存一个分区(按天分区),保存分区时需要根据某个字段做动态分区,而不是傻傻的将数据写到某一个临时目录最后倒入到某一个分区,这是静态分区。动态分区的核心就是修改两个配置项。Hive动态分区步骤如下:1、建立某一个源表模拟数据源并插入一些数据create table t_test_p_source ( ...

2019-05-28 11:41:04 3948

转载 转:TortoiseSVN更换或重置登录用户

TortoiseSVN 安装好初次使用后,以后登录都是默认了初次登录时的用户帐号。去了新公司,电脑上还有svn,不料提交代码时没注意,使用了之前的人的账号和密码, 修改登录用户的方法:1,打开SVN的settings2,找到Saved Data栏,右侧Authentication data项clear3,再次打开SVN,会要求输入username和password...

2018-10-09 15:43:59 730

转载 Scala - Bean的 getter 与 setter方法

我们在用Java的时候经常把一些字段定义为private类型来完成封装,这样外界就无法访问。如果外界访问或者修改该字段的时候,只能通过该字段提供的getter和setter方法来实现。在Scala中是没有getter和setter一说的。用了value 和 value_= 来分别代替了getter和setter。下面我们看个例子class Counter{    priva...

2018-09-28 17:21:11 2421

转载 Oracle中merge into的使用

我们操作数据库的时候,有时候会遇到insertOrUpdate这种需求。如果数据库中存在数据就update,如果不存在就insert。以前的时候,需要额外select查询一下,如果有数据就update,如果没有数据就insert。而现在Orcale数据库都提供了 MERGE 方法来处理这种需求。MERGE 命令使用一条语句从一个或者多个数据源中完成对表的更新和插入数据。MERG...

2018-07-26 19:47:11 210

转载 sql的行转列(PIVOT)与列转行(UNPIVOT)

在做数据统计的时候,行转列,列转行是经常碰到的问题。case when方式太麻烦了,而且可扩展性不强,可以使用 PIVOT,UNPIVOT比较快速实现行转列,列转行,而且可扩展性强一、行转列1、测试数据准备CREATE TABLE [StudentScores]( [UserName] NVARCHAR(20), --学生姓名 [Subj...

2018-07-26 19:43:38 7417

原创 Spring注解——同一接口有多个实现类,如何注入?@Resource、@Autowired、@Qualifier

先写一个场景,举例说明:1、接口:IAnimalpublic Interface IAnimal{    ......}2、实现类:DogImpl ,实现了IAnimal接口。@Service("dogImpl")public class DaoImpl impliments IAnimal{    ...}3、业务类:AnimalControllerpublic class Anima...

2018-07-10 15:24:27 48764 9

转载 (转载)Maven使用之packaging类型

原文地址:点击打开链接项目的打包类型:pom、jar、war项目中一般使用maven进行模块管理,每个模块下对应都有一个pom文件,pom文件中维护了各模块之间的依赖和继承关系。项目模块化可以将通用的部分抽离出来,方便重用;修改一部分代码不再是build整个项目,缩短了build时间;此外各模块都有自己的pom文件,结构更清晰。使用maven进行模块划分管理,一般都会有一个父级项目,pom文件除了...

2018-06-05 16:39:11 4127 1

原创 本机不安装Oracle,使用PL/SQL连接远程Oracle数据库

1、先到Oracle网站下载Instant Client :http://www.oracle.com/technetwork/database/features/instant-client/index-097480.html本人亲测,需要下载32位的, 64位的不好使。下载会是一个压缩文件,解压之后的文件夹叫:instantclient_12_1.放在你喜欢的目录即可.例如:E:\Progra...

2018-06-05 11:10:47 1200

转载 Spring AOP浅析

支持原创,原文地址:点击打开链接AOPAOP(Aspect Oriented Programming),即面向切面编程,可以说是OOP(Object Oriented Programming,面向对象编程)的补充和完善。OOP引入封装、继承、多态等概念来建立一种对象层次结构,用于模拟公共行为的一个集合。不过OOP允许开发者定义纵向的关系,但并不适合定义横向的关系,例如日志功能。日志代码往往横向地散...

2018-05-23 15:20:05 137

原创 CSS 背景色渐变(适配主流浏览器)

background: -webkit-gradient(linear, 0 0, 0 100%, from(#eee), to(#aaa)); /** Chrome Safari **/background: -moz-linear-gradient(top, #eee, #aaa); /** FireFox **/background: -o-linear-gradient(top, #e...

2018-05-18 17:04:15 1231

转载 Python中函数的参数定义和可变参数(* 与 **)

看了一篇帖子,讲述的是python可变参数的问题,贴主讲得很通俗,特转载学习。原博文地址:点击打开链接刚学用Python的时候,特别是看一些库的源码时,经常会看到func(*args, **kwargs)这样的函数定义,这个*和**让人有点费解。其实只要把函数参数定义搞清楚了,就不难理解了。先说说函数定义,我们都知道,下面的代码定义了一个函数funcAdef funcA():  pass    显...

2018-05-02 11:25:13 549

原创 hash、hashCode、hashMap和 hashTable浅析

Hash,一般直接音译成“哈希”,按真正含义译作“散列”比较合适。通过散列算法,把任意长度的输入,转换成固定长度的输出,输出就叫做散列值(hashCode)。这种转换是一种压缩映射,也就是说,散列值所占用的空间通常远小于输入值所占用的空间,不同的输入可能会有相同的散列值。散列的目的,在于尽量分散数据的存储位置,使数据散列在不同的哈希桶(bucket)中。hashCode:是一串固定长度的整型的数字...

2018-04-23 15:30:37 1919 2

原创 Scrapyd的安装与部署

本文的目的在于介绍 scrapyd 的安装与使用, 为节省篇幅,scrapy 的安装与 scrapy爬虫的开发在本文不予介绍,默认已经开发完成,当然,本机的Python环境变量也是配置好的。笔者所用的环境如下:系统:Windows 10Python:Python 3.6.3Scrapy:Scrapy 1.5.0笔者使用已经编写好的scrapy爬虫来介绍 Scrapyd的使用。 项目名称:...

2018-04-18 16:08:56 3833

原创 VMWare 克隆虚拟机不能联网的解决方法

最近在使用VMWare进行虚拟机克隆时,出现了克隆出的虚拟机不能联网的问题。不多废话,直接上解决方案:注:本人系统是CentOS 7 ,所涉及的命令都是CentOS 7 下的命令。如果您的系统是其它的系统版本,替换成对应系统的命令即可。一、查看IP配置:可以看出,当前网卡的名称是 ens33。二、修改网卡配置文件 /etc/sysconfig/network-scripts/ifcfg-eno16...

2018-04-16 15:24:04 1245

转载 YARN架构设计详解

转载大神文章:YARN架构设计详解一、YARN基本服务组件          YARN是Hadoop 2.0中的资源管理系统,它的基本设计思想是将MRv1中的JobTracker拆分成了两个独立的服务:一个全局的资源管理器ResourceManager和每个应用程序特有的ApplicationMaster。其中ResourceManager负责整个系统的资源管理和分配,而ApplicationMa...

2018-04-03 18:13:12 389

原创 Zookeeper集群节点数量为什么要是奇数个?

无论是公司的生产环境,还是自己搭建的测试环境,Zookeeper集群的节点个数都是奇数个。至于为什么要是奇数个,以前只是模糊的知道是为了满足选举需要,并不知道详细的原因。最近重点学习zookeeper,了解到其中的原理,现将其整理记录下来。首先需要明确zookeeper选举的规则:leader选举,要求 可用节点数量 &gt; 总节点数量/2 。注意 是 &gt; , 不是 ≥。注:为什么规则要...

2018-04-03 18:01:13 28023 17

原创 MySQL无法登录问题-&quot;ERROR 1045 (28000): Access denied for user 'root'@'localhost'&quot;-之解决方法-密码重置

笔者在CentOS7上安装MySQL 5.7版本,安装完成后,登录的时候,提示登录被拒绝:[root@cdh1 ~]# mysql -uroot -pEnter password: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)以前安装5.6版本的时候,root用户的默认密码...

2018-02-23 10:16:52 3237 1

原创 CDH环境搭建(二)

四、部署CDH1、登录之后,进入如下页面,点击继续2、继续3、在“当前管理的主机”tab页中,可以看到我们前面定义的三台主机,勾选全部主机,点击继续4、选中CDH版本(注意:“选择CDH的版本”可能会显示多个可选项,也可能只显示一项,视服务器能否连接外网而定。不管显示几项,选择我们前面所用的CDH版本,继续即可),点击继续5、由于采用的是离线安装

2018-02-05 11:12:24 329

原创 CDH环境搭建(一)

一、架构                     一共三台虚拟机:cdh1~cdh3。      其中Server部署在cdh1上,MySQL同样部署在cdh1上(因此cdh1的内存要大一些,其它两台主机的内存可稍小一点,笔者的内存配置是:6G、1G、1G)。IP分配如下:       cdh1:192.168.111.201       cdh2:192.168.111.20

2018-02-05 10:48:21 1787

原创 CentOS安装指定版本的Mysql

笔者使用的系统是CentOS 6.5 , 使用yum安装mysql的默认版本是5.1,如果想安装指定版本的mysql,可以通过本帖的方式进行。本文以安装MySQL 5.6为例进行说明。1、从mysql的官网下载 rpm文档 (下载地址:MySQL官网下载地址), 根据自己的系统下载响应的版本 ,下载下来的文件是一个rpm格式的压缩包。笔者下载的版本是:2、查看linux系统中是否有

2018-01-04 21:00:09 45756

原创 Spark集群搭建

集群规划:            节点         Spark          node1       1(master)          node2       1(worker)          node3       1(worker)          node4       1  (客户端)1、上传安装包,解压到/home/目录下;2、在

2017-11-30 21:39:32 253

原创 初识Kafka

Kafka    消息队列    生产者-消费者模式    作用:        1、系统之间的解耦合        2、峰值压力缓冲        3、异步通信 (请求与相应都放入队列,client/server只管从队列中取值 或 往队列中写入就可以了)    可靠性保证:        1、自己不丢数据 (根据TTL删除过期数据)        2、消费者

2017-11-30 21:30:10 224

原创 Kafka集群搭建

前提:zookeeper集群已搭建完毕(搭建Zookeeper集群流程可参考:HADOOP 2.x 完全分布式集群环境搭建 帖子中关于搭建Zookeeper集群的部分)1、解压安装包kafka_2.10-0.8.2.2 到指定目录2、修改配置文件 kafka_2.10-0.8.2.2/config/server.properties,修改项有:     (a) broker.id =

2017-11-30 21:23:24 223

原创 大数据常见端口汇总-hadoop、hbase、hive、spark、kafka、zookeeper等(持续更新)

常见端口汇总:Hadoop:        50070:HDFS WEB UI端口    8020 : 高可用的HDFS RPC端口    9000 : 非高可用的HDFS RPC端口    8088 : Yarn 的WEB UI 接口    8485 : JournalNode 的RPC端口    8019 : ZKFC端口Zookeeper:    2181

2017-11-30 21:17:39 14397 2

转载 Java多线程中wait, notify and notifyAll的使用

原文:http://blog.csdn.net/luoweifu/article/details/46664809   讲得很透彻,留档学习。本文为翻译文章,原文地址:http://www.journaldev.com/1037/java-thread-wait-notify-and-notifyall-example在Java的Object类中有三个final

2017-11-03 16:53:44 184

原创 向Hbase插入时,报错java.lang.IllegalArgumentException: KeyValue size too large的解决办法

最近在向Hbase中插入数据时, 报了个KeyValue size too large 的错误,  具体报错信息如下:Error: java.lang.IllegalArgumentException: KeyValue size too large at org.apache.hadoop.hbase.client.HTable.validatePut(HTable.java:1567) a

2017-11-03 16:24:07 9031 2

转载 Java基础-多线程-①线程的创建和启动

原文路径:多线程-线程的创建和启动Java基础-多线程-①线程的创建和启动简单阐释进程和线程对于进程最直观的感受应该就是“windows任务管理器”中的进程管理:  (计算机原理课上的记忆已经快要模糊了,简单理解一下):一个进程就是一个“执行中的程序”,是程序在计算机上的一次运行活动。程序要运行,系统就在内存中为该程序分配一块独立的内存空间,载入程序代码

2017-11-02 14:38:00 189

原创 mapreduce自定义类型-空指针异常之坑NullPointerException

大数据小白一个。在使用mapreduce处理公司实际业务的过程中,有个mapreduce需要用到自定义类型,打包运行时,却遇到空指针NullPointerException异常,耽误了好长时间才找出问题的根源,特以此博客记录,留作学习使用。场景:从hbase的一张表(activity_statistics)读取数据, 进行处理后, 写入另一张hbase表(activity_scores),ma

2017-10-19 14:29:50 5710 5

转载 Mysql数据库常用引擎的介绍

在MySQL数据库中,常用的引擎主要就是2个:Innodb和MyIASM。这篇文章将主要介绍这两个引擎,以及该如何去选择引擎,最后在提一下这2种引擎所使用的数据结构是什么。首先介绍一下Innodb引擎。Innodb引擎提供了对数据库ACID事务的支持。并且还提供了行级锁和外键的约束。它的设计的目标就是处理大数据容量的数据库系统。它本身实际上是基于mysql后台的完整的系统。Mysq

2017-08-22 13:32:37 258

原创 Hbase完全分布式环境搭建

Hbase的使用依赖于hadoop环境和zookeeper,后二者的安装请参考本人博客:HADOOP 2.x 完全分布式集群环境搭建 。具体安排:         本文中准备node~4 四台虚拟机:                    node1:  192.168.111.101                    node2 : 192.168.111.102

2017-08-14 20:51:09 363

转载 Java GC、新生代、老年代

Java 中的堆是 JVM 所管理的最大的一块内存空间,主要用于存放各种类的实例对象。   在 Java 中,堆被划分成两个不同的区域:新生代 ( Young )、老年代 ( Old )。   新生代 ( Young ) 又被划分为三个区域:Eden、From Survivor、To Survivor。   这样划分的目的是为了使 JVM 能够更好的管理堆内存中的对象,包括

2017-07-23 23:43:27 323

CAS服务端部署

CAS单点登录服务端部署

2017-05-16

空空如也

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

TA关注的人

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