自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 2021-08-06

实现多线程的方法方法一:实现Runnable接口public static void main(String[] args) { Thread thread = new Thread(new RunnableStyle()); thread.start();}@Overridepublic void run() { System.out.println("用Runnable方法实现线程");}方法二:继承Thread类public static void main

2021-08-06 17:25:10 90

原创 shell入门

基础入门在大数据工作环境中,包括所有的组件中,一般我们说的shell脚本,后缀都是 .sh或没有后缀1、创建一个shell脚本(标准写法)[root@ruozedata001 learn_shell]# vi wc.sh#!/bin/bash 使用bash的命令的解释器进行解析echo "www.ruozedata.com"2、执行[root@ruozedata001 le...

2019-08-28 18:48:53 223

原创 hdfs高阶命令

[hadoop@ruozedata001 hadoop]$ hdfs haadminUsage: DFSHAAdmin [-ns <nameserviceId>] [-transitionToActive <serviceId> [--forceactive]] [-transitionToStandby <serviceId>] [-...

2019-08-28 15:34:47 453

原创 Hadoop集群部署

版本JRE:jdk-8u45-linux-x64.gzhadoop:hadoop-2.6.0-cdh5.15.1.tar.gzzookeeper:zookeeper-3.4.6.tar.gz基本操作1、创建hadoop用户并切入[root@ruozedata001 ~]# useradd hadoop[root@ruozedata001 ~]# su - hadoop2、创建目录...

2019-08-25 17:00:14 178

原创 HDFS的安全模式

安全模式是hdfs的一种工作状态,处于安全模式的状态下,只向客户端提供文件的只读视图,不接受对命名空间的修改;同时名字节点也不会进行数据块的复制或者删除,如副本数量小于正常水平。namenode启动时,首先将fsimage载入内存,并执行编辑日志中的操作。一旦文件系统元数据建立成功,便会创建一个空的编辑日志。此时namenode开始监听rpc和http请求。但是此时NameNode处于安全模式,...

2019-08-21 19:44:54 126

原创 HDFS HA和Yarn HA架构的区别

主要区别有两点:zkfc1)在hdfs ha架构中,zkfc是一个独立的进程2)在yarn ha架构中,zkfc直接内嵌到rm进程里作为线程hdfs ha是由独立的中间件的数据集群来维护,而yarn属于作业调度,它是维护在zk里面...

2019-08-21 09:37:02 196

原创 Yarn HA架构图

RM启动时会通过向zk的/hadoop-ha目录写一个lock文件,写成功则为active,否则为standby。standby RM会一直监控lock文件是否存在,如果不存在就会尝试去创建,争取为active rm。会接收客户端的任务请求,接收和监控nm的资源的汇报,负责资源的分配与调度,启动和监控ApplicationMaster(AM)。NM节点上的资源的管理,启动contai...

2019-08-21 09:29:39 184

原创 HDFS HA架构图

HA使用active NN, standby NN两个节点解决单点问题。两个NN节点通过JN集群,共享数据状态,通过ZKFC选举active(zookeeper有可能选举不成功,因为zookeeper机器上的负载较重),监控状态,自动备援。DN会同时向两个NN节点发送心跳。我们的客户端其实不关心谁是active,谁是standby,客户端通过命名空间(nameservice1,不是进程,仅是一...

2019-08-21 00:45:40 288

原创 生产上求TOPN

现在有城市信息和产品信息两张表存放在MySQL中(固定的信息一般存储在MySQL中),用户行为日志存放在hdfs上。要统计各个区域下最受欢迎的产品的top 3(受欢迎程度以点击量衡量)1)city_info表和product_info表放到hive里面2)通过user_click关联hive里面的city_info和product_info3)再使用窗口函数求分组内的topnMySQL导入...

2019-07-29 12:14:56 104

原创 hive的复杂数据类型和分区表

