自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

  • 博客(43)
  • 收藏
  • 关注

转载 让局域网中的其他物理机连接访问本物理机的虚拟机

转自:https://www.jianshu.com/p/46771b81af89需求:服务器为windows server(也就是windows操作系统),但是需要在该服务器上部署大数据测试集群。由于大数据框架最优的运行环境为linux系统,所以我们需要在windows里安装虚拟机。但是面临不同服务器之中虚拟机如何网络互通的问题。可参照文章顶部论文解决该问题。解决方案:网络适配模式:桥接...

2019-08-21 16:47:23 473

转载 kafka作为流式处理的上一层,为什么吞吐量那么大?

Kafka为什么速度快、吞吐量大Kafka是大数据领域无处不在的消息中间件,目前广泛使用在企业内部的实时数据管道,并帮助企业构建自己的流计算应用程序。Kafka虽然是基于磁盘做的数据存储,但却具有高性能、高吞吐、低延时的特点,其吞吐量动辄几万、几十上百万。但是很多使用过Kafka的人,经常会被问到这样一个问题,Kafka为什么速度快,吞吐量大;大部分被问的人都是一下子就懵了,或者是只知道一些简单...

2019-07-15 09:57:46 174

转载 你真的会Linux常用命令么——netstat查看端口

一、使用netstat命令可查看端口使用情况(1) 查看服务端口是否启用。常用于查看服务器进程端口是否启动[root@cdh-003 ~]# netstat -nlp |grep 21050tcp6 0 0 :::21050 :::* LISTEN 10859/impalad (2) 查看...

2019-07-06 19:01:12 281

转载 玩大数据的你竟然不知道容器?——Docker入门之安装Docker及MySQL

1.简介Docker是一个开源的应用容器引擎;是一个轻量级容器技术;Docker支持将软件编译成一个镜像;然后在镜像中各种软件做好配置,将镜像发布出去,其他使用者可以直接使用这个镜像;运行中的这个镜像称为容器,容器启动是非常快速的。2.核心概念docker主机(Host):安装了Docker程序的机器(Docker直接安装在操作系统之上);docker客户端(Client):连接doc...

2019-07-06 09:03:39 178

转载 你会用SpringBoot调用JDBC操作数据库么?

1 环境准备数据库使用MySQL,我们先创建一个SpringBoot项目再导入MySQL驱动:<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId></d...

2019-07-02 10:09:29 145

转载 你会在Hive中使用GIS function么?

应用场景目前,Hive表中存在需要把经纬度转化为距离,和一些其他相关的计算函数,但是在hive中并没有集成这些函数。当然我们可以自定义UDF函数,但是现在提供一个更加简单的方法,通过源码编译的方式,集成GIS函数。环境<profile> <id>hadoop-2.7</id> <properties> &...

2019-07-02 09:31:40 141

转载 为什么我们生产上要选择Spark On Yarn模式?

为什么我们生产上要选择Spark On Yarn?开发上我们选择local[2]模式生产上跑任务Job,我们选择Spark On Yarn模式 ,将Spark Application部署到yarn中,有如下优点:1.部署Application和服务更加方便只需要yarn服务,包括Spark,Storm在内的多种应用程序不要要自带服务,它们经由客户端提交后,由yarn提供的分布式缓存机制分...

2019-07-01 08:17:59 542

转载 Hive调优技巧

1.Fetch抓取set hive.fetch.task.conversion=more(默认)1Fetch 抓取是指,Hive 中对某些情况的查询可以不必使用 MapReduce 计算。该属性设置为 more 以后,在全局查找、字段查找、limit 查找等都不走 MapReduce。 设置为none后所有类型的查找语句都要走MapReduce;2.本地模式set hive.exec.m...

2019-07-01 00:07:35 89

转载 你懂集群monitoring么?(二)—— HDFS部分指标

本篇文章接着上篇内容继续,地址:IDC集群相关指标获取在获取了对应的IDC机器自身的指标之后,还需要对Hadoop集群中HDFS和YARN的指标进行采集,大体思路上可以有2种:第一种当然还是可以延用CM API去获取,因为CM中的tssql提供了非常丰富的各种指标监控第二种即通过jmxJ去获取数据,其实就是通过访问上述这些相关的URL,然后将得到的json进行解析,从而获取到我们需要的数据,最...

2019-07-01 00:00:18 143

转载 你懂集群monitoring么?(一)—— IDC机房有关技术指标获取

