`
无尘道长
  • 浏览: 160780 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

获取hive日志,停止hive

    博客分类:
  • hive
阅读更多

    获取hive日志比较麻烦,通常的做法是执行shell命令获取日志,但是这样有一些问题,比如:输出的结果需要程序解析等,可以改进hive,采用jdbc的方式执行hive sql,并且把输出到控制台的日志保存到redis,其中kill job的命令日志用不同的key缓存到redis,如此可很方便获取查询结果、日志、kill命令。

   具体实现方式如下:

   修改hive-exec-0.12.0的如下几个类:

   1、org.apache.hadoop.hive.ql.Driver

   2、org.apache.hadoop.hive.ql.DriverContext

    3、org.apache.hadoop.hive.ql.exec.mr.ExecDriver

    4、org.apache.hadoop.hive.ql.exec.mr.HadoopJobExecHelper

    5、org.apache.hadoop.hive.ql.exec.mr.MapRedTask

    在Driver的execute()方法开始执行时以sql的MD5值作为key缓存到redis,redis的数据结构采用list,并且在DriverContext中增加一个sqlMD5的属性,通过driver上下文对象在后续的ExecDriver、HadoopJobExecHelper和MapRedTask中实现共享。

   在执行sql和生成的MR过程中参数的日志不断存入到redis,页面可通过ajax的方式每隔1秒从应用服务端获取1次hive日志,应用服务端根据sql的MD5值从redis读取日志信息,读一条删一条。

   可通过sql的MD5值加一个后缀的方式单独缓存kill MR job的cmd命令,这样业务应用可以很方便的获取到kill命令,停止hive。

   redis的服务ip配置到hive-site.xml中。

   该方式有一些问题,比如:如果同时多次执行同一个sql,则会导致日志信息相互干扰,有一些应用场景的限制。

 

    

 

 注:日志中没有kill的命令是因为我故意没有输出,不显示给用户,通过另外一个key缓存到redis了,在停止时使用。

 

 

  • 大小: 19.1 KB
  • 大小: 2.1 KB
分享到:
评论
1 楼 chowqh 2016-09-21  
看楼主的意思每次,执行sql时,会连接redis,写数据,对吧?

相关推荐

    Ambari下Hive3.0升级到Hive4.0

    3. **下载并安装 Hive 4.0**:获取 Hive 4.0 的源码或二进制包,并将其部署到集群中的所有节点。注意,可能需要同时升级依赖的组件,如 Hadoop、HBase 或 Tez,以确保兼容性。 4. **配置更新**:在 Ambari 管理界面...

    Ambari hdp升级说明

    HDP 升级通常涉及到集群中的各个组件和服务,因此在升级前,需要了解新版本的变更日志,确保所有服务都兼容新版本,并且理解升级策略。 在下载离线安装包时,你需要登录 Hortonworks 的下载页面,找到对应的数据...

    Azkaban任务调度安装配置和使用

    - **日志记录与审计**:记录工作流和任务的执行日志,便于追踪问题和审计; - **调度功能**:支持定期执行工作流; - **插件机制**:模块化设计,支持自定义插件扩展功能; - **认证授权**:提供用户认证和授权机制...

    hadoop 2.0搭建集群

    6. **启动与停止服务**:启动Hadoop守护进程,包括DataNode、NameNode、ResourceManager、NodeManager等,以及Secondary NameNode(在Hadoop 2.x中主要负责周期性合并HDFS的编辑日志)。 7. **测试Hadoop集群**:...

    华为HCIA-大数据认证练试题与答案-202010.pdf

    18. Kafka 日志清理策略:Kafka 默认的日志清理策略是 delete。 19. Kafka-cluster mirroring:该工具用于实现 Kafka 集群之间的数据同步。 以上知识点涵盖了大数据处理、Spark、Hive、HBase、Storm、Flink、...

    Hadoop实战培训教程(部署篇)_V3.pdf

    - **停止Hive**:使用`exit`命令退出Hive CLI。 #### 安装HBase - **获取安装包**:下载HBase的分发版`hbase-1.1.1-bin.tar.gz`。 - **解压安装包**:将压缩包解压到指定目录。 - **修改环境变量**:设置`HBASE_...

    NEO大数据一体化平台二次开发接口文档

    - **获得ETL任务日志接口**:获取任务执行的日志信息。 - **停止ETL任务接口**:停止正在运行的ETL任务。 - **删除ETL任务接口**:从系统中移除ETL任务。 - **获得数据源列表接口**:列出所有可用的数据源。 - **...

    Hadoop实战培训教程(部署篇)_V3

    9. **停止Hive**:通过`hive --service metastore --stop`命令停止Hive Metastore服务。 #### 安装HBase HBase是一个分布式的、面向列的开源数据库,它构建在Hadoop之上。HBase的安装步骤包括: 1. **获取安装包*...

    hadoop 命令大全

    用户可以使用命令`$bin/hadoop job -history output-dir`在指定路径下查看作业的历史日志汇总。这条命令会显示作业的详细信息,包括失败和终止的任务详情。 **4. 查看作业的更多细节** 对于作业的更深入分析,如...

    《大数据平台搭建与配置管理》期末考试卷及答案.docx

    - **知识点**: 客户端维护与Zookeeper服务器之间的连接,通过该连接发送请求、获取响应以及发送心跳等操作。 31. **ZooKeeper的起源** - **知识点**: ZooKeeper框架最初是在雅虎公司内部开发的,后来成为Apache的...

    flume-ng-1.6.0 cdh5.7.0安装包

    源负责从不同的数据生成器获取数据,例如Web服务器的日志文件或社交媒体流。通道则作为一个临时存储,确保数据在传输过程中的可靠性,即使在故障发生时也能保证不丢失。最后,接收器将数据从通道移出并发送到目标...

    Mycat常见问题和解决方案.docx

    在Windows环境下可以直接双击运行startup_nowrap.bat,如果闪退用cmd模式运行查看日志。 Mycat运行SQL时经常阻塞或卡死的解决方案 如果出现执行SQL语句长时间未返回,或卡死,请检查是否是虚机下运行或cpu为单核,...

    Ambari部署Hadoop集群.doc

    在大数据领域,Hadoop生态圈包含了众多组件,如HDFS(分布式文件系统)、MapReduce(分布式计算框架)、HBase(NoSQL数据库)、Hive(数据仓库工具)、Pig(数据分析工具)、Flume(日志收集系统)、Sqoop(数据导入...

    《大数据平台搭建与配置管理》期中试题试卷及答案.docx

    - **详细解析**:Client端上传文件时,首先会联系NameNode获取DataNode列表,并根据负载均衡算法选择合适的DataNode。随后,Client将文件切分为Block,逐个上传至DataNode。在整个过程中,NameNode负责管理文件系统...

    azkaban2.5

    它通过与Web服务器通信来获取作业并更新执行状态。 - **配置**:配置文件通常在`conf/executor.conf`,包括监听端口、Web服务器地址、内存设置等。 - **运行**:启动命令通常是`./bin/start-azkaban-executor-...

    CDH5在线安装包

    2. **下载Cloudera Manager**:从Cloudera官方网站获取`cloudera-manager-installer.bin`文件,这是CDH5的管理工具,用于监控、配置和管理整个集群。 3. **赋予执行权限**:在Linux终端中,通过`chmod +x cloudera-...

    Hadoop大数据开发基础-PPT课件

    7. **Hadoop安装与配置**:学习如何在本地或集群环境下搭建Hadoop环境,包括配置Hadoop的环境变量、初始化HDFS、启动和停止服务等。 8. **数据处理实践**:通过实例演示如何使用Hadoop处理数据,如使用MapReduce...

    大数据精通组件——DolphinScheduler⼯作流调度引擎

    7. 支持任务日志的在线查看、滚动查看以及在线下载日志。 8. 实现了集群高可用性(HA),通过Zookeeper实现Master集群和Worker集群的去中心化。 9. 支持对Master和Worker的CPU、内存等资源的在线监控。 10. 支持工作...

    华为云Stack 8.0.2 数据仓库服务Shell操作维护命令说明书(纳管集群)01.zip

    7. **SQL查询**:若数据仓库服务支持SQL接口,如Hive,可以使用`hive`进入交互式查询环境,或者使用`beeline`命令行工具执行预编写好的SQL脚本。 8. **性能监控**:使用`jps`查看正在运行的Java进程,了解服务运行...

Global site tag (gtag.js) - Google Analytics