iis服务器助手广告
返回顶部
首页 > 资讯 > 精选 >hive组件能提供什么服务
  • 946
分享到

hive组件能提供什么服务

2023-07-04 14:07:34 946人浏览 八月长安
摘要

本篇内容介绍了“Hive组件能提供什么服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!hive组件可提供的服务:1、把sql语句转化成ma

本篇内容介绍了“Hive组件能提供什么服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

hive组件可提供的服务:1、把sql语句转化成mapReduce代码;2、可以对数据进行存储,存储使用 hdfs;3、可以对数据进行计算,计算使用MapReduce。hive是基于hadoop的一个数据仓库工具,用来进行数据提取、转化、加载;hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。

在搭建数据仓库时,Hive组件在其中发挥了非常关键的作用,我们知道Hive是一个基于Hadoop的重要数据仓库工具,但具体如何应用则需要我们进一步进行探索。


Hive是什么

hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析

Hive用来做什么

把SQL语句转化成mapreduce代码
2.可以对数据进行存储 存储使用 HDFS
3.可以对数据进行计算 计算使用 MapReduce

Hive的优势是什么

a.Hive的优点

(1)简单容易上手:提供了类SQL查询语言HQL

(2)可扩展:为超大数据集设计了计算/扩展能力(MR作为计算引擎,HDFS作为存储系统)

一般情况下不需要重启服务Hive可以自由的扩展集群的规模。

(3)提供统一的元数据管理

(4)延展性:Hive支持用户自定义函数,用户可以根据自己的需求来实现自己的函数

(5)容错:良好的容错性,节点出现问题SQL仍可完成执行

b.Hive的缺点

(1)hive的HQL表达能力有限

(2)hive的效率比较低

  • 1)hive自动生成的mapreduce作业,通常情况下不够智能化

  • 2)hive调优比较困难,粒度较粗

  • 3)hive可控性差

(3)Hive不支持事物。主要用作OLAP(联机分析处理)

hive组件能提供什么服务

1) Hive 处理的数据存储在 HDFS

2) Hive 分析数据底层的默认实现是 MapReduce

3) 执行程序运行在 Yarn 上

总结:相当于是hadoop的一个客户端的作用。

为什么用Hive

(1)Hive与传统数据库的比较

hive组件能提供什么服务

Hive用于海量数据的离线数据分析。Hive具有sql数据库的外表,但应用场景完全不同,Hive只适合用来做批量数据统计分析。

(2)Hive的优势

Hive利用HDFS存储数据,利用MapReduce查询分析数据。因为直接使用Hadoop MapReduce处理数据,会面临人员学习成本太高的问题,而且MapReduce实现复杂查询逻辑开发难度太大。而使用Hive,操作接口采用类SQL语法,提供快速开发的能力的同时还避免了去写MapReduce,从而减少开发人员的学习成本,功能扩展更加方便。

Hive解决了什么问题

Hive解决了大数据的查询功能,让不会写MR的人也能使用MR,它的本质就是将HQL转换为MR. 它的底层走的是MR,写MR效率低,而且痛苦,Hive的出现就为JAVAEE的兄弟带来了捷径和福音.

Hive 架构原理

hive组件能提供什么服务

1. 用户接口: Client

CLI(hive shell)、 JDBC/ODBC(java 访问 hive)、 WEBUI(浏览器访问 hive)

2. 元数据: Metastore

元数据包括:表名、表所属的数据库(默认是 default)、表的拥有者、列/分区字段、表

的类型(是否是外部表)、表的数据所在目录等;

元数据: Metastore

元数据包括:表名、表所属的数据库(默认是 default)、表的拥有者、列/分区字段、表

的类型(是否是外部表)、表的数据所在目录等;

默认存储在自带的 derby 数据库中,推荐使用 MySQL 存储 Metastore。

3. Hadoop

使用 HDFS 进行存储,使用 MapReduce 进行计算。

