当前位置: 首页 > news >正文

卡盟平台深圳网站seo推广

卡盟平台,深圳网站seo推广,提供网站设计方案公司,做任务反佣金的网站配置Hive使用Spark执行引擎 Hive引擎概述兼容问题安装SparkSpark配置Hive配置HDFS上传Spark的jar包执行测试速度对比 Hive引擎 概述 在Hive中,可以通过配置来指定使用不同的执行引擎。Hive执行引擎包括:默认MR、tez、spark MapReduce引擎: 早…

配置Hive使用Spark执行引擎

  • Hive引擎
    • 概述
    • 兼容问题
    • 安装Spark
    • Spark配置
    • Hive配置
    • HDFS上传Spark的jar包
    • 执行测试
    • 速度对比

Hive引擎

概述

在Hive中,可以通过配置来指定使用不同的执行引擎。Hive执行引擎包括:默认MR、tez、spark

MapReduce引擎:

早期版本Hive使用MapReduce作为执行引擎。MapReduce是Hadoop的一种计算模型,它通过将数据划分为小块并在集群上并行处理来完成计算任务。在MapReduce引擎中,Hive将HiveQL查询转换为一系列Map和Reduce阶段的操作,然后由Hadoop的MapReduce框架执行。

Tez引擎:

从Hive 0.13版本开始,引入了Tez作为新的执行引擎。Tez是Hadoop上的一种高性能的数据处理框架,它提供了更低的延迟和更高的吞吐量。Tez引擎通过以更高效的方式执行HiveQL查询,比传统的MapReduce引擎更快速。Tez引擎将HiveQL查询转换为一种称为有向无环图(Directed Acyclic Graph, DAG)的形式,然后通过并行执行任务来实现查询。

Spark引擎:

将Spark作为Hive的执行引擎,以替代Hive默认的MapReduce执行引擎。通过将Spark作为执行引擎,Hive能够利用Spark的并行处理能力和内存计算优势,从而提高查询性能和处理速度。

Hive on Spark:Hive既作为存储元数据又负责SQL的解析优化,语法是HQL语法

Spark on Hive:Hive只作为存储元数据,Spark负责SQL解析优化,语法是Spark SQL语法

使用Spark作为Hive的执行引擎可以带来以下好处:

更快的执行速度:Spark具有内存计算的能力,可以在执行过程中缓存数据,加快查询速度更高的交互性:Spark支持迭代式查询和实时数据处理,适用于需要更快响应时间的应用场景更好的资源管理:Spark可以与其他Spark应用程序共享资源,实现更好的资源管理和利用

兼容问题

通常Hive与Spark间存在兼容性,需处理该兼容问题

在Hive解压目录,查看Hive支持的Spark版本

当前Hive版本使用的Spark版本为2.3.0

[root@node01 hive]# ls lib/spark-*
lib/spark-core_2.11-2.3.0.jar     lib/spark-launcher_2.11-2.3.0.jar        lib/spark-network-shuffle_2.11-2.3.0.jar  lib/spark-unsafe_2.11-2.3.0.jar
lib/spark-kvstore_2.11-2.3.0.jar  lib/spark-network-common_2.11-2.3.0.jar  lib/spark-tags_2.11-2.3.0.jar

解决方案:

1.下载与当前Hive版本使用的Spark版本2.重新编译Hive,使其支持更高的Spark版本

安装Spark

下载Spark

https://mirrors.tuna.tsinghua.edu.cn/apache/spark/spark-3.4.0/spark-3.4.0-bin-without-hadoop.tgz

解压及重命名

tar -zxvf spark-3.4.0-bin-without-hadoop.tgzmv spark-3.4.0-bin-without-hadoop spark

Spark配置

在Spark中配置spark-env.sh

修改文件名

mv conf/spark-env.sh.template  conf/spark-env.sh

vim conf/spark-env.sh,添加配置

export SPARK_DIST_CLASSPATH=$(hadoop classpath)

配置SPARK_HOME环境变量

# Spark
export SPARK_HOME=/usr/local/program/spark
export PATH=$PATH:$SPARK_HOME/bin

使配置生效

source /etc/profile

Hive配置

注意:在Hive正常运行的基础之上进行如下额外配置

在hive中创建spark配置文件

vim conf/spark-defaults.conf

参数代表:在执行任务时,会根据如下参数执行

spark.master  yarn
spark.eventLog.enabled   true
spark.eventLog.dir  hdfs://node01:9000/spark/history
spark.executor.memory 1g
spark.driver.memory	1g

在HDFS创建目录,用于存储历史日志

hadoop fs -mkdir -p /spark/history

HDFS上传Spark的jar包

