spark SQL(六)性能调整
spark SQL 性能调整
内存中缓存的配置可以使用上面的setConf方法SparkSession或SET key=value使用SQL 运行 命令来完成。
属性名称 | 默认 | 含义 |
spark.sql.inMemoryColumnarStorage.compressed | true | 设置为true时,Spark SQL将根据数据的统计信息自动为每列选择压缩编解码器。 |
spark.sql.inMemoryColumnarStorage.batchSize | 10000 | 控制列式高速缓存的批量大小。较大的批量大小可以提高内存利用率和压缩率,但是在缓存数据时会面临OOM风险。 |
属性名称 | 默认 | 含义 |
spark.sql.files.maxPartitionBytes | 134217728(128 MB) | 读取文件时打包到单个分区的最大字节数。 |
spark.sql.files.openCostInBytes | 4194304(4 MB) | 可以同时扫描以字节数量度量的打开文件的估计成本。将多个文件放入分区时使用。 最好是高估,那么小文件的分区会比大文件的分区快(这是首先安排的)。 |
spark.sql.broadcastTimeout | 300 | 广播连接中的广播等待时间以秒为单位超时 |
spark.sql.autoBroadcastJoinThreshold | 10485760(10 MB) | 配置在执行连接时将广播到所有工作节点的表的最大大小(以字节为单位)。通过将 此值设置为-1,可以禁用广播。请注意,目前只有ANALYZE TABLE <tableName> COMPUTE STATISTICS noscan运行命令的Hive Metastore表才支持统计信息 。 |
spark.sql.shuffle.partitions | 200 | 配置混洗连接或聚合数据时要使用的分区数。 |
这里实现的Thrift JDBC / ODBC服务器对应HiveServer2
于Hive
1.2.1。您可以使用Spark或Hive 1.2.1附带的beeline脚本测试JDBC服务器。 要启动JDBC / ODBC服务器,请在Spark目录中运行以下命令:
./sbin/start-thriftserver.sh
该脚本接受所有的bin/spark-submit
命令行选项,还有一个--hiveconf
选项来指定Hive属性。您可以运行./sbin/start-thriftserver.sh
所有可用选项的完整列表。默认情况下,服务器侦听localhost:10000。你可以通过两个环境变量覆盖这个行为,即:
--help
export HIVE_SERVER2_THRIFT_PORT=<listening-port>
export HIVE_SERVER2_THRIFT_BIND_HOST=<listening-host>
./sbin/start-thriftserver.sh \
--master <master-uri> \
...
或系统属性:
./sbin/start-thriftserver.sh \
--hiveconf hive.server2.thrift.port=<listening-port> \
--hiveconf hive.server2.thrift.bind.host=<listening-host> \
--master <master-uri>
...
现在,您可以使用直线来测试Thrift JDBC / ODBC服务器:
./bin/beeline
使用以下命令直接连接到JDBC / ODBC服务器:
beeline> !connect jdbc:hive2://localhost:10000
直线会问你一个用户名和密码。在非安全模式下,只需在您的机器上输入用户名和密码即可。对于安全模式,请按照直线文档中的 说明进行操作。
hive 的结构是通过将您做hive-site.xml
,core-site.xml
和hdfs-site.xml
文件conf/
。
您也可以使用Hive附带的直线脚本。
Thrift JDBC服务器还支持通过HTTP传输发送节俭的RPC消息。使用以下设置启用HTTP模式作为系统属性或在hive-site.xml
文件中conf/
:
hive.server2.transport.mode - Set this to value: http
hive.server2.thrift.http.port - HTTP port number to listen on; default is 10001
hive.server2.http.endpoint - HTTP endpoint; default is cliservice
要测试,使用直线连接到HTTP模式下的JDBC / ODBC服务器:
beeline> !connect jdbc:hive2://<host>:<port>/<database>?hive.server2.transport.mode=http;hive.server2.thrift.http.path=<http_endpoint>
5, 运行Spark SQL CLI
要启动Spark SQL CLI,请在Spark目录中运行以下命令:
./bin/spark-sql
hive的结构是通过将您做hive-site.xml
,core-site.xml
和hdfs-site.xml
文件conf/
。您可以运行./bin/spark-sql
所有可用选项的完整列表。
--help
spark SQL(六)性能调整的更多相关文章
- oracle管理优化必备语句以及oracle SQL语句性能调整
本文转自http://www.dataguru.cn/article-3302-1.html oracle数据库管理优化必备语句: 1. SELECT T.START_TIME,T.USED_UBLK ...
- 自适应查询执行:在运行时提升Spark SQL执行性能
前言 Catalyst是Spark SQL核心优化器,早期主要基于规则的优化器RBO,后期又引入基于代价进行优化的CBO.但是在这些版本中,Spark SQL执行计划一旦确定就不会改变.由于缺乏或者不 ...
- SQL语句性能调整原则
一.问题的提出 在应用系统开发初期,由于开发数据库数据比较少,对于查询SQL语句,复杂视图的的编写等体会不出SQL语句各种写法的性能优劣,但是如果将应用系统提交实际应用后,随着数据库中数据的增加,系统 ...
- spark sql 的性能调优
Caching Data in Memory 其他调优参数
- Spark SQL概念学习系列之性能调优
不多说,直接上干货! 性能调优 Caching Data In Memory Spark SQL可以通过调用sqlContext.cacheTable("tableName") 或 ...
- Spark学习之Spark SQL
一.简介 Spark SQL 提供了以下三大功能. (1) Spark SQL 可以从各种结构化数据源(例如 JSON.Hive.Parquet 等)中读取数据. (2) Spark SQL 不仅支持 ...
- Spark SQL 官方文档-中文翻译
Spark SQL 官方文档-中文翻译 Spark版本:Spark 1.5.2 转载请注明出处:http://www.cnblogs.com/BYRans/ 1 概述(Overview) 2 Data ...
- Spark SQL 之 Performance Tuning & Distributed SQL Engine
Spark SQL 之 Performance Tuning & Distributed SQL Engine 转载请注明出处:http://www.cnblogs.com/BYRans/ 缓 ...
- Spark SQL原理及实战
一.Spark SQL的发展 1.spark SQL和shark SparkSQL的前身是Shark,给熟悉RDBMS但又不理解MapReduce的技术人员提供快速上手的工具,Hive应运而生,它是当 ...
- Oracle性能调整ASH,AWR,ADDM
ASH (Active Session History)ASH以V$SESSION为基础,每秒采样一次,记录活动会话等待的事件.不活动的会话不会采样,采样工作由新引入的后台进程MMNL来完成.ASH ...
随机推荐
- java内置锁实现锁住代码块方案(同一个对象或锁住整个类.class)
我们看一个例子: class Demo { public synchronized void test() { System.out.println("test方法开始执行,当前线程为:&q ...
- Group by后加rollup、cube、Grouping_Sets的用法区别
一.相关分析 通常当聚合率和数据量没有大于一定程度时,对于不涉及Rollup.Cube.Grouping_Sets这三种操作的聚合很少出现GC问题.对于Rollup.Cube.Grouping_Set ...
- 使用lua+redis解决发多张券的并发问题
前言 公司有一个发券的接口有并发安全问题,下面列出这个问题和解决这个问题的方式. 业务描述 这个接口的作用是给会员发多张券码.涉及到4张主体,分别是:用户,券,券码,用户领取记录. 下面是改造前的伪代 ...
- 【SpringBoot1.x】RestfulCRUD
SpringBoot1.x RestfulCRUD 文章源码 添加资源 将所有的静态资源都添加到 src/main/resources/static 文件夹下,所有的模版资源都添加到 src/main ...
- 二进制格式 PLY 模型文件的读取与渲染
PLY 文件头部信息: ply format binary_little_endian 1.0 comment VCGLIB generated element vertex 13469 proper ...
- Java开发手册之异常日志
1.捕获异常的时候,有一种特殊情况,就是方法体内部所抛出的并不是Exception而是Error,这个时候,上层方法捕获Exception就会失败.所以在某些场合需要捕获更高一级别的Throwable ...
- awk中的if ,else
local pct="$(awk -v one="$1" -v two="$2" 'BEGIN{ if (two > 0) { printf & ...
- 【Linux】linux rinetd 端口转发部署
linux下简单好用的工具rinetd,实现端口映射/转发/重定向 Rinetd是为在一个Unix和Linux操作系统中为重定向传输控制协议(TCP)连接的一个工具.Rinetd是单一过程的服务器,它 ...
- AmoebaNet:经费在燃烧,谷歌提出基于aging evolution的神经网络搜索 | AAAI 2019
论文提出aging evolution,一个锦标赛选择的变种来优化进化算法,在NASNet搜索空间上,对比强化学习和随机搜索,该算法足够简洁,而且能够更快地搜索到更高质量的模型,论文搜索出的Amoeb ...
- 技术基础 | Apache Cassandra 4.0基准测试
Apache Cassandra 4.0已经发布了Beta版,这是第一个支持JDK 11及更高JDK版本的Cassandra版本. 时延对于Apache Cassandra用户来说是个显而易见的关 ...