9 wisgood

尚未进行身份认证

暂无相关描述

等级
博文 530
排名 1k+

sparksql通过jdbc读取mysql时划分分区问题

当通过spark读取mysql时,如果数据量比较大,为了加快速度,通常会起多个任务并行拉取mysql数据。其中一个api是defjdbc(url:String,table:String,columnName:String,lowerBound:Long,upperBound:Long,numPartitions:Int,connectionProperties:Pr...

2018-11-10 18:00:58

多年大数据开发经验总结

多年工作经验总结初入行,搞大数据开发。得高人指点,先学mapreduce,不足一年,tez兴,后入此道。朝夕不倦,发愤图强,才能略知一二。无奈后浪推前浪,tez被spark拍在沙滩上,遂投spark之怀。继而抖擞精神,奋袂而起,github、stackoverflow轮番上阵,终七窍通六窍。然乾坤更替,岁月不复,spark转眼成过眼烟云,flink、beam之流成业界新宠,一时洛阳纸贵,众人...

2018-08-24 10:02:23

Hadoop里的设计模式之单例模式

单例模式是创建性模式之一,算是比较简单好理解的了。单例模式:保证一个类仅有一个实例,并提供一个访问它的全局访问点。我们以Hadoop2.7版本中的ShutdownHookManager举例讲解单例模式的几个需要注意的地方:1)将构造方法私有化。单例模式通常是在类内部提供一个可供使用的对象,通过公共接口对外提供该对象。为了避免在类外面通过new的方式再次生成对象,通常都会将构造方法私有化...

2018-06-22 16:53:41

查看线程数的几种方法

1toptop-H-p如下如果是查看系统中总的线程数,直接用top-H选项2pstreepstreee-ppid|wc-l如果是查看系统中总的线程数,用pstree-p|wc-l3通过/proccat/proc/17592/status4通过/procll/proc/17592/task/|wc-l...

2018-06-09 08:56:48

centos7.4安装图形界面并远程桌面连接

1系统版本CentOSrelease6.2(Final)以下安装需要用root权限操作。2安装xwindowsyumgroupinstall-y“XWindowSystem” //注意有引号3安装图形界面软件GNOMEyumgroupinstall-y“GNOMEDesktop”“GraphicalAdministration...

2018-05-10 17:55:08

mapreduce程序中避免reduce输出空文件

在mapreduce里,如果某个reduce输出为空,默认也会生成一个大小为0的文件。原因是reduce写的时候,不知道会不会有输出数据,所以默认初始化了一个文件。如果没有输出,close文件最终会生成一个空文件。如下。有几个缺点:1)生成的很多小文件,对namenode形成一定压力2)生成的数据下个阶段处理的时候,这些空的文件会浪费掉一些计算资源。3)看着不爽-rw-r--r--...

2018-05-09 11:24:06

如何查看jvm中的各种参数以及默认值

1标准参数标准参数(-),所有的JVM实现都必须实现这些参数的功能,而且向后兼容;通过命令java即可查看如下whereoptionsinclude:-d32usea32-bitdatamodelifavailable-d64usea64-bitdatamodelifavailable...

2018-04-28 10:36:51

不同gc垃圾回收器组合及日志样例

不同的jvm参数所使用的老年代、年轻代组合如下图。参数新生代老年代-XX:+UseSerialGCSerial(DefNew)SerialOld-XX:+UseParNewGCParNewSerialOld-XX:+UseConcMarkSweepGCParNewCMS+SerialOld...

2018-04-27 13:30:03

Spark SQL中Join常用的几种实现

1、引言Join是SQL语句中的常用操作,良好的表结构能够将数据分散在不同的表中,使其符合某种范式,减少表冗余、更新容错等。而建立表和表之间关系的最佳方式就是Join操作。SparkSQL作为大数据领域的SQL实现,自然也对Join操作做了不少优化,今天主要看一下在SparkSQL中对于Join,常见的3种实现。2、SparkSQL中Join常用的实现2.1、Broa...

2018-04-27 13:13:47

Understanding Hive joins in explain plan output