背景:公司自建IDC机房,基于IDC机房构建大数据集群;需要对集群资源进行监控,集群采用的是CDH集群,采集主要分两块进行:HDFS和YARN相关的指标进行采集IDC机器自身的指标进行采集 注意: 也许有人会有疑惑,CM界面已经提供了监控的图表,为什么还需要自己进行展示。原因在于,这些信息需要集成到内部的数据平台上面去,做成对应的数据报表,可视化的方式展示在自己的数据平台上实现思路大致可以分...

2019-06-30 23:52:38 139

转载 通过Maxwell实时增量抽取MySQL binlog并通过stdout展示

下载Maxwell解压Maxwell修改MySQL的配置文件my.cnf[root@hadoop000 etc]# vi my.cnf[mysqld]server-id = 1binlog_format = ROWbinlog_format必须设为ROW模式,如果设为其他模式,比如binlog_format = STATEMENT,启动maxwell时会报错[root@hado...

2019-06-30 14:44:36 843

转载 Kafka Connect 实时读取MSSQL数据到Kafka

在处理实时数据时,需要即时地获得数据库表中数据的变化,然后将数据变化发送到Kafka中。这篇文章将介绍如何使用Kafka Connector完成这一工作。当获取实时数据时,数据源需要支持对数据变化进行反馈。不同的数据源采用了不同的技术和方法实现该功能,因为我们的业务数据库是MS SQL Server,因此这篇文章采用MSQL作为数据源。1. 选择Connector首先需要选择Connecto...

2019-06-30 13:42:46 1026

转载 JVM快速调优手册之六: JVM参数设置及分析

不管是YGC还是Full GC,GC过程中都会对导致程序运行中中断,正确的选择不同的GC策略,调整JVM、GC的参数,可以极大的减少由于GC工作,而导致的程序运行中断方面的问题,进而适当的提高Java程序的工作效率。但是调整GC是以个极为复杂的过程,由于各个程序具备不同的特点,如:web和GUI程序就有很大区别(Web可以适当的停顿,但GUI停顿是客户无法接受的),而且由于跑在各个机器上的配置不同...

2019-06-29 14:29:58 138

转载 JVM快速调优手册之五: ParNew收集器+CMS收集器的产品案例分析(响应时间优先)

服务器双核,4个cores; 16G memory[root@alish2-cassandra-01 ~]# cat /proc/cpuinfo | grep "cpu cores"cpu cores : 2cpu cores : 2公式简述响应时间优先的并发收集器,主要是保证系统的响应时间,减少垃圾收集时的停顿时间。适用于应用服务器、电信领域等。ParN...

2019-06-29 13:52:42 157

转载 Maxwell读取MySQL binlog日志到Kafka

启动MySQL创建maxwell的数据库和用户在MySQL中创建一个测试数据库和表前面三个步骤详见 Maxwell读取MySQL binlog日志通过stdout展示启动Zookeeper[hadoop@hadoop001 ~]$ cd $ZK_HOME/bin[hadoop@hadoop001 bin]$ ./zkServer.sh start启动kafka,并创建主题为maxwe...

2019-06-28 17:17:26 390

转载 JVM快速调优手册之四: 堆内存分配的CMS公式解析

JVM 堆内存组成Java堆由Perm区和Heap区组成,Heap区由Old区和New区(也叫Young区)组成,New区由Eden区、From区和To区(Survivor)组成。Eden区用于存放新生成的对象。Eden中的对象生命不会超过一次Minor GC。Survivor Space 有两个,存放每次垃圾回收后存活的对象,即图的S0和S1。Old Generation Old区,也称老...

2019-06-28 17:14:00 75

转载 JVM快速调优手册之三: 内存分配策略

了解GC其中很重要一点就是了解JVM的内存分配策略:即对象在哪里分配和对象什么时候回收。 Java技术体系中所提倡的自动内存管理可以归结于两个部分:给对象分配内存以及回收分配给对象的内存。 我们都知道,Java对象分配,都是在Java堆上进行分配的,虽然存在JIT编译后被拆分为标量类型并简介地在栈上进行分配。如果采用分代算法,那么新生的对象是分配在新生代的Eden区上...

2019-06-28 17:09:34 67

转载 JVM快速调优手册之二: 常见的垃圾收集器

如果说收集算法是内存回收的方法论,那么垃圾收集器就是内存回收的具体实现。Java虚拟机规范中对垃圾收集器应该如何实现并没有任何规定,因此不同的厂商、不同版本的虚拟机所提供的垃圾收集器都可能会有很大差别,并且一般都会提供参数供用户根据自己的应用特点和要求组合出各个年代所使用的收集器。HotSpot虚拟机的垃圾回收器图中展示了7种作用于不同分代的收集器,如果两个收集器之间存在连线,就说明...

2019-06-28 17:00:05 70

