hive
bin=`dirname "$0"`
bin=`cd "$bin"; pwd`
//$0 命令行的第一个参数,代表命令本身(当前Shell程序的文件名)
//dirname $0,获取当前Shell程序的路径(返回命令的路径)
//
. "$bin"/hive-config.sh //运行hive-config.sh
if [ "$SERVICE" = "" ] ; then
if [ "$HELP" = "_help" ] ; then
SERVICE="help"
else
SERVICE="cli" //默认是cli
fi
fi
hive-config.sh :
this="$0"
while [ -h "$this" ]; do
ls=`ls -ld "$this"`
link=`expr "$ls" : '.*-> \(.*\)$'`
if expr "$link" : '.*/.*' > /dev/null; then
this="$link"
else
this=`dirname "$this"`/"$link"
fi
done
# convert relative path to absolute path
bin=`dirname "$this"`
script=`basename "$this"`
bin=`cd "$bin"; pwd`
this="$bin/$script"
basename
从文件名中去掉路径信息, 只打印出文件名. 结构 basename $0 可以让脚本知道它自己的名字, 也就是, 它被调用的名字. 可以用来显示用法信息, 比如如果你调用脚本的时候缺少参数, 可以使用如下语句:
echo "Usage: `basename $0` arg1 arg2 ... argn"
dirname
从带路径的文件名中去掉文件名, 只打印出路径信息.
basename 和 dirname 可以操作任意字符串. 参数可以不是一个真正存在的文件, 甚至可以不是一个文件名
# the root of the Hadoop installation
export HIVE_HOME=`dirname "$bin"`
# Allow alternate conf dir location.
HIVE_CONF_DIR="${HIVE_CONF_DIR:-$HIVE_HOME/conf}"
export HADOOP_HEAPSIZE=${HADOOP_HEAPSIZE:-256}
// ${HADOOP_HEAPSIZE:-256} 若HADOOP_HEAPSIZE为空或未设置,则用256代替。
${parameter:-word} 若parameter为空或未设置,则用word代替parameter进行替换,parameter的值不变。 变量替换。
hive的脚本hive-0.6.0/bin/hive会调用运行bin/hive-config.sh、bin/ext/、bin/ext/util下面的脚本,最终会调用hadoop-0.20.2/conf/hadoop-env.sh、hadoop-0.20.2/bin/hadoop-config.sh、hadoop-0.20.2/conf/hadoop。
所以需要在.bashrc或者bin/hive-config.sh里面设置HADOOP_HOME并export。
跟踪进入hadoop的脚本hadoop-0.20.2/bin/hadoop
exec /usr//bin/java
-Dhadoop.log.dir=/home/tianzhao/hive/hadoop-0.20.2/bin/../logs -Dhadoop.log.file=hadoop.log
-Dhadoop.home.dir=/home/tianzhao/hive/hadoop-0.20.2/bin/.. -Dhadoop.id.str= -Dhadoop.root.logger=INFO,console
-Djava.library.path=/home/tianzhao/hive/hadoop-0.20.2/bin/../lib/native/Linux-i386-32 -Dhadoop.policy.file=hadoop-policy.xml
org.apache.hadoop.util.RunJar
/home/tianzhao/hive/hive-0.6.0/lib/hive-cli-0.6.0.jar
org.apache.hadoop.hive.cli.CliDriver
分享到:
相关推荐
在Python中编写Hive脚本主要是为了方便地与Hadoop HIVE数据仓库进行交互,这样可以在数据分析和机器学习流程中无缝地集成大数据处理步骤。以下将详细介绍如何在Python环境中执行Hive查询和管理Hive脚本。 1. **直接...
本文将深入探讨如何在执行Hive脚本时捕获并处理异常,以及如何利用shell命令"echo $"来检查脚本的退出状态,以便更好地管理和优化Hive作业。 首先,我们来看标题“捕获hive脚本异常:echo $?”。在Linux或Unix系统...
### Hive脚本任务参数优化配置详解 #### 一、概述 在大数据处理场景中,Apache Hive作为一款广泛使用的数据仓库工具,提供了SQL查询接口来处理存储在Hadoop文件系统中的结构化数据。为了提高Hive查询性能,合理的...
将Hive脚本转换为MySQL语句通常是为了在关系型数据库中实现类似的功能。这可能涉及对HQL的特定特性进行映射,比如Hive的分桶、分区、UDF(用户定义函数)等,这些在MySQL中可能有不同的实现方式。转换过程需要对两种...
hive安装依赖以及启动脚本 文件包含如下: 01_mysql-community-common-5.7.29-1.el7.x86_64.rpm 02_mysql-community-libs-5.7.29-1.el7.x86_64.rpm 03_mysql-community-libs-compat-5.7.29-1.el7.x86_64.rpm 04_...
从CSV文件自动生成Hive脚本。 1.脚本将csv文件复制到Hadoop文件系统。 2.生成CREATE语句以创建表。 3.在与csv文件夹相同的文件夹中生成.hive文件,并使用所有合并文件生成run.sh。 因此,只需切换到.hive脚本所在的...
- **现象**:执行Hive脚本时卡住或报错,检查发现10200端口没有相关进程。 - **解决步骤**: - 启动`timelineserver`服务: ```shell yarn-daemon.sh start timelineserver ``` - 再次检查10200端口是否有...
- **Jar**: 类似于Hadoop Jar,Hive也支持通过Jar命令执行Hive脚本或程序。 - **Metadata**: 默认情况下,元数据服务与Hive运行在同一进程中。但也可以通过特定配置让元数据服务以单独的进程运行,提高系统的稳定性...
3. **表创建**:根据TPCDS的规格,编写Hive脚本创建相应的表结构,包括分区表、桶表等。 4. **数据加载**:将生成的数据加载到Hive表中,可以使用`LOAD DATA INPATH`或`INSERT OVERWRITE`命令。 5. **查询编译**:将...
6. **定时任务调度**:学习如何设置Cron或类似的调度工具,实现Hive脚本的自动运行。 7. **性能优化**:探讨如何通过调整Hive的执行参数、使用桶表、优化查询语句等方式提升查询性能。 8. **数据可视化与报告**:...
每个案例都会详细解释数据处理逻辑,以及如何编写相应的Hive脚本来实现目标。 除了基础和进阶知识,手册还将讨论Hive与其他大数据工具的集成,如Hadoop MapReduce、Spark、HBase等。这将帮助读者理解Hive在大数据...
至于Hive程序的入口,可以通过$HIVE_HOME/bin/hive脚本进入客户端执行HQL语句,或者使用$HIVE_HOME/bin/hive-e命令行方式直接执行HQL语句,还可以通过$HIVE_HOME/bin/hive-f指定执行一个包含HQL语句的文件。...
在Hadoop集群中进行部署Hive时需要部署Mysql、Hive、Tez引擎、配置环境变量等等,在这整理了一份一键部署的脚本,希望可以帮助到大家,也可参考文章【大数据】Hadoop在呼唤Hive(附一键部署Hive脚本)...
用户可以通过Hive脚本处理Hadoop集群中的数据,完成数据清洗、格式转换等任务,然后将处理后的数据加载到新的表中,用于后续的分析和报表生成。 在Hadoop生态系统中,Hive扮演着数据仓库的重要角色,为企业的大数据...
HIVE_HOME='/opt/module/cdh-5.3.6-ha/hive-0.13.1-cdh5.3.6' ####### execute hive ###### sql=$(cat <<!EOF use db_01; drop table dept_nopart; create table IF NOT EXISTS dept_part( deptno int, dname ...
《Hive Testbench与TPCDS:大数据性能测试与99条SQL脚本解析》 在大数据处理领域,Hive作为一个分布式数据仓库系统,被广泛应用于海量数据的存储和分析。而TPCDS(Transaction Processing Performance Council ...
为hive-0.11半自动安装脚本 使用前请先阅读本脚本注释部分 已有hadoop环境可使用本脚本 因为初识shell脚本 望大虾勿喷 如有不吝赐教者 不胜感激
8. **libexec**:辅助脚本,如初始化Hive脚本和HQL转换工具。 9. **scripts**:一些额外的脚本,用于创建和管理Hive表。 10. **test**:单元测试和集成测试用例,用于验证Hive的功能和性能。 在部署Hive时,通常...
2. **Hive脚本**: - `hive`:启动Hive命令行界面。 - `show databases`:列出所有可用的数据库。 - `use 数据库名字`:选择要使用的数据库。 - `show tables`:查看当前数据库中的所有表。 - `desc 表名`:...