Hive脚本中切勿使用/**/注释

Hive脚本的注释目前好像只有 -- ,我之前在做初版数据的时候 使用NotePad++ 习惯性的有时候注释会写成 /**/ ,然后就引发了问题

脚本上传到hue,加入调度,调度正常执行 不报错,但是应该有的数据却为空!!! 奇了怪了.... (反复执行了好多遍,都没有数据,脚本都没有问题呀  一段一段copy执行的时候都正常的)

再仔细看看 ,原因问题出在注释上,在hive脚本里面我不小心留了两行注释 格式为 /* 注释内容 */ 的内容

造成的结果:  /*注释内容*/ 前面的脚本内容正常执行,/* 注释内容*/ 后面的脚本内容统统没有执行,所以很多该有的数据都为空了....

错误脚本内容示例:

insert.hql

use bgda_hw_stg;
set hive.auto.convert.join=false; drop table testdata ;
create table testdata(
createUser string
,createTime string
,updateUser string
,updateTime string
) row format delimited fields terminated by '\001'; insert overwrite table testdata
select
,'小仙女' as createUser
,cast(from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss') as string)as createTime
,'小天使' as updateUser
,'' as updateTime
; /* 将T+1数据插入testdata_bak表中 testdata_bak表在初始化的时候已经创建,目前已存在于bgda_hw_stg库中*/
insert into testdata_bak select * from testdata;

  

以上脚本信息中:由于注释方式

/* 将T+1数据插入testdata_bak表中 testdata_bak表在初始化的时候已经创建,目前已存在于bgda_hw_stg库中*/

 导致 insert into testdata_bak select * from testdata; 这段hql 不会被执行,但是整个调度也不会报错!!!

所以这个一定要注意一下哦,注释方式一定要正确的写,如果发现脚本执行没有报错 但是该有的数据没有 可以查看以下脚本中是否存在不规则的注释...(不过大部分数据错处应该是及脚本逻辑问题哈哈哈)

正确示例:

insert.hql

use bgda_hw_stg;
set hive.auto.convert.join=false; drop table testdata ;
create table testdata(
createUser string
,createTime string
,updateUser string
,updateTime string
) row format delimited fields terminated by '\001'; insert overwrite table testdata
select
,'小仙女' as createUser
,cast(from_unixtime(unix_timestamp(),'yyyy-MM-dd HH:mm:ss') as string)as createTime
,'小天使' as updateUser
,'' as updateTime
; -- 将T+1数据插入testdata_bak表中 testdata_bak表在初始化的时候已经创建,目前已存在于bgda_hw_stg库中
insert into testdata_bak
select * from testdata;

 

Hive脚本中切勿使用/**/注释的更多相关文章

  1. robotframework脚本中的文档注释

    生成文档命令 python -m robot.libdoc xxx.robot xxx.html   语法说明 = 说明 = h2标题,注意第一个等号前有四个空格,==中间文字两边各有一个空格 == ...

  2. grep 查找bash脚本中的注释代码

    出于安全性的考虑,不建议在bash脚本中注释掉不使用的代码.也就是说如果某段代码不使用了,那么应该删除掉,而不是简单地注释掉.假如你突然意识到这一点,而以前并没有遵从这个原则,现在需要找出脚本中的注释 ...

  3. python 中写hive 脚本

    1.直接执行.sql脚本 import numpy as np import pandas as pd import lightgbm as lgb from pandas import DataFr ...

  4. shell脚本中向hive动态分区插入数据

    在hive上建表与普通分区表创建方法一样: CREATE TABLE `dwa_m_user_association_circle`( `device_number` string, `oppo_nu ...

  5. HUE中Oozie执行Hive脚本

    Oozie执行hive,传入参数1. 新建一个workflow 2. 拖入一个hive2 3. hive脚本如下 CREATE TABLE IF NOT EXISTS spider_tmp.org_i ...

  6. shell脚本中常用命令

    1           Shell中的特殊符号 1.1           $  美元符号.用来表示变量的值.如变量NAME的值为Mike,则使用$NAME就可以得到“Mike”这个值. 1.2    ...

  7. python爬虫抖音 个人资料 仅供学习参考 切勿用于商业

    本文仅供学习参考 切勿用于商业 本次爬取使用fiddler+模拟器(下载抖音APP)+pycharm 1. 下载最新版本的fiddler(自行百度下载),以及相关配置 1.1.依次点击,菜单栏-Too ...

  8. shell脚本中执行另一个shell脚本

    分类: 可以在一个shell脚本中执行另一个shell脚本(或非可执行文件,主要用于取得一些变量的值),方法是: . 文件名(包括路径) 或 变量=文件名(包括路径) . $变量   注意,圆点后面有 ...

  9. 使用spark对hive表中的多列数据判重

    本文处理的场景如下,hive表中的数据,对其中的多列进行判重deduplicate. 1.先解决依赖,spark相关的所有包,pom.xml spark-hive是我们进行hive表spark处理的关 ...

随机推荐

  1. 磁盘格式化、磁盘挂载、手动增加swap空间 使用介绍

    第4周第2次课(4月10日) 课程内容: 4.5/4.6 磁盘格式化4.7/4.8 磁盘挂载4.9 手动增加swap空间 4.5/4.6 磁盘格式化 [root@jimmylinux-002 ~]# ...

  2. pom父工程dependencyManagement中的jar包在子工程中不写版本号无法引入的问题

    1.遇到的问题:  本人用的idea,然后在导入别人的项目的时候,pom文件中没有报错了,但是在maven栏目中jar包却一直报红,是因为我没写版本的原因吗?不对呀,我的父工程下已经写了springb ...

  3. hibernate绑定session

    session session是一种单实例对象 简单说就是自己用 别人不能用.在一些项目中很多人一起来操作 所以我们可以把session与我们的本地线程一起绑定,本地线程的特点就是执行一次 从创建到销 ...

  4. IOS中获取各个文件的目录路径的方法和NSFileManager类

    转自:http://blog.sina.com.cn/s/blog_5fb39f910101di92.html IOS中获取各种文件的目录路径的方法 iphone沙箱模型的有四个文件夹,分别是什么,永 ...

  5. iOS Core Animation 简明系列教程

    iOS Core Animation 简明系列教程  看到无数的CA教程,都非常的难懂,各种事务各种图层关系看的人头大.自己就想用通俗的语言翻译给大家听,尽可能准确表达,如果哪里有问题,请您指出我会尽 ...

  6. EventSource 实时传输数据

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. dubbo 订阅 RPC 服务

    Dubbo 订阅 RPC 服务 建立消费者者项目 pom.xml <?xml version="1.0" encoding="UTF-8"?> &l ...

  8. Rest微服务案例

    数据库 数据库名称为Product; 创建api子工程,项目名为springcloud_api Product实体类 public class Product implements Serializa ...

  9. 学习Java必看的Java书籍(高清中文最新版附下载链接)

    今年下半年,我正式系统地学习Java(之前学习C++).最近把学习Java所用到的书籍整理了一下,分享出来,希望对正在学习或准备学习Java的人有一定的帮助. 关于Java的学习路线,和IDE工具In ...

  10. 模拟实现 Promise(小白版)

    模拟实现 Promise(小白版) 本篇来讲讲如何模拟实现一个 Promise 的基本功能,网上这类文章已经很多,本篇笔墨会比较多,因为想用自己的理解,用白话文来讲讲 Promise 的基本规范,参考 ...