转载 JVM快速调优手册之一: 内存结构(堆内存和非堆内存)

图为Java虚拟机运行时的数据区:方法区也称”永久代” 、“非堆”, 它用于存储虚拟机加载的类信息、常量、静态变量、是各个线程共享的内存区域。默认最小值为16MB,最大值为64MB(未验证),可以通过-XX:PermSize 和 -XX:MaxPermSize 参数限制方法区的大小。运行时常量池:是方法区的一部分,Class文件中除了有类的版本、字段、方法、接口等描述信息外,还有一项信息是常...

2019-06-28 16:40:53 67

转载 HBase Rowkey设计规范

1.Rowkey是什么可以理解为关系型数据库MySQL Oracle的主键,用于标识唯一的行。完全是由用户指定的一串不重复的字符串。HBase中的数据永远是根据Rowkey的字典排序来排序的。2.Rowkey的作用读写数据时 通过 RowKey 找到 对应 的 Region,例如需要查找一条数据肯定需要知道他的RowKey ,写数据的时候也要根据RowKey 来写。MemStore中的数据按...

2019-06-28 16:31:57 203

转载 Spark Streaming反压机制探秘

1.反压机制原理Spark Streaming中的反压机制是Spark 1.5.0推出的新特性,可以根据处理效率动态调整摄入速率。当批处理时间(Batch Processing Time)大于批次间隔(Batch Interval,即 BatchDuration)时,说明处理数据的速度小于数据摄入的速度,持续时间过长或源头数据暴增,容易造成数据在内存中堆积,最终导致Executor OOM或任...

2019-06-28 16:22:47 85

转载 Hbase单机&伪分布式部署

单机部署[hadoop@hadoop004 software]$ wget http://archive.cloudera.com/cdh5/cdh/5/hbase-1.2.0-cdh5.12.0.tar.gz[hadoop@hadoop004 software]$ tar -zxf hbase-1.2.0-cdh5.12.0.tar.gz -C ~/app/[hadoop@hadoop...

2019-06-27 15:24:38 83

转载 Maxwell编译