复杂数据类型针对复杂数据类型,要了解1)如何存放2)如何查询数组类型Array(1,2,3,4) 要求装的数据类型是一样的create table hive_array(name string, work_locations array<string>)row format delimited fields terminated by '\t'COLLECTION I...

2019-07-29 00:09:06 259

原创 hive函数

数据格式text(文本格式):id,username,age,genderjson(json格式):{“id”:1,“username”:“ruozedata”,“age”,2,“gender”:“unknown”}数据清洗json==>拆成我们所需要的列(可能涉及到字段的扩充)raw==>width 原始数据转成大宽表,后续需要的所有字段都准备完毕json_tuple创...

2019-07-28 14:20:52 131

原创 hive的DDL、DML语句和内置函数

表CREATE [TEMPORARY] [EXTERNAL] TABLE [IF NOT EXISTS] [db_name.]table_nameLIKE existing_table_or_view_name[LOCATION hdfs_path];拷贝表结构,不拷贝表数据CREATE TABLE ruozedata_emp2 LIKE ruozedata_emp;查看表的...

2019-07-28 11:38:09 127

原创 hive的使用

hive中的数据在hdfs上都是以文件夹/文件的方式存储的。database——table——partition——bucketVERSION表中有且只能存在一条记录DBS databases 库TBLS tables 表COLUMNS_V2 字段1.字段的数据类型数值:int、bigint、float、double字符串:string(时间类型也用string)bool...

2019-07-26 11:02:54 89

原创 hive入门

官网:hive.apache.orgThe Apache Hive ™ data warehouse software facilitates reading, writing, and managing large datasets residing in distributed storage using SQL. Structure can be projected onto data...

2019-07-26 00:07:20 96

原创 yarn的调度器

理想情况下,我们应用对Yarn资源的请求应该立刻得到满足,但实际情况资源往往是有限的,特别是在一个很繁忙的集群,一个应用资源的请求经常需要等待一段时间才能得到相应的资源。在yarn中,负责给应用分配资源的就是scheduler。其实调度本身就是一个难题,很难找到一个完美的策略可以解决所有的应用场景。为此,yarn提供了多种调度器和可配置的策略供我们选择。在yarn中有三种调度器可以选择:FIFO...

2019-07-26 00:06:48 127

原创 YARN工作流程

用户向yarn提交job,其中包含application master程序、启动application master的命令等RM为该job分配第一个container,与对应的NM通信,要求它在这个container启动作业的application masterapplication master向application manager注册,这样用户就可以通过RM web查看job的状态,...

2019-07-17 19:44:39 130

原创 Yarn架构设计

ResourceManager(RM):负责对各NM上的资源进行统一管理和调度。将AM分配空闲的Container运行并监控其运行状态。对AM申请的资源请求分配相应的空闲Container。主要由两个组件构成:调度器和应用程序管理器。调度器(Scheduler):调度器根据容量、队列等限制条件(如每个队列分配一定的资源,最多执行一定数量的作业等),将系统中的资源分配给各个正在运行的应...

2019-07-17 19:34:20 93

原创 hdfs读写流程

hdfs读流程[hadoop@hadoop001 hadoop]$ bin/hdfs dfs -cat /examples/output1/part-r-0000019/07/07 20:09:47 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using built...

2019-07-17 18:15:29 198

原创 生产HDFS Block损坏恢复最佳实践

一.文件ruozedata.md上传:-bash-4.2$ hdfs dfs -mkdir /blockrecover-bash-4.2$ echo "www.ruozedata.com" > ruozedata.md-bash-4.2$ hdfs dfs -put ruozedata.md /blockrecover-bash-4.2$ hdfs dfs -ls /blockr...

2019-07-17 00:43:53 151

原创 hdfs架构