4. 驱动器: Driver

(1)解析器(SQL Parser):将 SQL 字符串转换成抽象语法树 AST,这一步一般都用

第三方工具库完成,比如 antlr;对 AST 进行语法分析,比如表是否存在、字段是否存

在、 SQL 语义是否有误。

(2)编译器(Physical Plan):将 AST 编译生成逻辑执行计划。

(3)优化器(Query Optimizer):对逻辑执行计划进行优化。

(4)执行器(Execution):把逻辑执行计划转换成可以运行的物理计划。对于 Hive 来

说,就是 MR/spark

hive组件能提供什么服务

Hive 是建立在 Hadoop 之上的,所有 Hive 的数据都是存储在 HDFS 中的。而数据库则

可以将数据保存在块设备或者本地文件系统中。

由于 Hive 是针对数据仓库应用设计的,而数据仓库的内容是读多写少的。 因此, Hive

中不建议对数据的改写,所有的数据都是在加载的时候确定好的。而数据库中的数据通常是

需要经常进行修改的,因此可以使用INSERT INTO … VALUES 添加数据,使用UPDATE … SET 修改数据。

Hive 和数据库比较

由于 Hive 采用了类似 SQL 的查询语言 HQL(Hive Query Language),因此很容易将 Hive 理解为数据库。其实从结构上来看, Hive 和数据库除了拥有类似的查询语言,再无类似之处。本节将从多个方面来阐述 Hive 和数据库的差异。数据库可以用在 Online 的应用中,但是 Hive 是为数据仓库而设计的,清楚这一点,有助于从应用角度理解 Hive 的特性。

查询语言
由于 SQL 被广泛的应用在数据仓库中,因此,专门针对 Hive 的特性设计了类 SQL 的查询语言 HQL。熟悉 SQL 开发的开发者可以很方便的使用 Hive 进行开发。

数据存储位置Hive 是建立在 Hadoop 之上的,所有 Hive 的数据都是存储在 HDFS 中的。而数据库则可以将数据保存在块设备或者本地文件系统中。

3 、数据更新:由于 Hive 是针对数据仓库应用设计的,而数据仓库的内容是读多写少的。 因此, Hive中不建议对数据的改写,所有的数据都是在加载的时候确定好的。 而数据库中的数据通常是需 要 经 常 进 行 修 改 的 , 因 此 可 以 使 用 INSERT INTO … VALUES 添 加 数 据 , 使用 UPDATE … SET 修改数据。

4 、索引:Hive 在加载数据的过程中不会对数据进行任何处理,甚至不会对数据进行扫描,因此也没有对数据中的某些 Key 建立索引。 Hive 要访问数据中满足条件的特定值时,需要暴力扫描整个数据,因此访问延迟较高。由于 MapReduce 的引入, Hive 可以并行访问数据,因此即使没有索引,对于大数据量的访问, Hive 仍然可以体现出优势。数据库中,通常会针对一个或者几个列建立索引,因此对于少量的特定条件的数据的访问,数据库可以有很高的效率,较低的延迟。由于数据的访问延迟较高,决定了 Hive 不适合在线数据查询。

执行:Hive 中大多数查询的执行是通过 Hadoop 提供的 MapReduce 来实现的。而数据库通常有自己的执行引擎。

执行延迟:Hive 在查询数据的时候,由于没有索引,需要扫描整个表,因此延迟较高。另外一个导致 Hive 执行延迟高的因素是 MapReduce 框架。由于 MapReduce 本身具有较高的延迟,因此在利用 MapReduce 执行 Hive 查询时,也会有较高的延迟。相对的,数据库的执行延迟较低。当然,这个低是有条件的,即数据规模较小,当数据规模大到超过数据库的处理能力的时候, Hive 的并行计算显然能体现出优势。