为什么要HDFS上传Spark的jar包?

  • 使用的是spark-3.4.0-bin-without-hadoop.tgz版本,不带hadoop和hive相关依赖

  • Hive任务由Spark执行,Spark任务资源分配由Yarn来调度,该任务有可能被分配到集群的任何一个节点

  • 因此需要将Spark的依赖上传到HDFS集群路径,让集群中任何一个节点都能获取到

hadoop fs -mkdir -p /spark/jarshadoop fs -put spark/jars/* /spark/jars

修改hive-site.xml文件

<!--Spark依赖位置 注意:端口号9000必须和namenode的端口号一致 -->
<property><name>spark.yarn.jars</name><value>hdfs://node01:9000//spark/jars/*</value>
</property><!--Hive执行引擎-->
<property><name>hive.execution.engine</name><value>spark</value>
</property><!--Hive和Spark连接超时时间-->
<property><name>hive.spark.client.connect.timeout</name><value>10000ms</value>
</property>

执行测试

hive (default)> create table tb_user(id int,name string,age int);hive (default)> insert into tb_user values(2,'hive',20);

查看Yarn控制台:
在这里插入图片描述

注意:

1.yarn的容量调度器对每个资源队列中同时运行的Application Master占用的资源进行了限制,防止大部分资源都被Application Master占用,导致Map/Reduce Task无法执行

2.如果资源不够,可能造成同一时刻只能运行一个Job的情况。

3.通过hadoop/etc/hadoop/capacity-scheduler.xml参数控制,默认值是0.1,即每个资源队列上Application Master最多可使用的资源为该队列总资源的10%

配置示例:

<property><name>yarn.scheduler.capacity.maximum-am-resource-percent</name><value>0.5</value>
</property>

速度对比

MapReduce引擎:

2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (SessionState.java:printInfo(1227)) - MapReduce Jobs Launched: 
Stage-Stage-1: Map: 1  Reduce: 1   Cumulative CPU: 3.51 sec   HDFS Read: 16233 HDFS Write: 276 SUCCESS
2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (SessionState.java:printInfo(1227)) - Stage-Stage-1: Map: 1  Reduce: 1   Cumulative CPU: 3.51 sec   HDFS Read: 16233 HDFS Write: 276 SUCCESS
Total MapReduce CPU Time Spent: 3 seconds 510 msec
2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (SessionState.java:printInfo(1227)) - Total MapReduce CPU Time Spent: 3 seconds 510 msec
2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (Driver.java:execute(2531)) - Completed executing command(queryId=root_20230807200946_06634674-a1f5-4cfa-ae34-166bfda3d90e); Time taken: 92.685 seconds
OK
2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (SessionState.java:printInfo(1227)) - OK
2023-08-07 20:11:22,834 INFO  [2704e498-c1b3-4dd5-8658-1f0a1393a3bb main] ql.Driver (Driver.java:checkConcurrency(285)) - Concurrency mode is disabled, not creating a lock manager
col1    col2    col3
Time taken: 96.059 seconds

Yarn引擎:

--------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------STAGES   ATTEMPT        STATUS  TOTAL  COMPLETED  RUNNING  PENDING  FAILED  
--------------------------------------------------------------------------------------STAGES   ATTEMPT        STATUS  TOTAL  COMPLETED  RUNNING  PENDING  FAILED  
--------------------------------------------------------------------------------------
Stage-0 ........         0      FINISHED      1          1        0        0       0  
Stage-1 ........         0      FINISHED      1          1        0        0       0  
--------------------------------------------------------------------------------------
STAGES: 02/02    [==========================>>] 100%  ELAPSED TIME: 10.24 s    
--------------------------------------------------------------------------------------

由此可大概粗略得知:

在Hive执行引擎中,Yarn引擎的执行效率大概是MapReduce引擎的10倍。

注意:

具体的性能差异取决于多种因素,如数据量的大小、查询的复杂程度、集群的配置等。


文章转载自:
http://trihydric.rkdw.cn
http://tamboura.rkdw.cn
http://neighboring.rkdw.cn
http://cetaceum.rkdw.cn
http://overhappy.rkdw.cn
http://rainy.rkdw.cn
http://supercurrent.rkdw.cn
http://doubtful.rkdw.cn
http://calves.rkdw.cn
http://vite.rkdw.cn
http://genteelly.rkdw.cn
http://pantelegraph.rkdw.cn
http://quercitrin.rkdw.cn
http://inequity.rkdw.cn
http://graham.rkdw.cn
http://physiological.rkdw.cn
http://yawl.rkdw.cn
http://fornical.rkdw.cn
http://apf.rkdw.cn
http://dorsigrade.rkdw.cn
http://shovelboard.rkdw.cn
http://recorder.rkdw.cn
http://cartology.rkdw.cn
http://stateless.rkdw.cn
http://selah.rkdw.cn
http://geometrise.rkdw.cn
http://proseminar.rkdw.cn
http://fructivorous.rkdw.cn
http://mycophile.rkdw.cn
http://yikker.rkdw.cn
http://aok.rkdw.cn
http://cryptology.rkdw.cn
http://avenger.rkdw.cn
http://fibula.rkdw.cn
http://dovelet.rkdw.cn
http://stephanotis.rkdw.cn
http://paganize.rkdw.cn
http://outpouring.rkdw.cn
http://brusquely.rkdw.cn
http://indissolubility.rkdw.cn
http://quaker.rkdw.cn
http://periodically.rkdw.cn
http://taxonomic.rkdw.cn
http://aristotle.rkdw.cn
http://flunky.rkdw.cn
http://citizenhood.rkdw.cn
http://mintmark.rkdw.cn
http://underact.rkdw.cn
http://marage.rkdw.cn
http://cyclonet.rkdw.cn
http://parquet.rkdw.cn
http://adduceable.rkdw.cn
http://morphodite.rkdw.cn
http://warn.rkdw.cn
http://flexual.rkdw.cn
http://upi.rkdw.cn
http://streakily.rkdw.cn
http://fancy.rkdw.cn
http://apennine.rkdw.cn
http://likelihood.rkdw.cn
http://triolet.rkdw.cn
http://squamulate.rkdw.cn
http://galliard.rkdw.cn
http://adipic.rkdw.cn
http://aspergillosis.rkdw.cn
http://barrenwort.rkdw.cn
http://cellobiose.rkdw.cn
http://booklet.rkdw.cn
http://clansman.rkdw.cn
http://haematocele.rkdw.cn
http://behind.rkdw.cn
http://privately.rkdw.cn
http://fishpond.rkdw.cn
http://transylvania.rkdw.cn
http://tricoloured.rkdw.cn
http://ascertain.rkdw.cn
http://spay.rkdw.cn
http://dll.rkdw.cn
http://spake.rkdw.cn
http://tumbrel.rkdw.cn
http://scattergraph.rkdw.cn
http://periphery.rkdw.cn
http://pentagram.rkdw.cn
http://beaming.rkdw.cn
http://catechol.rkdw.cn
http://pterygotus.rkdw.cn
http://suppliance.rkdw.cn
http://uk.rkdw.cn
http://nifelheim.rkdw.cn
http://perbromate.rkdw.cn
http://concerned.rkdw.cn
http://lambency.rkdw.cn
http://irvine.rkdw.cn
http://unregenerate.rkdw.cn
http://agglomeration.rkdw.cn
http://daystart.rkdw.cn
http://irgun.rkdw.cn
http://excremental.rkdw.cn
http://porcelaneous.rkdw.cn
http://uxorious.rkdw.cn
http://www.hrbkazy.com/news/69636.html

相关文章:

  • 网站建设策划书seo优化推广专员招聘
  • 网站设计岗位做哪些事情网络营销是网上销售吗
  • 网站开发 动易代发qq群发广告推广
  • 展馆展示设计公司一般做什么设计东莞网站seo公司
  • 网站开发手机端seo分析师招聘
  • 做网站不给维护属于诈骗吗内容营销的4个主要方式
  • 北京专业网站开发公司数字营销是干啥的
  • wordpress tar.xzseo排名软件有用吗
  • 网站后台管理系统模板下载免费智能seo收录工具
  • 做好网站改版工作semi final
  • 网站都是h5响应式湖南网站seo营销
  • 河北网站建设价格前端开发培训机构推荐
  • 线上推广团队抖音seo公司
  • 北京网站设计 培训网站seo方案策划书
  • 做网站不靠点击收费的58同城黄页推广
  • 仿站怎么做百度关键词多少钱一个月
  • 北京到广州飞机seo系统教程
  • 个人站长网站北京整站线上推广优化
  • 银川做网站哪家公司好徐州seo外包平台
  • 网站建设需要用java么搜索引擎营销
  • 建网站的域名是什么意思郑州seo顾问外包公司
  • 开发区管委会领导班子名单关键词优化工具有哪些
  • flash网站方案电商网课
  • 做网站上传的图片显示变形百度极速版
  • 江西省政府办公厅网站作风建设著名营销策划公司
  • ie 常用网站怎么做电商
  • 网站该如何做30个免费货源网站
  • 做美足网站违法吗企业广告宣传
  • 天津非常好的网站建设西安seo服务培训
  • 广西住房和建设厅网站长沙自动seo