Maxwell简介Maxwell是一个能实时读取MySQL二进制日志binlog,并生成 JSON 格式的消息,作为生产者发送给 Kafka,Kinesis、RabbitMQ、Redis、Google Cloud Pub/Sub、文件或其它平台的应用程序。它的常见应用场景有ETL、维护缓存、收集表级别的dml指标、增量到搜索引擎、数据分区迁移、切库binlog回滚方案等。官网(http://ma...

2019-06-27 15:12:42 190

转载 生产中Hive静态和动态分区表,该怎样抉择呢?

一.需求按照不同部门作为分区,导数据到目标表二.使用静态分区表来完成1.创建静态分区表:create table emp_static_partition(empno int, ename string, job string, mgr int, hiredate string, sal double, comm double)PARTITIONED BY(deptno i...

2019-06-27 01:56:26 89

转载 生产中Hive静态和动态分区表,该怎样抉择呢?

一.需求按照不同部门作为分区,导数据到目标表二.使用静态分区表来完成1.创建静态分区表:create table emp_static_partition(empno int, ename string, job string, mgr int, hiredate string, sal double, comm double)PARTITIONED BY(deptno i...

2019-06-27 01:56:22 78

转载 记录在shell脚本中使用sudo echo x > 时,抛Permission denied错误

1.场景在一个非root且带有sudo权限的用户,使用shell脚本(单独手工执行命令不会抛错,是成功的):会抛错#!/bin/bash -xDNS_SERVER=10.xx.xx.xx;echo "Add DNS Server";sudo chattr -i /etc/resolv.conf;sudo echo "nameserver $DNS_SERVER" > /etc/...

2019-06-27 01:44:19 525

转载 RDD血缘关系源码详解!

一、RDD的依赖关系RDD的依赖关系分为两类:宽依赖和窄依赖。我们可以这样认为:(1)窄依赖:每个parent RDD 的 partition 最多被 child RDD 的一个partition 使用。(2)宽依赖:每个parent RDD partition 被多个 child RDD 的partition 使用。窄依赖每个 child RDD 的 partition 的生成操作都...

2019-06-26 23:30:13 271

转载 Linux系统重要参数调优

当前会话生效ulimit -u -> 查看当前最大进程数ulimit -n ->查看当前最大文件数ulimit -u xxx -> 修改当前最大进程数为xxxulimit -n xxx -> 修改当前最大文件数为xxx永久生效1.vi /etc/security/limits.conf,添加如下的行soft noproc 11000hard noproc 110...

2019-06-26 23:07:37 90

转载 生产常用Spark累加器剖析之四

生产常用Spark累加器剖析之四现象描述val acc = sc.accumulator(0, “Error Accumulator”)val data = sc.parallelize(1 to 10)val newData = data.map(x => { if (x % 2 == 0) { accum += 1}})newData.countacc.value...

2019-06-26 21:59:44 75

转载 生产常用Spark累加器剖析之三(自定义累加器)

思路 & 需求参考IntAccumulatorParam的实现思路(上述文章中有讲):trait AccumulatorParam[T] extends AccumulableParam[T, T] { def addAccumulator(t1: T, t2: T): T = { // addInPlace有很多具体的实现类 // 如果想要实现自定义的话,就得实现...

2019-06-26 21:57:40 103

转载 生产常用Spark累加器剖析之二

Driver端Driver端初始化构建Accumulator并初始化,同时完成了Accumulator注册,Accumulators.register(this)时Accumulator会在序列化后发送到Executor端Driver接收到ResultTask完成的状态更新后,会去更新Value的值 然后在Action操作执行后就可以获取到Accumulator的值了Executor端...

2019-06-26 21:55:56 150

转载 Linux常用命令(三)

Linux最常用实战命令(三)用户、用户组用户useradd 用户名 添加用户userdel 用户名 删除用户id 用户名 查看用户信息passwd 用户名 修改用户密码su - 用户名 切换用户ll /home/ 查看已有的用户用户组groupadd 用户组 添加用户组cat /etc/group 用户组的文件usermod -a ...

2019-06-24 09:11:13 60

转载 linux常用命令(二)

Linux最常用实战命令(二)实时查看文件内容 tail filenametail -f filename 当文件(名)被修改后,不能监视文件内容tail -F filename 当文件(名)被修改后,依然可以监视文件内容复制、移动文件cp oldfilename newfilename 复制mv oldfilename newfilename 移动/重命名ech...

2019-06-24 09:09:10 51

转载 linux常用命令(一)

Linux最常用实战命令(一)查看当前目录 pwd查看IPifconfig 查看虚拟机iphostname 主机名字i 查看主机名映射的IP切换目录 cdcd ~ 切换家目录(root为/root,普通用户为/home/用户名)cd /filename 以绝对路径切换目录cd - 返回上一次操作路径,并输出路径cd ../ 返回上一层目录清理桌面 clear...

2019-06-24 09:05:21 39

转载 生产常用Spark累加器剖析之一

由于最近在项目中需要用到Spark的累加器,同时需要自己去自定义实现Spark的累加器,从而满足生产上的需求。对此,对Spark的累加器实现机制进行了追踪学习。本系列文章,将从以下几个方面入手,对Spark累加器进行剖析:Spark累加器的基本概念累加器的重点类构成累加器的源码解析累加器的执行过程累加器使用中的坑自定义累加器的实现Spark累加器基本概念...

2019-06-24 08:51:03 165

转载 Elasticsearch常用操作解析

创建Maven管理的Java项目在pom.xml中添加依赖:<es.version>6.1.1</es.version><dependency> <groupId>org.elasticsearch.client</groupId> <artifactId>transport</artifactI...

2019-06-24 08:44:23 65

转载 Spark中Cache与Persist的巅峰对决

Cache的产生背景我们先做一个简单的测试读取一个本地文件做一次collect操作:val rdd=sc.textFile("file:///home/hadoop/data/input.txt")val rdd=sc.textFile("file:///home/hadoop/data/input.txt")上面我们进行了两次相同的操作,观察日志我们发现这样一句话Submitting R...

2019-06-24 08:39:47 75

转载 关闭oom killer

参考文章:https://www.cnblogs.com/GoodGoodWorkDayDayUp/p/3473348.html

2019-06-22 10:44:18 436

转载 Batch containing 11 record(s) expired due to timeo

背景:Kafka集群在一个192.168.0.x网段的,而我们的生产者在192.168.17.x网段的一台机器上,故当生产者发送消息给Kafka时,无法将消息发送过去。错误:11:21:13,936 ERROR KafkaProducer - Batch containing 11 record(s) expired due to timeout while requesting metadat...

2019-06-22 09:31:21 325

转载 Kafka 0.10.1.0 Cluster的搭建和Topic简单操作实验

【kafka cluster机器】:机器名称 用户名称sht-sgmhadoopdn-01/02/03 root【安装目录】: /root/learnproject/app1.将scala文件夹同步到集群其他机器(scala 2.11版本,可单独下载解压)[root@sht-sgmhadoopnn-01 app]# scp -r scala root@sht-sgmhadoopdn-0...

2019-06-22 09:26:36 142

空空如也

空空如也

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

TA关注的人

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