7 、可扩展性:由于 Hive 是建立在 Hadoop 之上的,因此 Hive 的可扩展性是和 Hadoop 的可扩展性是一致的(世界上最大的 Hadoop 集群在 Yahoo!, 2009 年的规模在 4000 台节点左右)。而数据库由于 ACID 语义的严格限制,扩展行非常有限。目前最先进的并行数据库 oracle 在理论上的扩展能力也只有 100 台左右。

数据规模:由于 Hive 建立在集群上并可以利用 MapReduce 进行并行计算,因此可以支持很大规模的数据;对应的,数据库可以支持的数据规模较小。

“hive组件能提供什么服务”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注编程网网站,小编将为大家输出更多高质量的实用文章!

--结束END--

本文标题: hive组件能提供什么服务

本文链接: https://www.lsjlt.com/news/345987.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • hive组件能提供什么服务
    本篇内容介绍了“hive组件能提供什么服务”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!hive组件可提供的服务:1、把SQL语句转化成ma...
    99+
    2023-07-04
  • internet服务提供商isp提供的信息服务指的是什么
    这篇文章给大家分享的是有关internet服务提供商isp提供的信息服务指的是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。internet服务提供商isp提供的信息服务:1、接入服务,即帮助用户接入Inte...
    99+
    2023-06-14
  • Oracle 12.2提供了什么功能
    这篇文章主要讲解了“Oracle 12.2提供了什么功能”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Oracle 12.2提供了什么功能”吧!Oracle...
    99+
    2024-04-02
  • 因特网能提供的最基本服务是什么
    这篇文章主要为大家展示了“因特网能提供的最基本服务是什么”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“因特网能提供的最基本服务是什么”这篇文章吧。因特网能提供的最基本服务有:1、WWW服务;2、...
    99+
    2023-06-15
  • 云服务器是云供应商提供的什么
    云服务器是一种云供应商提供的软件,可以让您的计算机在云中托管,并提供可扩展的、弹性的计算资源来处理您的业务需求。以下是可能提供的一些云服务: 虚拟桌面(VDI):您可以将计算机托管在云中,以使您的员工、客户或合作伙伴能够轻松访问和共享桌...
    99+
    2023-10-26
    供应商 服务器
  • 弹性云服务器服务提供的主要功能是什么
    弹性云服务器(Elastic Cloud Storage,ECS)是一种云服务器技术,它通过动态调度资源来为用户提供高度可伸缩性、可用性和快速扩展的解决方案。 弹性云服务器服务提供的主要功能包括: 高可用性:提供多台云服务器的并发访问能...
    99+
    2023-10-26
    主要功能 弹性 服务器
  • AWS云服务提供的主要功能模块是什么
    今天小编给大家分享一下AWS云服务提供的主要功能模块是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。AWS 全称Amaz...
    99+
    2023-06-27
  • 亚马逊云提供什么服务器服务
    亚马逊云(Amazon Web Services,AWS)是一家全球领先的云计算服务提供商,提供了多种类型的服务器服务,包括但不限于以下几种: 1.弹性计算云(Elastic Compute Cloud,EC2):EC2是AWS提供的一种...
    99+
    2023-10-27
    亚马逊 服务器
  • 弹性云服务器服务提供的主要功能包括什么和什么
    弹性云服务器(Elastic Cloud Vault)是一种云服务器服务,提供了一种可随时扩展的、可弹性伸缩的计算能力。以下是这些主要功能和提供的服务: 伸缩性:弹性云服务器可以根据负载自动调节资源,以适应用户需求的变化,从而提高资源利...
    99+
    2023-10-26
    主要功能 弹性 服务器
  • 弹性云服务器服务提供的主要功能包括什么
    弹性云服务器服务提供的主要功能如下: 弹性伸缩:云服务器可以在不同规模和应用程序上动态伸缩能力,以适应不同规模和应用程序。该功能可用于处理高峰流量或负载高的情况,并自动调整容量以确保高可用性和快速响应。 容错处理:云服务器采用了高可用性...
    99+
    2023-10-26
    主要功能 弹性 服务器
  • 亚马逊提供什么服务器好
    Amazon Web Services(AWS):AWS是亚马逊云服务提供商,可提供各种规模和功能的云计算服务,包括大型数据库、负载均衡、弹性计算、安全和分析等。 Amazon S3:AWS的S3服务可提供安全和管理的集中式平台,可支持大...
    99+
    2023-10-27
    亚马逊 服务器
  • 阿里云代理提供什么服务
    阿里云代理可以提供多种服务,包括但不限于: 云服务器:提供阿里云主机、容器服务、托管服务等多种服务,帮助用户快速部署、扩容、弹性伸缩,满足用户高性能、可靠性、安全性等方面的需求。 云硬盘:提供高性能、高稳定性、高安全性的云硬盘服务,为用...
    99+
    2023-10-27
    阿里
  • java中反射提供了什么功能
    这篇文章主要介绍了java中反射提供了什么功能,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。1、说明在运行时判断任意一个对象所属的类在运行时构造任意一个类的对象在运行时判断任...
    99+
    2023-06-15
  • 亚马逊能提供哪些服务器服务
    Amazon RDS(Redundant Direct Storage):用于存储数据和配置,提供灵活的存储空间和高可用性。 Amazon EC2(Elastic Compute Cloud):用于多租户环境,可以按照实际需求扩展存储容量...
    99+
    2023-10-27
    亚马逊 服务器
  • 亚马逊提供云服务器服务是什么
    亚马逊提供云服务器服务的目的是为了提高灵活性、可扩展性和可用性,并降低云计算的成本。通过使用AWS提供的云服务器服务,用户可以将自己的应用程序和网站托管在全球各地,以便快速访问和管理其资源。此外,用户还可以利用AWS的安全性和数据隐私功能来...
    99+
    2023-10-27
    亚马逊 服务器
  • 亚马逊能提供哪些服务器
    亚马逊提供了多种类型的服务器,包括: Amazon Elastic Compute Cloud (EC2):这是一种可扩展的云计算服务,可以让用户租用虚拟计算机实例,以运行应用程序。 Amazon Elastic Block Store...
    99+
    2023-10-27
    亚马逊 服务器
  • 阿里云代理提供什么服务器
    首先,阿里云代理提供的服务器具有高可用性和可靠性。阿里云会根据用户的需求来选择不同的服务器和存储资源,确保用户的数据始终处于稳定的状态。此外,阿里云还会采用多重备份和灾备的技术,确保用户数据的安全性。此外,阿里云还会对用户的数据进行监控和管...
    99+
    2023-10-28
    阿里 服务器
  • 阿里云代理商提供什么服务
    技术支持:提供售前技术支持、售后技术支持和产品升级服务,保证客户能够及时、准确地使用阿里云的产品和服务。 价格策略:根据客户的实际需求,提供合理的产品价格策略和价格方案,为客户节省成本。 客户关系管理:建立客户关系管理体系,通过多种渠道为...
    99+
    2023-10-27
    阿里 代理商
  • 阿里云服务器提供什么系统
    什么是阿里云服务器 阿里云服务器是阿里云提供的一种云计算服务,它可以让用户在云端租用虚拟服务器来运行自己的应用程序、网站或者数据库等。阿里云服务器提供了多种操作系统和配置选项,可以满足不同用户的需求。阿里云服务器提供的操作系统阿里云服务器提...
    99+
    2023-12-31
    阿里 服务器 系统
  • 国外云服务器提供商是什么
    国外云服务器提供商可能是 AWS 和 Google Cloud 等云服务器提供商,他们提供的云服务器服务通常与本地硬件资源或技术相结合使用。AWS 是亚马逊公司旗下的云服务器提供商,它提供的服务包括 Amazon Web Services ...
    99+
    2023-10-26
    提供商 国外 服务器
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作