NameNode(nn)名称节点1)存储文件系统的命名空间,包括:文件名称文件目录结构文件属性(权限、创建时间、副本数)文件对应的哪些块(副本块),块对应在哪些dn节点上nn一般不会持久化存储这个map的映射关系,一般是在集群启动和运行时,dn定期的发送blockreport给nn,那么nn就在内存中动态维护这种映射关系。2)对于NameNode如何存储这些信息,它维护两个文件...

2019-07-17 00:37:52 130

原创 hdfs上的副本放置策略

副本数伪分布式:只有一台机器,副本数据只能为1,相当于一个文件夹不可能创建2个名字一模一样的文件生产上:副本数(dfs.replication )一般是官方默认参数:3例题:块大小128M,副本数3份一个文件260m,请问多少块,多少实际存储?260%128=2…4m 3个块*3个副本=9个块260m * 3 =780m副本数考量生产上,副本数一般是官方默认参数: 3份,但在实...

2019-07-16 13:06:03 309

原创 block块的理解

1、块大小默认容量规格:128m一个文件130m,则130%128=1…2,它会被切分为两个块,一个块128m,一个块2m2、hdfs适用场景:大文件存储,小文件是致命的生产上,小文件的阈值由自己估算,一般会设阈值<=30m的文件为小文件,nn节点维护的字节大约250字节,假设nn内存为4g=42亿字节,那么最多可以放42亿/250b=1700万个小文件3、如何合并小文件?(场...

2019-07-16 13:05:44 318

原创 大数据入门之pid文件

1、pid文件是以“.pid”结尾的文件,也是hdfs进程启动、停止所需的文件。pid文件只有一行,记录的是相应进程的 pid,即进程号。pid文件默认存储在/tmp目录下[hadoop@hadoop001 tmp]$ ll-rw-rw-r--. 1 hadoop hadoop 5 Jul 3 21:49 hadoop-hadoop-datanode.pid-rw-rw-r--....

2019-07-15 20:11:09 926

原创 大数据入门之jps

jpsjps是jdk提供的一个显示当前所有java进程pid的命令,适合在linux/unix平台上简单察看当前系统的java进程情况及进程id。类似于Linux系统里的ps命令,这个命令主要是用来显示当前系统的进程情况,有哪些进程以及进程id。1、位置——在jdk目录下,与Java平级[hadoop@hadoop001 hadoop]$ which jps/usr/java/jdk1....

2019-07-15 15:42:55 417

原创 hostname启动Hadoop

1、Hadoop组件namenode:nn 名称节点,老大datanode:dn 数据节点,小弟,真正做数据的读写操作的secondary namenode:snn 第二名称节点,老二——主从架构(大数据组件大部分都是主从架构)2、启动Hadoop[hadoop@hadoop001 hadoop]$ sbin/start-dfs.sh19/07/03 21:02:04 WARN...

2019-07-15 13:40:33 188

原创 配置多台机器SSH相互通信信任

1.5台机器执行 ssh-keygen[root@sht-sgmhadoopnn-01 ~]# ssh-keygenGenerating public/private rsa key pair.Enter file in which to save the key (/root/.ssh/id_rsa): Created directory '/root/.ssh'.Enter pass...

2019-07-12 18:04:02 177

原创 调试ssh信任关系

1.生成公钥和私钥$ ssh-keygen 回车,再回车默认在~/.ssh目录下生成两个文件:id_rsa:私钥id_rsa.pub:公钥2.导入公钥到认证文件$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys3.测试本机无密码登陆$ ssh master date回车提示需要输入密码---->那么就不对了4...

2019-07-12 12:53:52 114

原创 Hadoop的伪分布式部署

Hadoop介绍1.定义广义:以Apache Hadoop软件为主的生态圈狭义:Apache Hadoop软件2.Hadoop软件的组件存储:hdfs 分布式文件系统,需要部署计算:mapreduce 分布式计算,在企业中很少用,不需要部署资源(memory内存、CPU处理器)和作业调度:yarn,需要部署安装条件及软件说明Linux环境配置ssh服务Hadoop版本:h...

2019-07-12 12:30:42 152

原创 MySQL练习题

创建三张表并插入数据--部门表dept部门表(deptno部门编号/dname部门名称/loc地点)create table dept ( deptno numeric(2), dname varchar(14), loc varchar(13));insert into dept values (10, 'ACCOUNTING', 'NEW YORK');in...

2019-07-11 18:09:50 217

原创 数据质量相关

1、大数据很多底层都是做数据仓库,但是数据仓库往往会有问题,比如需要把MySQL数据导入到数据仓库,中间有可能丢数据、不丢数据、多数据。多数据的场景一般为:原始有100条数据,先做insert,MySQL做了100条insert,数据仓库同步做了100条insert,但是由于业务的特定需求,或是维护的关系,导致MySQL中的100条有10条是做delete,但是delete有问题,过不来,所以数...

2019-07-09 11:12:33 109

原创 MySQL语法之join语法

join语法,多表操作创建一个a表和一个b表create table testa(aid int,aname varchar(100),address varchar(100));create table testb(bid int,bname varchar(100),age int);插入a表数据insert into testa values(1,'x1','sh');inse...

2019-07-09 11:08:10 135

原创 MySQL语法二

1.排序:order by1)order by 滞后;什么都不写就默认升序select num,name,age from ruozedata.studentinfo where name like 'r%' order by num;2)asc 升序select num,name,age from ruozedata.studentinfo where name like 'r%' ...

