Hadoop
xxydzyr
愿有岁月可回首,且以深情共白头!@猪头
展开
-
Hive调优
Hive调优文章目录Hive调优使用 EXPLAIN限制调整JOIN 优化本地模式并行执行严格模式调整mapper 和 reducer 个数JVM重用动态分区调整推测执行虚拟列使用 EXPLAIN在查询语句前加上 EXPLAN 关键字,然后来查询下查询计划和其他一些信息。这个查询本身是不会执行的。首先会打印出抽象语法树。它表明Hive 是如何将查询解析成 token(符号) 和 liter...原创 2019-09-19 09:34:32 · 185 阅读 · 0 评论 -
Hive创建UDTF函数
Hive创建UDTF函数文章目录Hive创建UDTF函数参考:这部分不知道建一个什么样的函数,就照着网上的来了,所以就不写其他东西了package com.chinasofti.hive.udf;import org.apache.hadoop.hive.ql.exec.UDFArgumentException;import org.apache.hadoop.hive.ql.exec...转载 2019-09-18 10:40:22 · 343 阅读 · 0 评论 -
Hive创建UDAF函数
Hive创建UDAF函数文章目录Hive创建UDAF函数1. 在之前的maven工程上重新创建一个java类2. 将写好的程序打包3. 上传至Linux系统上4. 连接上Hive5. 使用命令,将jar包添加进Hive中6. 创建一个临时函数与添加进来的jar包进行关联7. 测试一下参考:1. 在之前的maven工程上重新创建一个java类package com.chinasofti.hiv...原创 2019-09-18 10:39:19 · 1184 阅读 · 0 评论 -
Hive创建自定义GenericUDF函数
Hive创建自定义GenericUDF函数文章目录Hive创建自定义GenericUDF函数本文需要了解的几个点:1. 在之前的maven工程上重新创建一个java类2. 将写好的程序打包3. 上传至Linux系统上4. 连接上Hive5. 使用命令,将jar包添加进Hive中6. 创建一个临时函数与添加进来的jar包进行关联7. 测试一下参考:本文需要了解的几个点:ObjectInsp...原创 2019-09-18 10:35:58 · 2301 阅读 · 0 评论 -
Hive创建自定义UDF函数
Hive创建自定义UDF函数文章目录Hive创建自定义UDF函数博客资源:1. 首先打开IDEA,创建一个maven项目2. 导入所需要的依赖3. 创建一个包来存储相关的类4. 写一个 java 类,继承 UDF,并重载 evaluate 方法5. 将写好的程序打包6. 上传至Linux系统上7. 连接上Hive8. 使用命令,将jar包添加进Hive中9. 创建一个临时函数与添加进来的jar包...原创 2019-09-18 10:33:18 · 1267 阅读 · 1 评论 -
Hive索引
Hive索引文章目录Hive索引Compact索引Aggregation索引Bitmap索引Compact索引CREATE INDEX idx_xxx ON TABLE xxx(tablename) AS 'org.apache.hadoop.hive.ql.index.compact.CompactIndexHandler' WITH DEFERRED REBUILD;使用 show ...原创 2019-09-18 10:30:04 · 300 阅读 · 0 评论 -
Hive MR优化
Hive MR优化文章目录Hive MR优化1. map reduce个数选择2. 调整一批运行的map数3. 动态调整4. 设置合理的reduce启动时间5. 设置sort时的内存6. 对map的输出结果进行压缩,提升从map到reduce的传输效率7. 对于复杂的任务,还需要通过并行来提升整体运行速度1. map reduce个数选择在这方面,尤其是map的选择,基本上决定了整个job的...原创 2019-09-18 10:29:16 · 437 阅读 · 0 评论 -
Hive 参数配置
Hive 参数配置1. Hive 命令行直接输入 $HIVE_HOME/bin/hive 会进入Hive的shell客户端交互窗口。输入$HIVE_HOME/bin/hive –H或者 –help可以显示帮助选项:说明:-i 初始化 HQL 文件。-e 从命令行执行指定的 HQL-f 执行 HQL 脚本-v 输出执行的 HQL 语句到控制台-p <port> con...原创 2019-09-18 10:28:21 · 271 阅读 · 0 评论 -
Hive中文乱码解决
Hive中文乱码解决在练习Hivesql语句时,发现中文插入乱码。首先查看文件的编码格式使用命令:cd /export/data/hivedata/ 进入数据存储位置然后使用命令:file t_map.txt发现文件编码格式时UTF-8 ,所以不是文件编码格式问题。查看MySQL的编码格式先使用命令mysql -uroot -p ,然后输入密码,进入MySQL;使用命令:show...原创 2019-09-17 09:04:56 · 4910 阅读 · 0 评论 -
Hive练习
Hive练习文章目录Hive练习博客资源:创建表创建分区表创建单分区表创建多个分区表创建分桶表开启分桶功能创建分桶表映射数据:多重插入:动态分区Hive数据导出Hive的本地模式博客资源:一些自己编造的数据,还有一个从朋友那里获取到的数据,随意玩玩。当前下面练习描述中我会用到。链接:https://pan.baidu.com/s/15Ix8wlQ5zQOEB6Q-7mW9yA提取码:z7...原创 2019-09-17 09:01:21 · 434 阅读 · 0 评论 -
Sqoop的安装
Sqoop的安装博客资源:Sqoop 1.4.6版和MySQL连接驱动包:链接:https://pan.baidu.com/s/19CFgnSt6dCgoet2tSx2adQ提取码:b614前置工作:需要先具备 java 和 hadoop 的环境。安装流程:先将安装包上传到软件保存位置命令:cd /export/server/然后使用 rz 命令上传Sqoop的安装包...原创 2019-09-18 10:43:26 · 160 阅读 · 0 评论 -
Sqoop的导入和导出
Sqoop的导入和导出博客资源:MySQL创建测试表和数据,Sqoop相关练习脚本:链接:https://pan.baidu.com/s/1M_Zr3-cJNJMZQHhUA3XZKQ提取码:csgw导入将MySQL的数据导入到hdfs本地连接node-1上的数据库:使用SQLyog连接先新建一个测试数据库,名为:userdb先在本地使用之前安装好的sqlyang连接nod...原创 2019-09-18 10:47:49 · 340 阅读 · 0 评论 -
Hive模式设计
Hive模式设计文章目录Hive模式设计关于分区按时间分区的优点唯一键和标准化避免标准化的主要原因分桶表数据存储关于分区HDFS用于设计存储数百万的大文件,而非数十亿的小文件,使用过多分区可能导致的一个问题就是会床架内大量的非必须的Hadoop文件和文件夹。在 《Hive编程指南》中,之前的解决方案是将数据转存在Amazon S3上。MapReduce 会将一个任务(job)转换成多个任务...原创 2019-09-19 09:33:22 · 328 阅读 · 0 评论 -
HiveQL索引
HiveQL索引文章目录HiveQL索引创建索引重建索引显示索引删除索引实现一个定制化的索引处理器索引的其他信息见我的另外一篇博客。Hive只有有限的索引功能。Hive中没有普通关系型数据库中键的概念,但是还是可以对一些字段建立索引来加速某些操作的。一张表的索引数据存储在另外一张表中。当逻辑分区实际上太多太细而几乎无法使用时,建立索引也就成为分区的另一个选择。建立索引可以帮助裁剪掉一张表的...原创 2019-09-19 09:32:46 · 269 阅读 · 0 评论 -
HiveQL视图
HiveQL视图文章目录HiveQL视图使用视图来限制基于条件过滤的数据动态分区中的视图和map类型视图其他相关视图可以允许保存一个查询并像对待表一样对这个查询进行操作。这是一个逻辑结构,因为它不像一个表会存储数据。换句话说,Hive目前暂不支持物化视图。当一个查询引用一个视图时,这个视图所定义的查询语句将和用户的查询语句组合在一起,然后供Hive制定查询计划。从逻辑上讲,可以想象为Hive...原创 2019-09-19 09:31:53 · 355 阅读 · 0 评论 -
HiveQL:查询
HiveQL:查询文章目录HiveQL:查询SELECT ...FROM 语句LIMIT 语句什么情况下Hive可以避免进行MapReduceWHERE 语句关于浮点数比较join 语句join优化LEFT SEMI-JOINmap-side JOINORDER BY 和 SORT BY含有SORT BY 的 DISTRIBUTE BYCLUSTER BYxxx.by 之前的相关笔记:抽样查询数...原创 2019-09-19 09:30:38 · 379 阅读 · 3 评论 -
Hive常用函数
Hive常用函数文章目录Hive常用函数数学函数聚合函数表生成函数其他内置函数该部分来源 《Hive编程指南》 第六章数学函数聚合函数表生成函数其他内置函数...原创 2019-09-19 09:29:28 · 135 阅读 · 0 评论 -
Hive数据定义
Hive数据定义文章目录Hive数据定义Hive中的数据库创建一个数据库:查看数据库目录:使用数据库:删除数据库:修改数据库Hive中的表创建表查询表信息管理表(内部表)外部表复制表结构时有无 `EXTERNAL` 关键字与内部表,外部表的影响内部分区表外部分区表自定义表的存储格式删除表hadoop回收站功能修改表Hive修改时的"钩子"Hive防误删除Hive中的数据库创建一个数据库:命...原创 2019-09-19 09:27:57 · 303 阅读 · 0 评论 -
Hive数据类型和文件格式
Hive数据类型和文件格式Hive基本数据类型数据类型长度例子TINYINT1 byte 有符号整数20SMALINT2 byte 有符号整数20INT4 byte 有符号整数20BIGINT8 byte 有符号整数20BOOLEAN布尔类型,true或者falseTRUEFLOAT单精度浮点数3.14159DO...原创 2019-09-19 09:24:59 · 296 阅读 · 0 评论 -
Hive编程指南整理部分基础概念
Hive编程指南整理部分基础概念文章目录Hive编程指南整理部分基础概念部分笔记Hive服务Hive中的变量和属性命名空间Hive CLIHive查看操作命令历史在Hive中使用Hadoop的dfs命令Amazon S3部分笔记MapReduce任务的启动过程需要消耗较长的时间,所以Hive的查询延迟比较严重。Hive不支持OLTP(联机事务处理)所需的关键功能,而更接近成为一个O...原创 2019-09-19 09:24:04 · 224 阅读 · 0 评论 -
Azkanban基本概念
Azkanban基本概念博客资源:链接:https://pan.baidu.com/s/1XgXXyGdSz4T9qDXK44ypjA提取码:n2ay内包含Azkaban安装所需的三个tar包。介绍Azkaban 是由 Linkedin 公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban 使用 job 配置文件建立任务之间的依赖关系...原创 2019-09-18 10:53:46 · 1109 阅读 · 0 评论 -
Hive的基本操作
Hive的基本操作1. DDL 操作1.1. 创建表建表语法:CREATE [EXTERNAL] TABLE [IF NOT EXISTS] table_name [(col_name data_type [COMMENT col_comment], ...)] [COMMENT table_comment] [PARTITIONED BY (col_name data_typ...原创 2019-09-17 08:55:40 · 345 阅读 · 0 评论 -
Hive表与内部数据的映射关系
Hive表与内部数据的映射关系1. 在练习Hive之前,先创建一个文件夹来存放Hive的练习数据。命令:cd /export/data/ ,然后创建对应文件夹: mkdir hivedata2. 进入hivedata文件夹,创建一个名为1.txt 的文件,将如下数据复制进去。1,allen,182,jack,283,rose,204,lucy,103. 然后将文件上传值HDF...原创 2019-09-17 08:53:21 · 2658 阅读 · 0 评论 -
MapReduce编程练习2.0
MapReduce编程练习2.02.0新需求:不需要统计总流量,需要将所有数据按照总流量倒序排序。问题点:增加排序解析:这个第一眼看过去有点懵,因为之前都没有说到有排序这个功能,但是我们仔细查看一下初始需求的结果可以发现:key是正序排列的。即:手机号是正序排列的,Hadoop有一个特性,就是会对key值进行排序,所以我们在遇到排序这个功能的时候可以想是否能将需要排序的字段作为key...原创 2019-09-16 15:34:26 · 225 阅读 · 0 评论 -
MapReduce编程练习1.0
MapReduce编程练习1.01.0 初始需求需求: 有一批数据,手机通过基站上网留下了一下访问数据,数据内容如下,需要统计每一个用户(手机号)所耗费的总上行流量、总下行流量,总流量。问题点:按从左至右的顺序,字段的含义:时间戳,手机号,基站地址(表示手机访问的是哪个基站),请求网站的IP,请求网站的域名,请求网站的简介,上行流量个数,下行流量个数,上行总流量,下行总流量,请求的状态...原创 2019-09-16 15:32:23 · 523 阅读 · 0 评论 -
MapReduce程序错误如何排错
MapReduce程序错误如何排错在MapReduce程序运行的时候,我们可以在yarn的web界面上查看到相关的进程。一旦出现问题,我们可以先进入yarn的web界面,找到相关进程,然后点击进去。进入后我们找到日志文件入口。...原创 2019-09-16 15:29:53 · 200 阅读 · 0 评论 -
MapReduce Java练习
MapReduce Java练习练习用到的文件链接:https://pan.baidu.com/s/1dgVA5y_cSXaNjj0BhfJvtA提取码:48l1log4j.properties文件:(这个之前貌似没有给吧)链接:https://pan.baidu.com/s/1H3Rw1PqhptJC8cNPPixmUg提取码:28fl理解了一些基本概念,这里像之前安装eclips...原创 2019-09-16 15:27:58 · 298 阅读 · 0 评论 -
MapReduce的基础概念
MapReduce的基础概念MapReduce的思想:MapReduce的思想核心:“分而治之”,适用于大量复杂的任务处理场景(大规模数据处理场景)。**Map 负责“分”,**即把复杂的任务分解为若干个“简单的任务”来并行处理。可以进行拆分的前提是这些小任务可以并行计算,彼此间几乎没有依赖关系。**Reduce 负责“合”,**即对 map 阶段的结果进行全局汇总。一个比较形象的语言解...原创 2019-09-16 15:23:34 · 496 阅读 · 0 评论 -
HDFS 的 JAVA API 操作
HDFS 的 JAVA API 操作本节资源:Hadoop在window上编译好的压缩包:链接:https://pan.baidu.com/s/1QvialqyxBu_eHvLEkwBcAw提取码:q8f7HDFS 在生产应用中主要是客户端的开发,其核心步骤是从 HDFS 提供的 api中构造一个 HDFS 的访问客户端对象,然后通过该客户端对象操作(增删改查)HDFS 上的文件。1...原创 2019-08-13 22:49:24 · 240 阅读 · 0 评论 -
HDFS基本原理
HDFS基本原理NameNode 概述NameNode 是 HDFS 的核心。NameNode 也称为 Master。NameNode 仅存储 HDFS 的元数据:文件系统中所有文件的目录树,并跟踪整个集群中的文件。NameNode 不存储实际数据或数据集。数据本身实际存储在 DataNodes 中。NameNode 知道 HDFS 中任何给定文件的块列表及其位置。使用此信息Name...原创 2019-08-13 22:47:28 · 184 阅读 · 0 评论 -
HDFS 基本概念
HDFS 基本概念1. HDFS 介绍HDFS 是 Hadoop Distribute File System 的简称,意为:Hadoop 分布式文件系统。是 Hadoop 核心组件之一,作为最底层的分布式存储服务而存在。分布式文件系统解决的问题就是大数据存储。它们是横跨在多台计算机上的存储系统。分布式文件系统在大数据时代有着广泛的应用前景,它们为存储和处理超大规模数据提供所需的扩展能力。...原创 2019-08-13 22:45:31 · 1254 阅读 · 0 评论 -
启动Hadoop集群
启动Hadoop集群第一次启动前置工作注意:首次启动 HDFS 时,必须对其进行格式化操作。本质上是一些清理和准备工作,因为此时的 HDFS 在物理上还是不存在的。(本质是对namenode进行初始化)命令:hdfs namenode -format 或者 hadoop namenode -format命令中的 - 已经修复为 英文输入法下的 -关于hdfs的格式化:首次启动需要进行格...原创 2019-08-13 22:41:52 · 2105 阅读 · 0 评论 -
MapReduce编程练习3.0
MapReduce编程练习3.03.0需求:这次统计,也不排序,需要把数据按照手机归属地不同省份输出到不同文件中问题点:需要输出到不同的文件中需要按手机归属地进行分组解析:修改reducer的数量即可输出多个文件对于分组,Hadoop默认使用的是key的hash值对reducer个数取余分组,这里实现是通过调用默认的分组类:HashPartitioner进行分区的。...原创 2019-09-16 15:35:47 · 609 阅读 · 0 评论 -
Mapreduce 的 combiner
Mapreduce 的 combiner每一个 map 都可能会产生大量的本地输出,Combiner 的作用就是对 map 端的输出先做一次合并,以减少在 map 和 reduce 节点之间的数据传输量,以提高网络 IO 性能,是 MapReduce 的一种优化手段之一。combiner 是 MR 程序中 Mapper 和 Reducer 之外的一种组件combiner 组件的父类就...原创 2019-09-16 15:36:48 · 241 阅读 · 0 评论 -
Hive的几种启动方式
Hive的几种启动方式A. shell客户端启动使用命令:/export/server/hive/bin/hive 直接启动。B. 远程访问Hiveshell客户端启动只能启动本机上的Hive,如果要在别的客户端上启动,就不能使用这个方式,所以这里提供一种远程访问的启动方式。1. 在Hive的bin目录下可以启动一个服务器来接受远程服务。进入Hive的安装目录,使用命令:bin/hi...原创 2019-09-17 08:50:31 · 10473 阅读 · 0 评论 -
Hive安装部署
Hive安装部署博客资源:Hive的安装包和源码包:链接:https://pan.baidu.com/s/13xvIMzJ69PZUJ75Eo11cHQ提取码:olnlHive连接MySQL的驱动:链接:https://pan.baidu.com/s/1eNiSY_GBRh6s-x-atbNlGw提取码:cfdxHive 安装前需要安装好 JDK 和 Hadoop。配置好环境变量。...原创 2019-09-17 08:48:13 · 547 阅读 · 0 评论 -
Hadoop Federation(联邦)
Hadoop Federation(联邦)单 NameNode 的架构使得 HDFS 在集群扩展性和性能上都有潜在的问题,当集群大到一定程度后,NameNode 进程使用的内存可能会达到上百 G,NameNode 成为了性能的瓶颈。因而提出了 namenode 水平扩展方案-- Federation。Federation 中文意思为联邦,联盟,是 NameNode 的 Federation,也...原创 2019-09-17 08:43:56 · 345 阅读 · 0 评论 -
Hadoop HA
Hadoop HA文章目录Hadoop HA概述Namenode HANamenode HA 详解架构上的修改:Failover ControllerZKFailoverController 主要职责:YARN HA概述HA(High Available), 高可用,是保证业务连续性的有效解决方案,一般有两个或两个以上的节点,分为活动节点(Active)及备用节点(Standby)。通常把正...原创 2019-09-17 08:42:55 · 293 阅读 · 0 评论 -
HDFS 安全模式
HDFS 安全模式文章目录HDFS 安全模式安全模式概述安全模式配置安全模式命令安全模式概述安全模式是 HDFS 所处的一种特殊状态,在这种状态下,文件系统只接受读数据请求,而不接受删除、修改等变更请求,是一种保护机制,用于保证集群中的数据块的安全性。在 NameNode 主节点启动时,HDFS 首先进入安全模式,集群会开始检查数据块的完整性。DataNode 在启动的时候会向 namen...原创 2019-09-17 08:41:01 · 346 阅读 · 0 评论 -
HDFS 元数据管理机制
HDFS 元数据管理机制文章目录HDFS 元数据管理机制元数据管理概述元数据目录相关文件dfs.namenode.name.dirVERSIONseen_txidFsimage & editssecondary namenodeCheckpointCheckpoint 详细步骤Checkpoint 触发条件元数据管理概述HDFS 元数据,按类型分,主要包括以下几个部分:文件、目...原创 2019-09-17 08:39:00 · 407 阅读 · 0 评论