运行impala tpch
1.安装git和下载tpc-h-impala脚步
[root@ip-172-31-34-31 ~]# yum install git
[root@ip-172-31-34-31 ~]# git clone https://github.com/kj-ki/tpc-h-impala
[root@ip-172-31-34-31 ~]# cd tpc-h-impala/
[root@ip-172-31-34-31 tpc-h-impala]# ls
benchmark.conf confs data README.md tpch_benchmark.sh tpch_hive tpch_impala tpch_prepare
2.将tpch dbgen tool生成好的数据移动到指定目录
[root@ip-172-31-34-31 data]# mv /root/tpch_2_17_0/data10g/*.tbl /root/tpc-h-impala/data
3.调整tpc-h-impala脚本
由于涉及到权限问题,调整tpch_prepare_data.sh脚步:将第一行改为如下:
sudo -u hdfs /usr/bin/hadoop fs -mkdir /tpch/
并增加一行:
sudo -u hdfs /usr/bin/hadoop fs -chown root /tpch
4.运行脚步tpch_prepare_data.sh,将数据从本地写到HDFS
[root@ip-172-31-34-31 data]# ./tpch_prepare_data.sh
5.调整tpch_benchmark.sh脚本
由于在运行过程中会在Hive上建表,这些表要对impala可见,需要运行invalidate metadata,在运行impala查询的语句前加入以下一行
$IMPALA_CMD -q 'invalidate metadata' 2>&1
#!/usr/bin/env bash # set up configurations
source benchmark.conf; if [ -e "$LOG_FILE" ]; then
timestamp=`date "+%F-%R" --reference=$LOG_FILE`
backupFile="$LOG_FILE.$timestamp"
mv $LOG_FILE $LOG_DIR/$backupFile
fi echo ""
echo "***********************************************"
echo "* TPC-H benchmark on Impala *"
echo "***********************************************"
echo " "
echo "See $LOG_FILE for more details of query errors."
echo "" trial=
while [ $trial -lt $NUM_OF_TRIALS ]; do
trial=`expr $trial + `
echo "Executing Trial #$trial of $NUM_OF_TRIALS trial(s)..." for query in ${TPCH_QUERIES_ALL[@]}; do
echo "Running query: $query" | tee -a $LOG_FILE echo "Running Hive prepare query: $query" >> $LOG_FILE
$TIME_CMD $HIVE_CMD -f $BASE_DIR/tpch_prepare/${query}.hive >& | tee -a $LOG_FILE | grep '^Time:'
returncode=${PIPESTATUS[]}
if [ $returncode -ne ]; then
echo "ABOVE QUERY FAILED:$returncode"
fi # If you want to use old beta, enable below.
#$TIME_CMD $IMPALA_CMD -q 'refresh' >& | tee -a $LOG_FILE | grep '^Time:'
#returncode=${PIPESTATUS[]}
#if [ $returncode -ne 0 ]; then
# echo "ABOVE QUERY FAILED:$returncode"
#fi echo "Running Impala query: $query" >> $LOG_FILE
$IMPALA_CMD -q 'invalidate metadata' >&
$TIME_CMD $IMPALA_CMD --query_file=$BASE_DIR/tpch_impala/${query}.impala >& | tee -a $LOG_FILE | grep '^Time:'
returncode=${PIPESTATUS[]}
if [ $returncode -ne ]; then
echo "ABOVE QUERY FAILED:$returncode"
fi #echo "Running Hive query: $query" >> $LOG_FILE
#$TIME_CMD $HIVE_CMD -f $BASE_DIR/tpch_hive/${query}.hive >& | tee -a $LOG_FILE | grep '^Time:'
#returncode=${PIPESTATUS[]}
#if [ $returncode -ne 0 ]; then
# echo "ABOVE QUERY FAILED:$returncode"
#fi
done done # TRIAL
echo "***********************************************"
6.修改配置文件benchmark.conf,使指向正确的impala master:
由于在impala-shell的集群上没有配置impala-daemon,所以需要这个修改
# impala
IMPALA_CMD="/usr/bin/impala-shell --impalad=172.31.25.244:21000"
7.mr,hive,impala
注意,要运行impala,hive必须先启动MR
8.运行benmark脚本
[root@ip-172-31-34-31 tpc-h-impala]# pwd
/root/tpc-h-impala
[root@ip-172-31-34-31 tpc-h-impala]# ./tpch_benchmark.sh
运行impala tpch的更多相关文章
- 为集群配置Impala和Mapreduce
FROM: http://www.importnew.com/5881.html -- 扫描加关注,微信号: importnew -- 原文链接: Cloudera 翻译: ImportNew.com ...
- Impala SQL 语言元素(翻译)[转载]
原 Impala SQL 语言元素(翻译) 本文来源于http://my.oschina.net/weiqingbin/blog/189413#OSC_h2_2 摘要 http://www.cloud ...
- Impala SQL 语言元素(翻译)
摘要: http://www.cloudera.com/content/cloudera-content/cloudera-docs/Impala/latest/Installing-and-Usin ...
- 学习Hive和Impala必看经典解析
Hive和Impala作为数据查询工具,它们是怎样来查询数据的呢?与Impala和Hive进行交互,我们有哪些工具可以使用呢? 我们首先明确Hive和Impala分别提供了对应查询的接口: (1)命令 ...
- Llama-impala on yarn的中间协调服务
本文基于CDH发行版下的Hadoop Yarn和Impala 早期的Impala版本号中.为了使用Impala.我们一般会在以Client/Server的结构在各个集群节点启动impala-serve ...
- Cloudera Impala需求
Cloudera Impala需求 为了达到预期的效果,Impala依赖于软件.硬件的可用性,以及下面章节描述的配置. 继续阅读: 支持的操作系统 支持的Hadoop发布 Hive Metastore ...
- Hadoop/Spark生态圈里的新气象
令人惊讶的是,Hadoop在短短一年的时间里被重新定义.让我们看看这个火爆生态圈的所有主要部分,以及它们各自具有的意义. 对于Hadoop你需要了解的最重要的事情就是 ,它不再是原来的Hadoop. ...
- TPCH Benchmark with Impala
1. 生成测试数据在TPC-H的官网http://www.tpc.org/tpch/上下载dbgen工具,生成数据http://www.tpc.org/tpch/spec/tpch_2_17_0.zi ...
- CIB Training Scripts For TPC-H Benchmark
http://52.11.56.155:7180/http://52.11.56.155:8888/ impala-shell -i 172.31.25.244 sudo -u hdfs hdfs d ...
随机推荐
- [SAP ABAP开发技术总结]ABAP调优——Open SQL优化
声明:原创作品,转载时请注明文章来自SAP师太技术博客( 博/客/园www.cnblogs.com):www.cnblogs.com/jiangzhengjun,并以超链接形式标明文章原始出处,否则将 ...
- 《与小卡特一起学Python》 Code6 注释
"""这是一个包括多行的注释, 使用了三重引号字符串. 这不完全是注释,不过也可以相当于注释. """ #***************** ...
- ASP.NET MVC 提示there was error getting the type的解决方法
在MVC中根据模型类创建控制器时提示there was error getting the type的原因是你新建的这个类模型文件后没有重新生成,先重新生成项目就可以添加控制器了.
- jquery tmpl 详解
官方解释对该插件的说明:将匹配的第一个元素作为模板,render指定的数据,签名如下: .tmpl([data,][options]) 其中参数data的用途很明显:用于render的数据,可以是任意 ...
- codeigniter nginx配置
转载:http://www.nginx.cn/1134.html server{ listen 80; server_name www.ci.oa.com; access_log /usr/local ...
- Jenkins+ANT+SVN快速搭建持续集成环境
伟大的语言都从helloworld开始,这里我们用Jenkins+ANT+SVN来搭建这一套持续集成环境. 环境准备: 一台已经配置好Jenkins和Ant的机器. 项目准备: 用Ecplise建立一 ...
- SQLite 事务
SQLite数据库是支持事务的,事务的特性可以保证让一系列的操作要么全部完成要么一个都不会完成. 一.调用SQLDatabase的beginTransaction()开起一个事务,当事务处理完成,调用 ...
- IO流中SequenceInputStream类
SequenceInputStream类: 不断的读取InputStream流对象,对于使用Enumeration对象的情况,该类将持续读取所有InputStream对象中的内容,直到到达最后一个In ...
- RxAndroid/java小记
Rxandroid 作为一个在设计模式中能把MVP发挥的淋漓尽致的框架不去学习感觉真的对不起自己,然后也学点新东西吧,响应式编程,MVP观察者模式,然后使用RxAndroid使我们自己的代码更加简洁 ...
- eclipse不显示Android SDK Manager标签
新版的eclipse配置好android开发环境后没有显示在window菜单里显示Android SDK Manager,也没有在工具栏里出现android的工具图标.但可以通过android sdk ...