自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(26)
  • 收藏
  • 关注

转载 Spark log4j 日志配置详解

一、spark job日志介绍spark中提供了log4j的方式记录日志。可以在$SPARK_HOME/conf/下,将 log4j.properties.template 文件copy为 log4j.properties 来启用log4j配置。但这个配置为全局配置,不能单独配置某个job的运行日志。在Spark的conf目录下,把log4j.properties.templa...

2019-07-31 15:39:33 917

原创 Flume内部原理与高可靠传输

Flume内部原理与高可靠传输本篇介绍Flume内部启动原理特性与过程。Flume简介Flume是Cloudera提供的一个高可用的,高可靠的,分布式的海量日志采集、聚合和传输的系统,Flume支持在日志系统中定制各类数据发送方,用于收集数据;同时,Flume提供对数据进行简单处理,并写到各种数据接受方(可定制)的能力。Flume 作为 cloudera 开发的实时日志收集系统,受到了业界...

2019-07-31 15:37:12 281

转载 Spark源码系列之Standalone模式下Spark应用的整个启动过程

一,Standalone模式下的spark角色大家都知道在Standalone模式下,spark一共有以下五种角色:sparksubmit,master,Worker,Driver,Executor。具体这五种角色在我们提交应用的时候起到哪些作用呢,我们下面就来详细讲解。1,SparkSubmit加载一个Spark应用程序的入口。这个类处理设置spark相关依赖的Classpath(足见其重...

2019-04-09 10:40:45 304

转载 HashMap和Hashtable的区别

HashMap和HashTable的区别1.两者最主要的区别在于Hashtable是线程安全,而HashMap则非线程安全Hashtable的实现方法里面都添加了synchronized关键字来确保线程同步,因此相对而言HashMap性能会高一些,我们平时使用时若无特殊需求建议使用HashMap,在多线程环境下若使用HashMap需要使用Collections.synchronizedMap(...

2019-04-08 16:53:36 3434

原创 Hive : SORT BY vs ORDER BY vs DISTRIBUTE BY vs CLUSTER BY

在Apache Hive中,像SQL一样,您可以根据全局排序和分布要求决定对数据进行全局排序或局部排序。在这篇文章中,我们将了解Hive中的SORT BY,ORDER BY,DISTRIBUTE BY和CLUSTER BY的含义。sort bysort by不是全局排序,其在数据进入reducer前完成排序,因此,如果用sort by进行排序,并且设置mapred.reduce.tasks&g...

2019-04-08 15:49:31 254

转载 sparksql处理嵌套json

一,基本介绍本文主要讲spark2.0版本以后存在的Sparksql的一些实用的函数,帮助解决复杂嵌套的json数据格式,比如,map和嵌套结构。Spark2.1在spark 的Structured Streaming也可以使用这些功能函数。下面几个是本文重点要讲的方法。A),get_json_object()B),from_json()C),to_json()D),explode()...

2019-04-03 13:42:05 2166

原创 记一次线上es部署