HiveistryingtoembraceCBO(costbasedoptimizer)inlatestversions,andJoinisonemajorpartofit.UnderstandingjoinbestpracticesandusecasesisonekeyfactorofHiveperformancetunning....

2018-04-24 18:52:27

hive中 bucket mapjoin 与 SMB join(Sort-Merge-Bucket)区别

1bucketmapjoin1.1条件1)sethive.optimize.bucketmapjoin=true;2)一个表的bucket数是另一个表bucket数的整数倍3)bucket列==join列4)必须是应用在mapjoin的场景中1.2注意1)如果表不是bucket的,只是做普通join。2SMBjoin(...

2018-04-24 18:50:23

Hive中mapjoin优化例子

1基本信息3个表,1个事实表,2个维度表事实表test_fact(midstring,sex_idstring,age_idstring)维度表dim_user_demography_age(age_idstring,age_namestring)维度表dim_user_demography_sex(sex_idstring,sex_namestrin...

2018-04-24 16:24:12

openjdk1.8执行jmap报错

openjdk版本openjdkversion"1.8.0_161"OpenJDKRuntimeEnvironment(build1.8.0_161-b14)OpenJDK64-BitServerVM(build25.161-b14,mixedmode)执行jmap-heap报错jmap-heap17694Attachingtopro...

2018-04-23 11:50:09

Spark1.6内存管理(二) 实例讲解:Spark管理页面中Storage Memory是如何计算的?

书接上文:https://blog.csdn.net/wisgood/article/details/78069753本文主要讲解879.0MB是如何算出来的?spark用的是1.6版本。对应程序的参数设置为spark-shell--executor-memory1536MStorageMemory该页面显示的StorageMemory实际是上文...

2018-04-08 13:11:47

Runtime.getRunTime.maxMemory为啥比Xmx指定的内存小

先贴一些程序代码importjava.lang.management.ManagementFactory;importjava.lang.management.MemoryMXBean;importjava.lang.management.MemoryPoolMXBean;publicclassMemoryDemo{staticStringmb(long...

2018-04-08 12:05:33

64位jvm和32位jvm性能

原文引自于:http://www.oracle.com/technetwork/java/hotspotfaq-138619.html#64bit_description一般来说,64位jvm相比32位jvm能够处理更大的内存,但伴随而来的一个小的性能损失。这是因为系统中的每个本地指针在64位jvm上都占用8个字节而不是4个。加载这些额外的数据会影响内存使用量,这会导致执行速度稍...

2018-04-05 10:03:03

Java多线程-生产者消费者例子-使用阻塞队列(BlockingQueue)实现

importjava.util.concurrent.ArrayBlockingQueue;importjava.util.concurrent.BlockingQueue;/***Createdbywisgood.*/publicclassProducerConsumerWithBlockingQueueDemo{publicstaticvoid...

2018-03-28 19:36:01

Java多线程-生产者消费者例子-使用Lock实现

importjava.util.LinkedList;importjava.util.List;importjava.util.concurrent.locks.Condition;importjava.util.concurrent.locks.Lock;importjava.util.concurrent.locks.ReentrantLock;/***Create...

2018-03-28 19:33:26

Java多线程-生产者消费者例子-使用Synchronized实现

importjava.util.LinkedList;importjava.util.List;/***Createdbywisgood.*/publicclassProducerConsumerWithSynchronizedDemo{publicstaticvoidmain(String[]args){ProductFac...

2018-03-28 19:31:09

mapreduce中split划分分析(新版api)

面试的过程中,笔者经常喜欢问一个问题:hadoop中map数是怎么确定的?但发现还是有好多面试者都答不上来。这个问题其实算是比较基础的一个问题,对于理解mapreduce的原理很有帮助。今天有空结合源码分析一下。本文以hadoop2.7.2的版本作为分析,代码链接如下。——[github代码地址]本文以org.apache.hadoop.mapreduce包作为讲解(即新AP...

2018-01-27 10:19:29
CSDN身份
  • 博客专家
奖章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!
  • 持之以恒
    持之以恒
    授予每个自然月内发布4篇或4篇以上原创或翻译IT博文的用户。不积跬步无以至千里,不积小流无以成江海,程序人生的精彩需要坚持不懈地积累!