- 博客(23)
- 收藏
- 关注
原创 hive调优之group by
1、设置map端聚合(默认我true)set hive.map.aggr=true;2、在map端设置进行聚合的条数数目set hive.groupby.mapaggr.checkinterval= 数据条数3 、开启负载均衡set hive.groupby.skewindata=true;
2021-03-03 09:23:18
236
原创 String和StringBuilder拼接字符串的区别
使用String类型拼接字符串:时间和空间上都非常狼费1.创建一个StringBuilder的存储空间,大小为第一个字符串的长度+162.将第一个字符串添加到缓冲区中3.将第二个字符串添加到缓冲区中4.将缓冲区对象转换为字符串对象(创建了一个新的字符串对象)5.返回该字符串对象使用StringBuilder拼接字符串:时间的空间上都非常节省,无论循环多少次,都只会创建两个对象1.创建一个新的StringBuilder的存储空间2.在StringBuilder的基础上进行添加,不创建新的字符串
2020-11-25 21:12:13
508
原创 hadoop的组成
架构主要是有四部分组成,分别为:HDFS Client、NameNode、DataNode和SecondaryNameNode(1)Client:就是客户端a)文件切分。文件上传hdfs的时候,并不是把一个大文件原封不动的上传上去,而是由Client先将文件切分成一个一个的block,然后按照block进行存储b)与NameNode交互,获取文件的位置信息,客户端想要传输数据,必须先与namenode通信,获取相应的datanode的地址c)与DataNode交互,进行读取数据或者写入数据,data
2020-11-18 19:58:01
649
2
原创 vim编辑器
vim编辑器,一共有三种模式:一般模式、编辑模式、指令模式一般模式用vim打开一个文件,也就直接进入到一般模式了。在该模式中可以使用上下左右按键来移动光标常用语法(1)yy 复制光标当前一行 y数字y 复制一段内容,复制的是光标所在行及光标下面的行数(2)p 即paset,粘贴,粘贴在光标所在的下一行(3)u 即undo,撤销上一步操作(4)dd 即delete,删除光标当前行 d数字d 删除光标(含)以及后面多少行(5)shift
2020-11-17 21:19:31
248
原创 Linux的目录结构
Linux采用的是树状目录结构/etc :所有的系统管理所需要的配置文件和子目录,列如网络配置/home :存放普通用户的主目录,在Linux中每一个用户都有一个自己的目录,一般该目录的名是以用户的账号命名的,列如在我们创建完普通用户hadoop之后,就会在/home下创建一个子目录/home/hadoop,作为hadoop用户的家目录,注意 rooot的家目录不在这里,root的家目录是/rootmnt :系统提供该目录是为了让用户临时挂载别的文件系统的,我们可以将光驱挂载/mnt上,让后进入目录
2020-11-17 20:54:40
114
原创 VMtools是什么
vmtools主要作用于虚拟主机的显示优化与调整,另外还可以方便虚拟主机与物理机的交互,列如在物理机与虚拟机之间共享文件夹,甚至可以直接从物理主机向虚拟主机拖放文件、鼠标的无缝切换、显示分辨率的调整等,十分实用其主要作用就是虚拟机的显示优化,以及完成虚拟机和物理机之间的交互...
2020-11-17 20:24:08
4907
原创 单列模式之饿汉式和懒汉式
单列模式的特点:从系统的启动到终止,这个过程只会产生一个对象懒汉式- 懒汉式,只有在使用的时候才会new对象package com.tian.day03object SingletonOps1 { def main(args: Array[String]): Unit = { for (i <- 1 to 10){ new Thread(new Runnable { override def run(): Unit = {
2020-10-17 22:18:54
88
原创 scala的伴生对象(object),以及伴生类
和class在同一个源文件(.scala)中同名的object结构称之为该类的伴生对象,把该类称之为object的伴生类伴生对象的主要作用:就是为其伴生类提供类似java中的静态成员操作提供另外一种对象的创建方式,这个需要用到一个特定的函数applyobject伴生对象的一个特点就是,可以在object中直接调用class中的私有成员package com.tian.day03object ObjectClassOps { def main(args: Array[String]):
2020-10-17 17:07:00
280
原创 Linux中oracle数据库的启动与停止
linux下启动oraclesu - oraclesqlplus /nologconn /as sysdbastartupexitlsnrctl startexitlinux下关闭oraclesu - oraclesqlplus /nologconn /as sysdbashutdown immediateexitlsnrctl stopexit3、启动监听器oracle@suse92:~> lsnrctl start4、停止监听器oracle@sus..
2020-09-26 11:16:31
1024
原创 MapReduce的执行流程
(1) 执行Driver的main方法,里面有个job.waitForCompletion(),在该方法里面完成任务的准备,主要包括将输入数据切片并将切片规划写到job.split文件里面,生成运行任务时的配置文件job.xml,将我们写的mapreduce程序打成jar包。准备好了之后,将任务提交给yarn的resourcemanager。(2) Resourcemanager收到客户端提交的任务后,会选一个nodemanager,在其上边生成一个mapreduce application maste.
2020-09-12 16:12:53
243
原创 namenode和secondaryNomenode的工作机制
双NN的工作机制,主要就是SN 的checkpoint操作,将未执行过的edit日志文件与fsimage镜像文件进行合并,也就是说执行edits文件中的写操作,指向完成之后这些数据也就变成了元数据,并与fsimage文件中的元数据进行合并
2020-09-12 11:10:13
102
原创 hive开启本地模式
set hive.exec.mode.local.auto=true;(默认为false)当一个job满足如下条件才能真正使用本地模式:1.job的输入数据大小必须小于参数:hive.exec.mode.local.auto.inputbytes.max(默认128MB)2.job的map数必须小于参数:hive.exec.mode.local.auto.tasks.max(默认4)3.job的reduce数必须为0或者1...
2020-09-12 10:24:51
559
原创 hdfs的写数据流程
(1) 客户端向hdfs上传文件,首先向NameNode请求上传文件,NameNode会做一些验证,比如检查目标文件是否已存在,父目录是否存在。当前的用户是否有些权限。(2) NameNode经过验证后,向客户端返回是否可以上传。(3) 如果客户端收到可以上传的回复,则会向namenode请求第一个 block上传到哪几个datanode服务器上。(4) NameNode返回客户端可用的3个datanode的节点地址,分别为datanode1、datanode2、datanode3。(5) 客户端.
2020-09-12 09:46:13
127
原创 Linux之用户组管理命令
groupadd 新增组(1)基本语法:groupadd 组名[root@node-3 ~]# groupadd hadoopgroupdel删除组(1)基本语法:groupdel 组名[root@node-3 ~]# groupdel hadoopgroupmod修改组(1)基本语法:groupmod -n 新组名 老组名[root@node-3 ~]# groupmod -n hadoop1 hadoop[root@node-3 ~]# cat /etc/grouph.
2020-09-05 14:49:35
90
原创 Linux之文件目录常用命令
1.帮助命令(1)man 获取帮助信息基本语法:man + 命令或者配置文件(1)help 获取shell内置命令的帮助信息基本语法:help + 命令2.常用快捷键(1) crtl+c 停止进程(2)ctrl+l 清屏(3)善于使用tab键,对命令进行补全(4)上下键,查找已经执行过的命令3.文件目录类(1) pwd 返回当前工作目录的绝对路径基本语法:pwd(2) ls 列出目录的内容基本语法:ls [选项] [目录或是文件]选项:-
2020-09-05 10:49:11
119
原创 Linux的桥接模式ping通外网
Linux的桥接模式中,要想ping通外网,在/etc/sysconfig/network-scripts/ifcfg-eth0这个配置文件之中,不能含有DNS2DEVICE=eth0TYPE=EthernetONBOOT=yesNM_CONTROLLED=yesBOOTPROTO=noneDEFROUTE=yesIPV4_FAILURE_FATAL=yesIPV6INIT=noNAME="System eth0"IPADDR=10.10.128.243PREFIX=24GATEWA
2020-09-04 22:02:32
648
原创 虚拟机与物理机进行组网
虚拟机在安装完成后,我们并没有进行网络配置,也能够连接外网,这是因为虚拟机的网络配置方式是自动获取的,而vmware提前安装好了dhcp服务,用于给其分发ip配置。虚拟网络编译器虚拟网络编辑器下的vmnet8设置就相当于一个网关,该网关地址,我们可以查看到是192.168.146.2。其用于转发该子网下各个虚拟机的消息,安装完vmware之后,会自动随机(每个机器的可能不一样)分配一个子网,我的是192.168.146.0子网,所有采用nat方式上网的虚拟机必须配置在该子网下。同时这里还是dhcp服
2020-08-29 20:18:57
754
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人