Hadoop
文章平均质量分 61
Hadoop相关知识
Shall潇
空空如也
展开
-
hadoop上文件下载不了如何解决
【背景】我在centos 7 环境下刚安装好 hadoop3.0, 运行完 wordcount例子,想看一下数据结果,但是点下载的时候发现不行,在点开yarn上的log,发现也不行。于是想起来windows host文件没有加上IP和主机名【解决方法】将Windows环境中下面地址的host文件最后添加IP和主机名C:\Windows\System32\drivers\etc添加好后就可以下载了...原创 2022-04-10 15:46:55 · 2878 阅读 · 0 评论 -
Hive---select语句什么时候不走MR
其实普通全表查询—不需要走MR例如:select * from 表名 ,这是通过对文件进行filter过滤就可以实现查询count、sum、group等聚合函数—是一定会走MR的【注意:配置简单查询不走MR的方式】在hive-site.xml里面有个配置参数:hive.fetch.task.conversion将这个参数设置为more,简单查询就不走map/reduce了,设置为minimal,就任何简单select都会走map/reduce不走MR的各种情况:1、等值判断select *原创 2021-04-20 16:19:45 · 1788 阅读 · 1 评论 -
HBase---LSM树
参考—>开源网—LSM参考—>B树、B+树、LSM树 区别LSM-Tree(Log Structured Merge Tree)LSM树的索引结构本质是将写入操作全部转化成磁盘的顺序写入,极大地提高了写入操作的性能。但是,这种设计对读取操作是非常不利的,因为需要在读取的过程中,通过归并所有文件来读取所对应的KV,这是非常消耗IO资源的。因此,在HBase中设计了异步的compaction来降低文件个数,达到提高读取性能的目的。由于HDFS只支持文件的顺序写,不支持文件的随机写,而且HDF原创 2021-04-19 15:24:09 · 498 阅读 · 0 评论 -
HBase---API
创建表public static void main(String[] args) throws IOException { //添加配置 Configuration conf = HBaseConfiguration.create(); conf.set("hbase.zookeeper.quorum","192.168.XXX.100"); conf.set("hbase.zookeeper.property.clientPort","2原创 2021-04-12 18:32:42 · 85 阅读 · 0 评论 -
Sqoop
文章目录一、定义二、配置文件三、使用一、定义Sqoop(发音:skup)是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql…)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。二、配置文件修改 sqoop/conf/sqoop-env.sh添加如下代码:export HADOOP_COMMON_HOME=/o原创 2021-04-12 17:37:17 · 157 阅读 · 0 评论 -
Hive表中数据导入HBase
确保hive/lib/目录下有个hive和hbase连接的jar包首先看一下HBase中的表结构在Hive中创建外部表create external table stud(rowkey string,name_first string,name_last string,addr_city string,addr_country string,addr_street string)stored by 'org.apache.hadoop.hive.hbase.HBaseStorageH原创 2021-04-12 17:36:53 · 240 阅读 · 0 评论 -
HBase---如何将文本数据导入到HBase中
一、HBase中提前创建好表首先根据文件的内容,创建好列簇create 'customer',{NAME=>'order'}文件中的内容如下:二、在HBase Shell外部输入命令【注意:这里要指定列,并且文件路径为本地路径——Linux路径】hbase org.apache.hadoop.hbase.mapreduce.ImportTsv \-Dimporttsv.separator=, \-Dimporttsv.columns="HBASE_ROW_KEY,order:or原创 2021-04-09 14:29:09 · 2260 阅读 · 2 评论 -
HBase架构设计
逻辑结构原创 2021-04-09 14:06:12 · 179 阅读 · 0 评论 -
Hive---性能调优
文章目录一、调优工具1、explain2、analyze二、优化设计三、配置优化1、设置本地模式2、JVM重用3、并行执行四、查询优化1、自动启动Map端的join2、启用CBO(Cost based Optimizer):负载均衡3、启用Vectorization(矢量化)4、使用CTE、临时表、窗口函数等正确的编码约定五、压缩一、调优工具1、explainexplain 查询语句;由于Hive中没有索引,那我们还explain什么呢?答:第一、ORC文件和Parquet格式文件是自带索引,可原创 2021-04-08 14:17:05 · 251 阅读 · 1 评论 -
HBase基本命令
文章目录一、创建表二、插入数据三、更改数据四、查询数据五、删除数据一、创建表create '表名',{NAME=>'列簇名'},{NAME=>'列簇名'}...二、插入数据put '表名','行键名','列簇名:列名','值'三、更改数据和插入一样,还是put,相同rowkey,会根据最近的时间戳对应的数据有效原来的数据并不是被覆盖,而时还存在,HBase是按照最新的时间戳来读取数据四、查询数据1、查看表list:查看所有表desc '表名':查看表结构scan原创 2021-04-08 13:50:40 · 397 阅读 · 0 评论 -
Hive事务
Hive事务使用较少!!!使用较少!!!使用较少!!!一般不用,给钱也不用,除非给的足够多V0.14版本开始支持行级事务支持INSERT、DELETE、UPDATE(v2.2.0开始支持Merge)文件格式只支持ORC局限 表必须是bucketed表需要消耗额外的时间、资源和空间不支持开始、提交、回滚、桶或分区列上的更新锁可以为共享锁或排它锁(串联的而不是并发)不允许从一个非ACID连接读写ACID表有那么多问题你还想用Hive事务?加钱后使用方式1、设置好配置set hi原创 2021-04-08 10:55:28 · 99 阅读 · 0 评论 -
Hive---UDTF
UDTF逻辑代码步骤类 继承 GenericUDTF{ initialize()//初始化 pocess() //业务处理 close() //关闭资源}例子:splToLines():字符串指定分割符切分select splToLines(“a,b,c”,",");结果:abc代码package HiveUDF1.udtf;import org.apache.hadoop.hive.ql.exec.Description;import org.apache.hadoop.原创 2021-04-07 21:55:37 · 90 阅读 · 0 评论 -
Hadoop常用数据模型(文件存储格式)
文章目录一、Text二、SequenceFile三、Avro四、Parquet五、RC & ORC一、Text文本通常采用CSV,JSON等固定长度的纯文本格式优点:1、便于与其他应用程序或脚本进行数据交互2、易读性好,便于理解缺点:1、数据存储量庞大2、查询效率不高3、不支持块压缩二、SequenceFile按行存储二进制键值对数据,HDFS自带的数据格式SequenceFIle中的key和value可以是任意类型的Writable特点以及作用:二进制文件直接将原创 2021-04-07 16:35:55 · 1519 阅读 · 0 评论 -
Hive常用函数
文章目录一、字符函数二、类型转换函数三、数学函数四、日期函数五、集合函数六、条件函数七、聚合函数八、表生成函数一、字符函数二、类型转换函数三、数学函数四、日期函数五、集合函数六、条件函数七、聚合函数count、sum、max、min、avg、var_samp等八、表生成函数...原创 2021-04-06 13:54:29 · 76 阅读 · 0 评论 -
Hash加密算法
文章目录一、String 类型的 hashcode 方法二、hashcode为什么选择31【前提知识】<< : 左移运算符,num << 1,相当于num乘以2 低位补0>> : 右移运算符,num >> 1,相当于num除以2 高位补0>>> : 无符号右移,忽略符号位,空位都以0补齐 % : 模运算 取余^ : 位异或 第一个操作数的的第n位于第二个操作数的第n位相反,那么结果的第n为也为1,否则为0 & :原创 2021-04-01 19:03:09 · 1481 阅读 · 0 评论 -
Hive---高级技术
文章目录一、Mapjoin二、数据传输三、排序四、聚合函数五、窗口函数窗口定义一、Mapjoinset hive.auto.convert.join=true;运行时自动调用Mapjoin,效率会提高:原因是减少reduce操作,reduce操作耗内存二、数据传输1、load文件->表load data local inpath “本地路径” into table 表名load data inpath ‘HDFS路径’ into table 表名表->文件insert ove原创 2021-03-31 15:26:08 · 151 阅读 · 0 评论 -
Hive---分区和分桶
文章目录一、分区1.创建2.插入二、分桶1.创建2.插入3、随机抽样三、分区和分桶的区别一、分区1.创建create table 表名(字段1 属性,...)partitioned by (字段名 属性) //注意这个分区中的字段名最好不要和表中的字段名相同row format ...;2.插入insert into 表名partition(字段名="XXX")select * from 其他表 where 条件;严格模式:不加where 条件不允许全表查看严格模式查询:原创 2021-03-30 16:17:41 · 206 阅读 · 2 评论 -
Hive命令
文章目录一、创建二、查询三、删除一、创建1、标准格式create [external] table employee(name string,address array<string>, //数组genderAndAge struct<gener:string,age:int>, //结构体jobAndSalary map<string,int>, //集合depAndLevel map<string,string>原创 2021-03-29 13:59:44 · 193 阅读 · 0 评论 -
Hbase的安装
Hbase的伪分布式安装【前言】:安装好hadoop文章目录Hbase的伪分布式安装一、安装二、修改环境变量三、配置文件四、启动一、安装1、下载下载地址:官方下载2、解压缩tar -zxvf 二、修改环境变量vi /etc/profileexport HBASE_HOME=/opt/soft/hbaseexport PATH=$HBASE_HOME/bin:$PATHsource 一下测试一下 HBASEhbse version三、配置文件进入 hbase/con原创 2021-03-27 18:27:48 · 177 阅读 · 1 评论 -
Hive
【前言:】我们都知道hive创建的表其实是HDFS上文件的映射,我们写的HiveSQL基本都会执行MapReduce操作,除了一些“select * from 表名”;HiveSQL和MySQL语句基本一样文章目录一、Hive中的数据类型二、内部表和外部表的区别三、Hive命令一、创建表二、插入三、查询四、修改和删除一、Hive中的数据类型基本数据类型复杂数据类型元数据结构二、内部表和外部表的区别三、Hive命令一、创建表创建表时,结构要想好,不推荐修改表结构,其实,在讲MySQL原创 2021-03-26 16:35:39 · 179 阅读 · 0 评论 -
使用DBeaver连接Hive
一、首先开启server2服务hiveserver2 start nohup hiveserver2 start & :后台运行二、下载jar包下载地址:点这里三、使用DBeaver下载地址:点这里下载并解压缩后直接运行添加文件中找到第一步下载的jar包,就可以了最终就是这样的界面...原创 2021-03-26 16:00:18 · 178 阅读 · 0 评论 -
HDFS常用命令
一、查看文件及目录hdfs dfs -ls [-h] [-r] <path>二、创建目录hdfs dfs -mkdir 目录名三、创建多级目录hdfs dfs -mkdir -p <path>四、新建文件hdfs dfs -touchz <filename>五、上传、下载hdfs dfs -put 本地文件路径 hdfs上的路径hdfs dfs -get hdfs上的路径 本地路径六、删除hdfs dfs -rm [-r] [-f] [-原创 2021-03-26 14:11:19 · 604 阅读 · 1 评论 -
Hive的安装和配置
【前言】确保当前机器上装有可用的mysql,没有的可以参考这篇文章:点这里文章目录一、安装二、创建Hive本地文件夹三、配置环境变量四、配置文件五、启动一、安装tar -zxvf hive-1.1.0-cdh5.14.2.tar.gzmv 改名二、创建Hive本地文件夹进入hive目录mkdir warehouse三、配置环境变量vi /etc/profile添加export HIVE_HOME=/opt/soft/hiveexport PATH=$HIVE_HOME/bin:原创 2021-03-26 11:30:57 · 358 阅读 · 0 评论 -
Hadoop伪分布式安装
Linux上安装Hadoop前言:提前做好以下两样事情1、网络设置好,防火墙关掉2、Java安装好,环境变量配好一、下载并解压1.将这两个安装包上传到Linux上2.解压缩tar -zxvf hadoop-2.6.0-cdh5.14.2.tar.gzmv hadoop-2.6.0-cdh5.14.2 hadoop:重命名二、修改Hadoop配置文件三、配置环境变量四、格式化HDFS五、启动Hadoop六、实例...原创 2021-03-13 20:50:30 · 267 阅读 · 3 评论 -
Yarn---工作机制
Yarn执行过程看不懂?不要紧,来看下面的例子原创 2021-03-23 16:21:16 · 186 阅读 · 0 评论 -
MapReduce
文章目录MapReduce官方执行过程一、MapReduce1、pom文件2、MR代码二、配置log4jMapReduce官方执行过程数据倾斜:数据分配到各个节点的量不平衡,有的很少,有的很多分片:当后一个块大小小于10%,会合并到前一块一、MapReduce1、pom文件<dependencies> <dependency> <groupId>junit</groupId> <artifactId>j原创 2021-03-23 15:21:51 · 262 阅读 · 1 评论 -
Hadoop高可用安装与配置
【前言:提前安装好Hadoop的集群模式】文章目录一、配置文件二、启动Journalnode三、删除tmp和logs文件夹四、HDFS格式化五、同步元数据(分发tmp文件给从机)五、启动namenode六、初始化Zookeeper七、全部开启八、测试一、配置文件1、core-site.xml<configuration><property> <name>fs.defaultFS</name> <value>hdfs://hadoo原创 2021-03-22 18:47:43 · 309 阅读 · 2 评论 -
HDFS工作原理
HDFS工作原理文章目录HDFS工作原理一、HDFS特性二、各个节点和文件的功能三、HDFS读写删除的工作过程1、读数据2、写数据3、删除数据四、checkpoint机制一、HDFS特性HDFS是一个文件系统,用于存储和管理文件,通过统一的命名空间(类似于本地文件系统的目录树)。HDFS是分布式的系统,服务器集群中各个节点都有自己的角色和职责。理解HDFS,需要注意以下几个概念:1、HDFS中的文件在物理上是分块存储(block),块的大小可以通过配置参数(dfs.blocksize)来规定,默认原创 2021-03-19 15:21:57 · 2153 阅读 · 1 评论 -
Java---实现连接HDFS
Java—实现连接HDFS【前提:开启hadoop】public class TestHDFS { public static void main(String[] args) { //1.创建Configuration Configuration conf = new Configuration(); try { //2.创建FS->分布式文件系统(URI:IP:9000,configuration,用户名)原创 2021-03-19 14:21:54 · 1403 阅读 · 0 评论 -
HDFS架构设计
HDFS架构设计NameNode和 DataNodeHDFS具有主/从体系结构。HDFS群集由单个NameNode和管理文件系统名称空间并控制客户端对文件的访问的主服务器组成。此外,还有许多数据节点,通常是集群中每个节点一个,它们管理与它们所运行的节点相连的存储。HDFS公开了文件系统名称空间,并允许用户数据存储在文件中。在内部,文件被分成一个或多个块,这些块存储在一组DataNode中。NameNode执行文件系统名称空间操作,例如打开,关闭和重命名文件和目录。它还确定块到DataNode的映射。Da原创 2021-03-18 18:49:43 · 1219 阅读 · 4 评论 -
Hadoop配置JobHistory
配置jobhistoryvi mapred-site.xml添加如下代码 <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <va原创 2021-03-18 16:10:36 · 265 阅读 · 0 评论 -
Hadoop集群配置
Hadoop集群配置【前言:确保有一台机器是可以使用Hadoop的,不知道怎么操作可以看这一篇:点这里】文章目录Hadoop集群配置一、拷贝Hadoop和环境变量1、拷贝Hadoop2、拷贝环境变量二、修改配置文件1、环境变量 (JAVA安装方式相同可忽略)2、hadoop-env.sh3、hdfs-site.xml4、yarn-site.xml5、slaves三、免密登录(之前设置过可跳过)四、格式化HDFS五、启动一、拷贝Hadoop和环境变量【前提:把当前机器中的Hadoop停止,删除logs原创 2021-03-18 15:42:13 · 425 阅读 · 0 评论 -
Hadoop框架
Hadoop是一个开源分布式系统架构文章目录一、Hadoop 1.0二、Hadoop 2.0三、Hadoop 3.01、 Hadoop 3.0简介2、Hadoop 3.0新特性3、 Hadoop3.0 总结一、Hadoop 1.0二、Hadoop 2.0基于Hadoop 2.0的框架和1.0的主要区别:增加了Yarn,缓解Namenode节点管理压力(以前Namenode既要计算又要管理)三、Hadoop 3.0Hadoop3.0新特性介绍,比Spark快10倍的Hadoop3.0新原创 2021-03-18 14:58:16 · 164 阅读 · 0 评论 -
集群设置免密登录
集群设置免密登录具体步骤如下:1、设置主机名将原来的ip地址改成 简单的名字hostnamectl set-hostname = 主机名2、添加各个主机地址和名称vi /etc/hosts:在hosts文件中加入对应的主机名最后一行加入 原主机名 新主机名然后将hosts文件分发到其他主机scp /etc/hosts root@hadoop101:/etc/3、生成密钥ssh-keygen -t rsa -P “”4、自己保存密钥cat ~/.ssh/id_rsa.pub &g原创 2021-03-12 12:00:11 · 269 阅读 · 0 评论