大数据学习(2)Hadoop-分布式资源计算hive(1)

news2024/9/21 3:34:18

&&大数据学习&&

🔥系列专栏: 👑哲学语录: 承认自己的无知,乃是开启智慧的大门
💖如果觉得博主的文章还不错的话,请点赞👍+收藏⭐️+留言📝支持一下博>主哦🤞


1.1 什么是Hive

1Hive简介

Hive是由Facebook开源,基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张表,并提供类SQL查询功能。

那为什么会有Hive呢?它是为了解决什么问题而诞生的呢?

下面通过一个案例,来快速了解一下Hive。

例如:需求,统计单词出现个数。

(1)在Hadoop课程中我们用MapReduce程序实现的,当时需要写Mapper、Reducer和Driver三个类,并实现对应逻辑,相对繁琐。

test表

id

atguigu

atguigu

ss

ss

jiao

banzhang

xue

hadoop

(2)如果通过Hive SQL实现,一行就搞定了,简单方便,容易理解。

select count(*) from test group by id;

2Hive本质

Hive是一个Hadoop客户端,用于HQL(Hive SQL转化成MapReduce程序

(1)Hive中每张表的数据存储在HDFS

(2)Hive分析数据底层的实现是MapReduce(也可配置为Spark或者Tez) 

(3)执行程序运行在Yarn上

1.2 Hive架构原理

1用户接口:Client

CLI(command-line interface)、JDBC/ODBC。

说明:JDBC和ODBC的区别。

(1)JDBC的移植性比ODBC好;(通常情况下,安装完ODBC驱动程序之后,还需要经过确定的配置才能够应用。而不相同的配置在不相同数据库服务器之间不能够通用。所以,安装一次就需要再配置一次。JDBC只需要选取适当的JDBC数据库驱动程序,就不需要额外的配置。在安装过程中,JDBC数据库驱动程序会自己完成有关的配置。)

(2)两者使用的语言不同,JDBC在Java编程时使用,ODBC一般在C/C++编程时使用。

2元数据:Metastore

元数据包括:数据库(默认是default)、表名、表的拥有者、列/分区字段、表的类型(是否是外部表)、表的数据所在目录等。

默认存储在自带的derby数据库中,由于derby数据库只支持单客户端访问,生产环境中为了多人开发,推荐使用MySQL存储Metastore。

3驱动器:Driver

(1)解析器(SQLParser):将SQL字符串转换成抽象语法树(AST)

(2)语义分析(Semantic Analyzer):将AST进一步划分为QeuryBlock

(3)逻辑计划生成器(Logical Plan Gen):将语法树生成逻辑计划

(4)逻辑优化器(Logical Optimizer):对逻辑计划进行优化

(5)物理计划生成器(Physical Plan Gen):根据优化后的逻辑计划生成物理计划

(6)物理优化器(Physical Optimizer):对物理计划进行优化

(7)执行器(Execution):执行该计划,得到查询结果并返回给客户端

4Hadoop

使用HDFS进行存储,可以选择MapReduce/Tez/Spark进行计算。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1075869.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

浅谈风力发电场集中监控系统解决方案

作为清洁能源之一,风力发电场近几年装机容量快速增长。8月17日,国家能源局发布1-7月份全国电力工业统计数据。截至7月底,全国累计发电装机容量约27.4亿千瓦,同比增长11.5%。其中,太阳能发电装机容量约4.9亿千瓦&#x…

绝地求生大吃鸡攻略,让你成为顶级战士!

近年来,绝地求生越来越受到玩家们的喜爱,吃鸡成为了很多人的娱乐方式。作为一个资深吃鸡玩家,今天我要和大家分享一些提高战斗力的干货,以及一些方便吃鸡作图与查询的实用工具。 首先,提高战斗力是吃鸡游戏中最重要的一…

青菜学蒸馒头

作为一个会写代码的厨师,做好一笼松软可口的馒头那是必修的基本功,今天我就来试验一把,具体过程如下: 一、材料准备 1、200克面粉 2、2克干酵母粉 3、35度左右温开水一碗 4、白糖少许 二、制作步骤 1、面粉的选择 面粉的种…

html调用手机打电话、发短信网页源码/热门挪车自动拨打电话、发送短信html源码

源码介绍: 这个是自动拨打发送挪车短信电话源码,纯html临时停车挪车网站源码。利用html拨打电话、发送短信链接,js拨打电话。可以html调用手机打电话、发短信功能。使用H5移动HTML特殊链接实现打电话,发短信,发邮件的功能,非常方…

回归算法全解析!一文读懂机器学习中的回归模型

目录 一、引言回归问题的重要性文章目的和结构概览 二、回归基础什么是回归问题例子: 回归与分类的区别例子: 回归问题的应用场景例子: 三、常见回归算法3.1 线性回归数学原理代码实现输出例子: 3.2 多项式回归数学原理代码实现输…

2023年中国汽车后市场行业研究报告

第一章 行业概况 1.1 定义 汽车后市场行业在中国的快速崛起,反映了汽车产业链的完善和消费者需求的多样化。这个行业涵盖了汽车销售后,围绕汽车使用过程中涌现的各类服务和交易活动。它不仅为消费者提供了汽车使用过程中所需的全方位服务,也…

【C/C++笔试练习】常见进制转换、宏的定义和特点、sizeof与strlen、字符串函数、统计回文、连续最大和

文章目录 C/C笔试练习1.常见进制转换(1)进制前缀(2)进制转换 2.宏的定义和特点(3)宏的定义(4)有关宏的计算 3.sizeof与strlen(5)sizeof和strlen的差别 4.字符…

2023年中国复合门产量、销量、产业链及市场规模分析[图]

复合门是一种由木材和人造板材等材料组合而成的门,具有较高的强度和稳定性。它采用多层材料交叉堆叠、胶合而成,能够有效防止门扇变形、开裂和变色等问题,同时还具备一定的防火、防潮和防虫功能。 复合门产业链 资料来源:共研产业…

【开题报告】如何借助chatgpt完成毕业论文开题报告

步骤 1:确定论文主题和研究问题 首先,你需要确定你的论文主题和研究问题。这可以是与软件开发、算法、人工智能等相关的任何主题。确保主题具有一定的研究性和可行性。 步骤 2:收集相关文献和资料 在开始撰写开题报告之前,收集相…

软件培训测试高级工程师多测师肖sir__html之作业11

html之作业 案例1&#xff1a; 截图&#xff1a; 代码&#xff1a; <!DOCTYPE html> <html><head><meta charset"UTF-8"><title>表单</title></head><body><table style"background-color:red" bo…

全新第二代SCB后备保护器:保护电器的后备力量

在电气设备中&#xff0c;浪涌保护器&#xff08;SPD&#xff09;是一种重要的防雷装置&#xff0c;它可以在电源线路中并联接入&#xff0c;当发生过电压或雷电冲击时&#xff0c;将其导向地线&#xff0c;从而保护后端设备免受损坏。然而&#xff0c;SPD本身也会因为长期使用…

【算法设计与分析】— —实现最优载的贪心算法

&#x1f383;欢迎大家前去观看我的算法设计与分析专栏&#xff1a; 算法设计与分析_IT闫的博客-CSDN博客 希望对大家有所帮助&#xff01; &#x1f383;个人专栏&#xff1a; &#x1f42c; 算法设计与分析&#xff1a;算法设计与分析_IT闫的博客-CSDN博客 &#x1f433;Java…

Java 客户端调用 WebService 接口的一种方式

文章目录 1. SoapUI 测试 WebService 接口2. Java 访问 WebService 接口 1. SoapUI 测试 WebService 接口 通过SoapUI创建一个SOAP Project&#xff1b; 项目名称自定义&#xff0c;WSDL地址维护WebService接口地址。点击OK即可 项目创建完成后&#xff0c;展开WebService项&…

孙哥分布式VIP课程

杜绝一两门课程割韭菜&#xff0c;杜绝引流之后换老师&#xff0c;全行业唯一支持全套试听的良心课程。 你目前学习提高跳槽是否有如下痛点 1、网上开源课程“琳琅满目”&#xff0c;学完后还是掌握的不够扎实&#xff0c;理解的不够透彻&#xff0c;学无所成2、学了若干知识…

浏览器插件开发爬虫记录

常用爬虫有各种各样的反爬限制&#xff0c;而如果是小数据量并且该网站反爬手段非常厉害的前提下&#xff0c;可以考虑使用浏览器插件作为爬虫手段 基本代码来源于这位博主分享的插件代码&#xff0c; 主要在他的基础上加了 请求代理、管理面板、脚本注入拦截到的请求数据和管…

Windows服务器获取本地文件夹文件

1、直接复制粘贴 通过远程连接到这个服务器&#xff0c;然后本机到服务器能直接粘贴复制文件上去 注&#xff1a;首先服务器要先开启远程桌面哦 2、Windows远程连接 有的不能复制粘贴的&#xff0c;可以用第二种方法。 ①、windowsR,输入mstsc ②、点击“选项”按钮&#x…

linux中Crontab定时参数

注&#xff1a;图片转载于 点我进入图片出处 * * * * * sh /data/var/test.sh >> test_crontab_log.log分钟 0~59 0表示没分周 小时 0~23 0表示每小时 天 1~31 *表示每天 月 1~12 *表示每月 周 0~7 */0/7表示每周

pytorch实现经典神经网络:VGG16模型之初探

文章链接 https://blog.csdn.net/weixin_44791964/article/details/102585038?ops_request_misc%257B%2522request%255Fid%2522%253A%2522169675238616800211588158%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id16967523861680…

谷歌 Chrome 浏览器正推进“追踪保护”功能

导读近日消息&#xff0c;根据国外科技媒体 Windows Latest 报道&#xff0c;谷歌计划在 Chrome 浏览器中推进“追踪保护”&#xff08;Tracking Protection&#xff09;功能&#xff0c;整合浏览器现有隐私功能&#xff0c;保护用户被网站跟踪。 根据一项 Chromium 提案&…

Java List 中存不同的数据类型

在最近的实践中&#xff0c;有人突然问了一个问题&#xff1a; 在 Java 的 List 中可以存不同的数据类型吗&#xff1f; 这个问题突然给问到了&#xff0c;我们都知道 Java 中的 List 中存的是对象&#xff0c;通常我们定义都会这样的定义&#xff1a; List<String> t…