2019-07-09 11:01:09 121

原创 MySQL语法

database(DB):表、视图、索引、存储过程、触发器、events在大数据学习使用过程中,主要掌握前三个即可1.字段类型——用来规范数据数值型int 整数long 长整数float 单精度double 双精度decimal 小数值 跟钱挂钩的字符串类型 ‘abc’char 定长字符串 0-255字节 abc–》abc255 自动补全,造成资源浪费...

2019-07-04 19:18:35 140

原创 MySQL常见命令

1.进入MySQL命令mysql直接回车:空账号空密码(一般不用)mysql -uroot -p 直接回车,输入密码后再回车2.MySQL三句话create database ruozedata;grant all privileges on ruozedata.* to ruoze@‘localhost’ identified by ‘123456’;flush privileg...

2019-07-04 15:56:04 94

原创 MySQL部署

MySQL的tar包部署1.rz上传下载好的MySQL包[root@hadoop001 ~]# rzrz waiting to receive.Starting zmodem transfer. Press Ctrl+C to cancel.Transferring mysql-5.6.23-linux-glibc2.5-x86_64.tar.gz...mysql-5.6.23-li...

2019-07-04 15:33:37 492

原创 Linux中四组常见的错误和校验方法

1.Linux中常见的错误有4种:(1)timeout 请求超时(2)ping:unknown host 主机找不到错误(3)Connection refused 连接拒绝(4)permission denied 权限被拒绝2.校验方法(1)当提示timeout时,ping ip/hostname(2)当提示ping:unknown host 时,是因为映射关...

2019-06-29 19:22:25 253

原创 Linux命令大全(二)

history 查看历史命令!166 执行第166行命令echo “” > ~/.bash_history 清空历史命令用户、用户组的常用命令[root@hadoop001 ~]# ll /usr/sbin/user*[root@hadoop001 ~]# ll /usr/sbin/group**模糊匹配(1)一个用户可以属于多个用户组,但是必须有一个主组[root@ha...

2019-05-20 03:12:53 140

原创 Linux命令大全(一)

Linux命令大全windows进入Linux:单击鼠标左键Linux进入Windows:Ctrl+Alt基本命令pwd 查看当前光标所在的路径;~ 家目录root 超级管理员 /rootxxx 普通用户的 /home/xxxlinux系统 目录都是以根目录 / 开始cd 切家目录cd ~ 切家目录cd - 切上一次...

2019-05-19 00:28:21 88

空空如也

空空如也

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

TA关注的人

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