今天部署线上es,总结一波。系统:乌班图 16.041,下载oracle jdk 并配置环境变量,如果是其他用户,安装安装包时可能会出现找不到javahome的情况,需要把软件安装路径的所有权改为当前用户 sudo chown -R 用户名:用户名 elasticsearch-6.3.0/ 。2,乌班图系统 使用debian包,利用systemd启动(如果是centos则用rpm包,其他过程...

2019-03-16 18:04:36 537

原创 使用sql jdbc 连接elasticsearch 6.3版本

最近公司要做后端接口调用,数据存储在es,我的打算是用sql查es,用springboot提供接口调用,es6.3版本开始支持sql查询,好了,废话不多bb,开始咯。首先先创建一个java项目,pom文件中添加如下依赖:<repositories> <repository> <id>elastic.co</id> <ur...

2019-03-05 19:27:09 1550 1

原创 聊一聊elastic search

今天聊一聊elastic search首先说说正排索引和倒排索引,在我理解,正排索引就是知道了序号,根据序号查找到对应的内容,而倒排索引,就是根据内容锁定好序号,正排索引与倒排索引相结合的使用场景是,根据用户给的内容,根据倒排索引锁定内容的序号信息,然后根据序号,给出完整的内容。下面是一个简单的正排索引与倒排索引的例子:es里的倒排索引:包括单词词典(Term Dictionary)和倒排列...

2019-02-18 18:53:07 499

原创 java几种常用的设计模式

今天说说几种常见的设计模式,写个博客,记录一下。首先,啥叫设计模式呢? 设计模式是一套被反复使用、多数人知晓的、经过分类编码、代码设计经验的总结。举个例子,把编码比喻成打仗,那么设计模式就是孙子兵法三十六计。设计模式的目的是为了可重用代码、让代码更容易被他人理解、保证代码的可靠性。单例模式作用是保证整个应用程序代码中某个实例有且仅有一个。分为饿汉模式和懒汉模式区别:饿汉模式的特点是加载类...

2019-01-24 18:16:58 581

原创 hbase详解

今天跟大家聊一聊hbase。这一篇博文没有教你怎么安装怎么使用命令行去操作,会说一些基本概念和内部原理特性等。hbase是基于hadoop的,把数据存在datanode上,hbase支持上百亿行、上百万列的存储。面向列存储查询,即使稀松也不会占用空间,可以动态增加列,查找起来会节省很多时间。hbase架构体系内部服务有master和regionserver,master负责管理hbase集群...

2019-01-21 17:53:31 360

转载 序列化与反序列化(对象流)

1、什么是序列化与反序列化?序列化:指把堆内存中的 Java 对象数据,通过某种方式把对象存储到磁盘文件中或者传递给其他网络节点(在网络上传输)。这个过程称为序列化。通俗来说就是将数据结构或对象转换成二进制串的过程。反序列化:把磁盘文件中的对象数据或者把网络节点上的对象数据,恢复成Java对象模型的过程。也就是将在序列化过程中所生成的二进制串转换成数据结构或者对象的过程。2、为什么要做序列化...

2019-01-18 18:36:27 184

转载 java多线程详解(五)-----线程的生命周期

这篇博客介绍线程的生命周期。线程是一个动态执行的过程,它也有从创建到死亡的过程。在 Thread 类中,有一个枚举内部类:上面的信息以图片表示如下:第一张图:第二张图:把等待、计时等待、阻塞看成阻塞一个状态了1、新建状态(new):使用 new 创建一个线程,仅仅只是在堆中分配了内存空间新建状态下,线程还没有调用 start()方法启动,只是存在一个线程对象而已Thread t...

2019-01-17 17:19:31 245

转载 java多线程详解(四)-----生产者与消费者

通过前面三篇博客的介绍,基本上对Java的多线程有了一定的了解了,然后这篇博客根据生产者和消费者的模型来介绍Java多线程的一些其他知识。我们这里的生产者和消费者模型为:生产者Producer 生产某个对象(共享资源),放在缓冲池中,然后消费者从缓冲池中取出这个对象。也就是生产者生产一个,消费者取出一个。这样进行循环。第一步:我们先创建共享资源的类 Person,它有两个方法,一个生产对象,...

2019-01-17 16:44:40 215

原创 java多线程详解(三)-----线程的同步

今天参照大牛的博客,自己写了一下多线程实现窗口卖票的程序,很久没写多线程了,记得第一家公司就是做的这个,今天记录一下,重写一下。利用多线程模拟 3 个窗口卖票继承 Thread 类package Thread;public class SellThread extends Thread { //定义一共有 50 张票,注意声明为 static,表示几个窗口共享 p...

2019-01-17 14:58:35 209

转载 java多线程详解(二)-----如何创建进程和线程

1、在 Windows 操作系统中创建进程在 windows 操作系统中,我们创建一个进程通常就是打开某个应用软件,这便在电脑中创建了一个进程。更原始一点的,我们在命令提示符中来做(我们以打开记事本这个进程为例):第一步:windows+R,输入cmd,打开 cmd 命令提示符第二步:在命令提示符中输入 notepad,按 Enter 键便会弹出记事本应用软件PS:常用的windows ...

2019-01-17 11:56:39 301

转载 java多线程详解(一)-----概念的引入

1、并发和并行并行:指两个或多个时间在同一时刻发生(同时发生);并发:指两个或多个事件在一个时间段内发生。在操作系统中,安装了多个程序,并发指的是在一段时间内宏观上有多个程序同时运行,这在单 CPU 系统中,每一时刻只能有一道程序执行,即微观上这些程序是分时的交替运行,只不过是给人的感觉是同时运行,那是因为分时交替运行的时间是非常短的。而在多个 CPU 系统中,则这些可以并发执行的程序便...

2019-01-17 11:48:46 163

转载 Integer类

我们先看下面这段代码:public static void main(String[] args) { Integer i = 10; Integer j = 10; System.out.println(i == j); Integer a = 128; Integer b = 128; System.out.println(a =...

2019-01-16 16:15:27 447 2

转载 java foreach

foreach 是 Java 中的一种语法糖,几乎每一种语言都有一些这样的语法糖来方便程序员进行开发,编译期间以特定的字节码或特定的方式来对这些语法进行处理。能够提高性能,并减少代码出错的几率。在 Java 中还有比如 泛型、自动拆箱、自动装箱、内部类、枚举等等。foreach 是用来对数组或者集合进行遍历的语法。具体语法如下:for(元素类型 ele : 数组名/Iterable 实例){...

2019-01-16 15:25:47 20444

转载 java集合

转自:https://www.cnblogs.com/ysocean/p/6555373.html一、集合的由来通常,我们的程序需要根据程序运行时才知道创建多少个对象。但若非程序运行,程序开发阶段,我们根本不知道到底需要多少个数量的对象,甚至不知道它的准确类型。为了满足这些常规的编程需要,我们要求能在任何时候,任何地点创建任意数量的对象,而这些对象用什么来容纳呢?我们首先想到了数组,但是数组只...

2019-01-16 12:08:00 139

原创 java反射

之前一直对反射蒙蒙圈圈的,今天才算彻底搞懂反射的真正意义,知识确实是需要不断的沉淀与积累,慢慢的就对之前接触过但是懵懂的地方有所突破,废话少说,开始正题。什么是反射?我个人理解的反射就是程序能动态的获取类的属性与方法。官方的反射就是在运行状态中,对于任意一个你知道名字的类,都能够知道这个类的所有属性和方法,对于任意一个对象,都能够调用它的任意方法和属性,并且能改变它的属性。反射能做什么?反...

2019-01-15 17:50:06 117

转载 kafka_2.11-0.10.2.1 的生产者 消费者的示例(new producer api)

环境,以及单独的pom.xml文件环境:java 1.8 ,kafka_2.11-0.10.2.1pom.xml文件如下<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://mav

2019-01-15 15:20:39 478

转载 Ambari——大数据平台的搭建利器

Ambari 是什么Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是顶级项目。目前最新的发布版本是 2.0.1,未来不久将发布 2.1 版本。就 Ambari 的作用来说,就是创建、管理、监视 Hadoop 的集群,但是这里的 Hadoop 是广义,指的是...

2019-01-15 15:12:10 436

转载 git创建分支合并到master分支步骤

一、 创建test分支提交步骤1.列出所有分支git branch -a2.创建test分支git branch test3.切换到test分支:git checkout test4.添加add修改:git add .5.添加commit注释git commit -m “第一次提交代码”6.提交到服务器git push origin test二、将test分支合并到mas...

2019-01-15 14:54:16 296

原创 ElasticSearch性能调优

ElasticSearch性能调优大家好,我是皮蛋二哥。“ELK”是ElasticSearch、Logstash、Kibana三门技术的简称。如今ELK技术栈在互联网行业数据开发领域使用率越来越高,做过数据收集、数据开发、数据存储的同学相信对这个简称并不陌生,而ElasticSearch(以下简称ES)则在ELK栈中占着举足轻重的地位。前一段时间,我亲身参与了一个ES集群的调优,今天把我所...

2019-01-15 14:18:02 713

原创 scala一些概念简述

记录一些scala中的重要概念T <: 上界 类型变量界定T >: 下界 类型变量界定T <& 存在隐式函数、隐式值 对类型进行视图界定T >& 存在隐式函数、隐式值 对类型进行视图界定T : Ordering 上下文界定 T属于ordering类型classtag 泛型运用反射,编译时虚拟机并不能识别泛型类型,予以擦出,程序运行时,动态获取类型...

2019-01-15 14:07:44 203

空空如也

空空如也

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

TA关注的人

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