- 博客(30)
- 资源 (1)
- 收藏
- 关注

原创 Java线程与多线程(基础)
1、概念1.1、线程是什么?用来干什么?线程(Thread)是一个对象(Object)。Java 线程(也称 JVM 线程)是 Java 进程内允许多个同时进行的任务。该进程内并发的任务成为线程(Thread),一个进程里至少一个线程。Java 程序采用多线程方式来支持大量的并发请求处理,程序如果在多线程方式执行下,其复杂度远高于单线程串行执行。那么多线程:指的是这个程序(一个进程...
2018-03-07 10:30:43
299

原创 HDFS基础之NN、SNN、DN
一、HDFS架构二、HDFS详解NameNode(NN):名称节点文件系统的命名空间 1)、文件名称 2)、文件目录结构 3)、文件的属性(权限、创建时间、副本数等) 4)、文件对应哪些数据块——》这些数据存储在哪些DataNode上 不会持久化存储这种映射关系,是通过集群的启动和运行时,DataNode定期的发送Bloc...
2018-01-14 18:27:02
1767

原创 类加载的几种方式
概念类加载器(ClassLoader),顾名思义,即加载类的东西。在我们使用一个类之前,JVM需要先将该类的字节码文件(.class文件)从磁盘、网络或其他来源加载到内存中,并对字节码进行解析生成对应的Class对象,这就是类加载器的功能。我们可以利用类加载器,实现类的动态加载。Class的装载包括3个步骤:加载(loading),连接(link),初始化(initialize)加载:
2018-01-10 17:09:30
6464
原创 Java线程池
一、构造方法public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, ...
2018-06-12 19:49:12
324
原创 MapReduce实现WordCount
通过WordCount案例来更好地理解MapReduce的map、reduce实现过程。1、构建maven项目2、添加maven依赖这里使用的hadoop版本是hadoop-2.6.0-cdh5.7.0<modelVersion>4.0.0</modelVersion><groupId>com.xxx</groupId&a
2018-05-10 23:06:20
892
原创 HDFS之文件读、写流程
我们通过命令bin/hdfs dfs -cat /xxx.log查看一个文件的时候,对于NN、DN之间的操作我们是无感知的,具体中间都发生了什么,下面来简单描述一下。读操作 操作步骤: 1、Client通过FileSystem.open(filePath)方法,去与NameNode进行RPC通信,返回该文件的部分或全部的block列表(也包含该列表各block分布在DataNode...
2018-04-23 17:34:11
436
原创 Hive、Spark学习总结(一)
1.压缩格式有哪几种?lzo bzip2 snappy gzip zlib2.文件格式有哪些?file_format: : SEQUENCEFILE | TEXTFILE -- (Default, depending on hive.default.fileformat configuration) | RCFILE -- (Note: Avail...
2018-03-12 11:24:14
720
原创 Spark中Transformations、Actions
Transformations Transformation 描述 map(func) 通过应用一个函数的所有元素,返回一个新的分布式数据集 filter(func) 通过选择函数返回true的那些元素来形成,返回一个新的数据集 flatMap(func) 与map类似,但每个输入项都可以映射到0个或多个输出项(因此函数应该返回一个序列而不是单...
2018-03-12 11:15:39
799
原创 Hadoop学习总结(一)
1.SNN checkpoint 多久?什么参数配置?参数在哪?3600s参数:dfs.namenode.checkpoint.period: 3600 秒 hdfs-default.xml2.ZooKeeper是做什么的?统一命名服务、状态同步服务、集群管理、分布式应用配置项的管理、Leader 选举、队列管理等3.ZooKeeper的作用?Zookeeper...
2018-03-12 09:39:21
7188
原创 Spark中闭包的理解
概念的理解:函数可以访问函数外面的变量,但是函数内对变量的修改,在函数外是不可见的。 RDD相关操作都需要传入自定义闭包函数(closure),如果这个函数需要访问外部变量,那么需要遵循一定得规则,否则会抛出运行时异常。闭包函数传入到节点时,需要经过下面的步骤:驱动程序,通过反射,运行时找到闭包访问的所有变量,并封成一个对象,然后序列化该对象;将序列化后的对象通过网络传输到worke...
2018-03-06 13:50:26
688
原创 Scala学习总结(一)
1、Scala怎样声明变量与常量?var a = 1 // 变量val b = 1 // 常量2、Scala数据类型有哪些? 数据类型 描述 Byte 8位有符号补码整数。数值区间为 -128 到 127 Short 16位有符号补码整数。数值区间为 -32768 到 32767 Int 32位有符号补码整数。数值区间为 -21...
2018-03-06 13:44:53
513
原创 Linux命令-配置信任关系
配置多台服务器间,免密码输入信任关系cd ~/.sshssh-keygen -t rsa //执行命令一路回车,生成秘钥cat id_rsa.pub >> authorized_keys //将公钥保存到authorized_keys认证文件中若ssh未成功,可执行一下操作 chmod 700 .ssh //必须需要改为此权限 chmod 600 .ssh/* ...
2018-03-05 18:35:33
854
原创 jps process information unavailable
jps 查看进程#jps pid 进程名称#jps -lpid 进程详细信息jps 10611 – process information unavailable 6325 jar 5720 – process information unavailable 54605 Jps 6030 – process information unavailable 5823 –...
2018-01-18 23:12:57
410
转载 YARN and MapReduce的【内存】优化配置详解
在Hadoop2.x中, YARN负责管理MapReduce中的资源(内存, CPU等)并且将其打包成Container。 使之专注于其擅长的数据处理任务, 将无需考虑资源调度. 如下图所示 YARN会管理集群中所有机器的可用计算资源. 基于这些资源YARN会调度应用(比如MapReduce)发来的资源请求, 然后YARN会通过分配Co ntainer来给每个应用提供处理能力, Contai...
2018-01-04 17:47:51
408
转载 YARN的Memory和CPU调优配置详解
Hadoop YARN同时支持内存和CPU两种资源的调度,本文介绍如何配置YARN对内存和CPU的使用。 YARN作为一个资源调度器,应该考虑到集群里面每一台机子的计算资源,然后根据application申请的资源进行分配Container。Container是YARN里面资源分配的基本单位,具有一定的内存以及CPU资源。 在YARN集群中,平衡内存、CPU、磁盘的资源的很重要的,根据经验,每...
2018-01-04 16:39:09
1295
原创 Apache Hadoop部署
1、官网地址hadoop.apache.org2、三大组件HDFS:分布式文件系统,存储MapReduce:分布式计算Yarn:资源和JOB调度监控3、部署方式单机模式standalone: 1个java进程伪分布式模式Pseudo-Distributed: 多个java进程集群模式Cluster: 多台机器多个java进程4、部...
2017-12-30 11:46:43
341
原创 Linux安装Maven
下载maven包apache-maven-3.3.9-bin.zip上传到/opt/software目录解压#unzip apache-maven-3.3.9-bin.zip配置全局环境变量export MAVEN_HOME=/opt/software/apache-maven-3.3.9export MAVEN_OPTS="-Xms256m -Xmx51...
2017-12-16 23:13:37
366
原创 Linux安装JDK
下载下载JDK压缩包jdk-8u45-linux-x64.gz上传到/usr/java目录下解压#tar -xzvf jdk-8u45-linux-x64.gz注意解压后所属用户、用户组发生改变,需重新赋权限# chown -R root:root jdk1.8.0_45/配置环境变量#vi /etc/profile在最后面添加:export J...
2017-12-16 22:57:51
468
原创 Apache Hadoop编译
Github地址https://github.com/apache/hadoop下载源码包hadoop-2.8.1-src.tar.gz解压tar -zxvf hadoop-2.8.1-src.tar.gz安装编译所需要的工具包protobuf安装下载protobuf-2.5.0.tar.gz#tar -xzvf protobuf-2.5.0...
2017-12-16 22:48:09
323
原创 Linux命令-任务调度
crontab查看当前用户下有哪些作业:crontab -l添加、编辑:crontab -e禁用:加#格式: * * * * * command 分 时 日 月 周 命令第1列表示分钟1~59 每分钟用*或者 */1表示第2列表示小时1~23(0表示0点)第3列表示日期1~31第4列表示月份1~12第5列标识号星期0~6(0表示星期天)第6列要运行的命令*...
2017-12-16 21:48:23
449
原创 CentOS安装MySQL-5.6.23
1、下载mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz2、上传到CentOS的/usr/local目录下3、解压tar -xzvf mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz4、重命名mv mysql-5.6.23-linux-glibc2.5-x86_64 mysql5、新增一...
2017-12-16 21:29:39
367
原创 Scala闭包
闭包是一个函数,返回值依赖于函数外部的一个或多个变量。可以理解为:可以访问一个函数里面局部变量的另一个函数 val results = (i:Int) => i*y 在results函数中有两个变量,一个是i,匿名函数的参数,另一个是自由变量y。自由变量y在运行中会不断发生变化,它处于一种“开放状态”;当函数执行时自由变量y的值已经被确定,此时可以认为在运行时它暂时处于“封闭状态”,这种存在开放
2017-12-11 23:44:34
291
原创 Scala函数传名调用
Scala的解析器在解析函数参数时有两种方式传值调用(call-by-value):先计算参数表达式的值,再应用到函数内部传名调用(call-by-name):将未计算的参数表达式直接应用到函数内部在进入函数内部前,传值调用方式就已经将参数表达式的值计算完毕;而传名调用是在函数内部进行参数表达式的值计算的,这样每次使用传名调用时,解释器都会调用一次表达式的值。例如:上面代码中我们定义了prt方
2017-12-11 20:20:43
1338
原创 VMware10安装CentOS-6.5
1、安装准备1.1、VMware101.2、CentOS-6.5-x86_64-bin-DVD1.iso2、部署安装2.1、打开VMware10,主页中选择“创建新的虚拟机”2.2、选择“自定义(高级)”2.3、选择VMware版本10,下一步2.4、选择“稍后安装操作系统”,下一步2.5、选择要安装的“操作系统及版本...
2017-12-10 18:35:57
304
原创 MySQL-用户|权限
mysql -u(用户) -p(密码)mysql -uroot -p******用户表user查询当前数据库有哪些用户?select user,name,host from user;添加用户>use userdb;//进入数据库>insert into user(Host,User,Password) values('localhost...
2017-12-09 22:58:13
324
原创 Linux命令-用户|权限
一、用户查看用户列表cat /etc/passwd添加用户useradd user1新增用户到用户组useradd -g groupname user1删除用户userdel user1修改密码passwd user1查看用户常用命令ll /usr/sbin/user*二、用户组查看用户组常用命令ll ...
2017-12-09 21:00:16
270
原创 Linux命令-文件|文件夹
一、文件新建文件1.vi xxx.log2.echo xxx.log3.touch xxx.log查看文件大小ll -hls -lh查看隐藏文件隐藏文件的标识(.)ll -als -l -als -la按照时间排序ls -lrt查看文件cat filename 打印出所有的内容more filename 一页一页的翻...
2017-12-09 20:52:24
335
原创 Linux命令-进程|网络
ps 命令用于查看当前正在运行的进程。grep 是搜索例如: ps -ef | grep java 表示查看所有进程里CMD是java的进程信息ps -aux | grep java -aux 显示所有状态打印所有java的进程PIDpgrep -f grep java查看端口号netstat -apn|grep PIDnetstat -tun...
2017-12-09 20:46:39
329
原创 Linux命令-基础篇
注意=两边不能有空格 查看命令帮助man ls Ctrl+z退出man命令ls --help查看当前所在的目录pwdhome目录root: /rootuser: /home/user搜索(过滤)grep管道符|查看历史命令history执行历史命令!1 执行历史命令的第一行命令...
2017-12-09 20:18:31
343
原创 Java字符串操作
String、StringBuilder、StringBuffer1、String 字符串常量 StringBuffer、StringBuilder 字符串变量2、执行速度StringBuilder>StringBuffer>String例:String string = "ab";string = string + "cd";JVM执行:先创建一个对象string,赋予ab,然后再创建一
2017-12-01 11:19:23
281
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人