1 分区表 1.1 Hive查询基本原理Hive的设计思想是通过元数据将HDFS上的文件映射成表,基本的查询原理是当用户通过HQL 语句对Hive中的表进行复杂数据处理和计算时,默认将其转换为分布式计算MapReduce程序对 HDFS中的数据进行读取处理的过程。 例如,当我们在Hive中创建一张表tb_login并关联HDFS上的文件,用于存储所有用户的登录信 息,当我们对这张表查询数据时,H
1 文件格式 1.1 概述Hive数据存储的本质还是HDFS,所有的数据读写都基于HDFS的文件来实现,为了提高对HDFS 文件读写的性能,Hive中提供了多种文件存储格式:TextFile、SequenceFile、RCFile、ORC、Parquet 等。不同的文件存储格式具有不同的存储特点,有的可以降低存储空间,有的可以提高查询性能等, 可以用来实现不同场景下的数据存储,以提高对于数据文件
1 Explain 1.1 功能HiveQL是一种类SQL的语言,从编程语言规范来说是一种声明式语言,用户会根据查询需求提 交声明式的HQL查询,而Hive会根据底层计算引擎将其转化成Mapreduce/Tez/Spark的 job。大多 数情况下,用户不需要了解Hive内部是如何工作的,不过,当用户对于Hive具有越来越多的经验后, 尤其是需要在做性能优化的场景下,就要学习下Hive背后的理论
目录1 Hive On Tez1.1 Hive引擎的支持1.2 Tez的介绍1.3 Tez的编译1.4 Tez的部署1.5 Tez的使用2 LLAP的更新3 Metastore独立模式3.1 Metastore的功能3.2 Metastore独立模式3.3 独立模式部署测试 1 Hive On Tez 1.1
1 Hive错误[HiveServer2-Background-Pool: Thread-69-SendThread(quickstart.cloudera:2181)]: Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect java.net.Conne
1 问题产生Impala和hive一起使用,当我们在HIVE中新增一张表时,我们发现在Impala中不能及时查看到新增表,这是因为元数据信息没有及时刷新,在impala里执行invalidate metadata命令刷新元数据即可。 这里我们简单测试HIVE中新建一张表并查看CREATE TABLE test_01(id INT,name STRING,sex STRING,datada
目录1 部署启动hiveserver21.1 配置hive-site.xml1.2 配置hadoop中的core-site.xml文件1.3 测试2 高可用部署2.1 hive-site.xml添加配置2.2 Hiveserver2启动2.3 jdbc连接hive server方式2.4. 客户端轮询方式连接2.5 客户端
目录1 创建数据仓库2 创建Hive分区表3 数据分析3.1 统计总记录数3.2 统计非空记录数3.3 关键词分析3.4 uid分析4 用户行为分析4.1 单击次数与rank之间的关系4.2 个性化行为分析5 实时数据 1 创建数据仓库我们的目标是在Hive中创建数据仓库,以便利用Hive的查询功能实现交互式数
启动hive的metastore或者启动hive后执行命令报错如下:FAILED: HiveException java.lang.RuntimeException: Unable to instantiate org.apache.hadoop.hive.ql.me 原因分析: 是由于没有初始化数据库导致,执行名称初始化数据库即可。解决办法: 执行命令:schematool -dbType
目录1 启动条件2 部署安装2.1 下载并解压Hive安装包2.2 配置Hive2.3 启动并验证Hive2.4 Hive的基本应用 1 启动条件Hive需要安装在成功部署的Hadoop平台上,并且要求Hadoop已经正常启动。所以,读者需要首先验证自己计算机上的Hadoop是否处于正常运行状态,方法是执行一个Hadoop命令,如“hdfs dfs
目录1 常见的建模方法1.1. 星型模型1.2. 雪花模型2 数据分层方法2.1 调用原则3 数据仓库分层3.1 空间换时间3.2 分层的价值 1 常见的建模方法 1.1. 星型模型星型模型是一种多维的数据关系,它由一个事实表和一组维度表组成。每个维度表都有一个维作为 主键,所有这些维的主键组合成事实表的主键。强调的是对维度进行预处理
目录1 hue的安装部署与介绍2 登陆hue3 Hue组件使用3.1 hive3.1.1 hive界面介绍3.1.2 执行hive sql3.2 hdfs3.2.1 hdfs界面介绍3.2.2 使用hue新增文件到hdfs3.2.3 使用hue修改hdfs上的文本文件 1 hue的安装部署与介绍 2 登陆hue启动hu
目录1 指标与维度2 业务需求3 识别维度4 关键指标5 分层与分级 1 指标与维度这里个人理解:先有指标后有维度,指标相当于具体一些列数据,维度相当于在这一些数据中的某种条件下的数据.要进行维度分析需要先理解两个术语:指标和维度。指标是衡量事物发展的标准,也叫度量,如价 格,销量等;指标可以求和、求平均值等计算,指标分为绝对数值和相对数值,绝对数值反映具体
目录1 数据同步问题1.1 数据同步的场景1.2 数据同步的问题2 拉链表的设计2.1 功能与应用场景2.2 实现过程3 拉链表的实现3.1 数据准备3.2 增量采集3.3 合并数据3.4 生成最新拉链表 1 数据同步问题 1.1 数据同步的场景Hive在实际工作中主要用于构建离线数据仓库,定期的从各种数据源中
目录1 连续登陆用户1.1 需求1.2 分析1.3 建表1.4 方案一:自连接过滤实现1.5 方案二:窗口函数实现2 级联累加求和2.1 需求2.2 分析2.3 建表2.4 方案一:自连接分组聚合2.5 方案二:窗口函数实现3 分组TopN3.1 需求3.2 分析3.3 建表
目录1 应用场景2 处理方式3 JSON函数:get_json_object3.1 功能3.2 语法3.3 使用4 JSON函数:json_tuple4.1 功能4.2 语法4.3 使用5 JSONSerde5.1 功能5.2 使用6 总结 1 应用场景JSON数据格式是数据存储及数据处
目录1 工作应用场景2 行转列:多行转多列2.1 需求2.3 实现3 行转列:多行转单列3.1 需求3.2 concat3.3 concat_ws3.4 collect_list3.5 concat_set3.6 实现4 列转行:多列转多行4.1 需求4.2 union4.3 uni
目录1 实际工作需求2 URL的基本组成3 Hive中的URL解析函数3.1 数据准备3.2 需求3.3 parse_url3.4 UDTF函数的问题3.5 Lateral View侧视图3.5.1 功能3.5.2 语法3.5.3 测试 1 实际工作需求业务需求中,我们经常需要对用户的访问、用户进行分析,用于支
目录1 应用场景1.1 Hive中的分隔符1.2 特殊数据2.2 需求3 解决方案一:替换分隔符3.1 方案概述3.2 程序开发3.3 重新建表加载数据3.4 查看结果3.5 总结4 解决方案二:RegexSerDe正则加载4.1 方案概述4.2 什么是SerDe?4.3 Hive中包含的S
目录1 UDTF之explode函数1.1 explode语法功能1.2 explode函数的使用1.3 案例:NBA总冠军球队名单1.3.1 业务需求1.3.2 代码实现1.3.3 explode使用限制1.3.4 explode语法限制原因2 Lateral View侧视图2.1 概念2.2 UDTF配合侧视图
目录1 函数概述2 函数分类2.1 内置函数分类2.1.1 String Functions 字符串函数2.1.2 Date Functions 日期函数2.1.4 Collection Functions 集合函数2.1.5 Conditional Functions 条件函数2.1.6 Type Conversion Function
目录1 Hive内置运算符2 关系运算符3 算术运算符4 逻辑运算符 1 Hive内置运算符随着Hive版本的不断发展,在Hive SQL中支持的、内置的运算符也越来越多。可以使用下面的命令查看当下支持的运算符和函数,并且查看其详细的使用方式。https://cwiki.apache.org/confluence/display/Hive/LanguageMan
目录1 CLIs and Commands客户端和命令1.1 Hive CLI1.1.1 Batch Mode 批处理模式1.1.2 Interactive Shell 交互式模式1.1.3 启动服务、修改配置1.2 Beeline CLI2 Configuration Properties配置属性2.1 配置属性概述2.2 修改
目录1 join概念回顾2 Hive join语法2.1 规则树2.2 语法丰富3 join查询数据环境准备4 Hive inner join5 Hive left join6 Hive right join7 Hive full outer join9 Hive cross join10 Hive join使用注
目录1 事实表、维度表1.1 什么是事实表呢?1.2 什么是维度表呢?2 数据库三范式2.1 首先看第一范式(1NF):2.2 第二范式(2NF)2.3 第三范式(3NF)3 维度建模模型3.1 星型模型和雪花模型3.1.1 星型模型3.1.2 雪花模型4 数据仓库分层设计 1 事实表、维度表首先我们来
目录1 Apache Hue简介2 Apache Hue 介绍2.1 Hue 是什么2.2 Hue 能做什么2.3 Hue 的架构3 Hue 的安装3.1 上传解压安装包3.2 编译初始化工作3.2.1 联网安装各种必须的依赖包3.2.2 Hue 初始化配置3.2.3 创建 mysql 中 Hue 使用的 DB
目录1 Apache Impala简介2 Apache Impala使用2.1. Impala 基本介绍2.2. Impala 与 Hive 关系2.3. Impala 与 Hive 异同2.3.1. Impala 使用的优化技术2.3.2. 执行计划2.3.3. 数据流2.3.4. 内存使用2.3.5. 调度2.
目录1 基础查询1.1 语法树1.2 案例:美国Covid-19新冠select查询1.3 select_expr1.4 ALL 、DISTINCT1.5 WHERE1.6 分区查询、分区裁剪1.7 GROUP BY1.8 HAVING1.9 LIMIT1.10 Hive SQL查询执行顺序2 高阶查询
目录1 背景2 Load语法2.1 filepath2.2 LOCAL2.3 OVERWRITE3 案例:load加载数据到Hive表4 Hive3.0 Load新特性1 背景回想一下,当在Hive中创建好表之后,默认就会在HDFS上创建一个与之对应的文件夹,默认路径是由参数hive.metastore.warehouse.dir控制,默认值是/user/hive/warehouse。要想让hive的表和结构化的数据文件产生映射,就需要把文件移到到表对应的文件夹下面,当然,可以在建
Copyright © 2005-2024 51CTO.COM 版权所有 京ICP证060544号