Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作
一、Hive分区表新增字段
参考博客:https://blog.csdn.net/yeweiouyang/article/details/44851459
二、Hive修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作
参考博客:https://blog.csdn.net/helloxiaozhe/article/details/80749094
三、Hive分区表动态添加字段
参考博客:https://www.cnblogs.com/congzhong/p/8494991.html
四、Hive分区表修改表结构的问题
参考博客:https://blog.csdn.net/hanhaixingchen/article/details/53744132
五、hive改表结构的两个坑
参考博客:https://yq.aliyun.com/articles/66055
六、Hive分区表新增字段+重刷历史方法(避免旧分区新增字段为NULL)
参考博客:https://blog.csdn.net/hjw199089/article/details/79056612
e.g service_log添加字段
正确的方式:
alter table logs.service_log add columns (release_channel string) cascade;alter table logs.service_log_lzo add columns (release_channel string) cascade; |
此种方式会:
1、更新Table元数据;
2、更新Table所有分区的元数据;
3、service_log能正常解析出新增字段;
ALTER TABLE ADD|REPLACE COLUMNS with CASCADE command changes the columns of a table's metadata, and cascades the same change to all the partition metadata.
ADD COLUMNS lets you add new columns to the end of the existing columns but before the partition columns.
错误的方式:
alter table logs.service_log add columns (release_channel string);alter table logs.service_log_lzo add columns (release_channel string); |
注意:此种方式只会更新Table的元数据信息,不能解析出新增字段。
RESTRICT is the default, limiting column changes only to table metadata.
Hive分区表新增字段及修改表名,列名,列注释,表注释,增加列,调整列顺序,属性名等操作的更多相关文章
- hive分区表新增字段,已有分区显示为null
如果在hive的分区表新增非分区字段,那么原有的分区的数据即使重新运行也会显示为null. 必须先删除该分区,再重新跑数据.
- SQL SERVER 新增表、新增字段、修改字段 判断表是否存在
// 新增之前判断表是否存在 IF NOT EXISTS (SELECT NAME FROM SYSOBJECTS WHERE ID = OBJECT_ID('tb_MessageHistory')) ...
- Oracle 之 表新增字段后修改字段顺序
工作中遇到:在为一个表新增字段后,新增字段在最后,想调整新增字段的位置. 1.原始方法: --新建临时表以存储正确的顺序 create table A_2 as select (column1,col ...
- Hive 外部表新增字段或者修改字段类型等不生效
标题比较笼统,实际情况是: 对于Hive 的分区外部表的已有分区,在对表新增或者修改字段后,相关分区不生效. 原因是:表元数据虽然修改成功,但是分区也会对应列的元数据,这个地方不会随表的元数据修改而修 ...
- laraval migration 新增字段或者修改字段的方法
1.进入项目根目录执行artisan命令生成migration文件,可以指定--table和--path参数,会在对应目录下生成migration文件. php artisan make:migrat ...
- MyBatis学习总结4--解决字段名与实体类属性名不相同的冲突
在平时的开发中,我们表中的字段名和表对应实体类的属性名称不一定是完全相同的,如果直接在xml映射文件中使用sql进行映射,会造成返回值为空的情况,下面阐述解决方案: 测试所用表和数据 create t ...
- javascript动态修改对象的属性名
在做东钿业务系统的时候,经常碰到写很多重复的ajax对接,于是就想封装一个方法,但是接收data的字段名不一样,所以就需要用到动态对象属性名这个写法了.其实很简单.直接看一下代码吧.
- Oracle 给已创建的表增加自增长列
对于已经创建的表,在特殊需求下,需要增加一个自增长列步骤: --1. 增加 自增长列 ); --2. 程序方式更新设置 IdNum 列 值 --3.查询最大 ) From Limsbusinessen ...
- jquery中数组对象下面的属性名名是动态的如何获取
<script> let normalListData = []; function temp() { for (var i = 0; i < 10; i++) { let rowC ...
随机推荐
- 微信小程序分享支持自定义封面图
微信小程序又发布更新了,刚好昨天支付宝也发布小程序,不能让它抢了风头的节奏.微信小程序主要更新如下:“小程序分享支持自定义封面图,公众号及小程序客服可发送小程序卡片.同时,我们还开放了获取发票抬头,指 ...
- 20180323 DataTable增加DataRow方式优化
1. 我开始开发程序时,很多问题考虑不周期,不断的在改进中 最开始我的写法,创建一个DataTable 的Columns,采用语句 dt2.Columns.Add("ID"); 这 ...
- 20171129 ASP.NET中使用Skin文件
在Web.config里加入<pages styleSheetTheme="DefSkin"/>再在App_Themes文件夹里建个DefSkin文件夹把css和Ski ...
- Vagrant测试
载新的BOX实现虚拟机恢复.效果如下:(可用linux命令操作,但是很多时候我们还是需要图形化界面,不然不利于开发代码编写) 参考PDF中的记录网址http://www.vagrantbox.es/ ...
- Python递归优化方法
递归栈溢出 Python的递归调用栈的深度有限制,默认深度为998,可以通过sys.getrecursionlimit()查看. 针对递归栈溢出,我们可以将默认深度设置为大一些,这样不会报错,但是再大 ...
- 爬虫请求库——requests
请求库,即可以模仿浏览器对网站发起请求的模块(库). requests模块 使用requests可以模拟浏览器的请求,requests模块的本质是封装了urllib3模块的功能,比起之前用到的urll ...
- 008-Centos 7.x安装 Ambari 2.2.2 + HDP 2.4.2 搭建Hadoop集群
1.安装环境说明 安装前先安装好 Centos 7.2, jdk-8u91, mysql5.7.13 一共有3台机器,一个是主节点192.168.111.10,两个是从:192.168.111.11, ...
- 用PowerDesigner建立概念模型的问题:不能创建相同字段名的关键字段
依次点击Tools--->Model Options->Model Settings,在Model Settings中有Data Item组框,取消里面的Unique Code,勾选All ...
- java -jstack
一.介绍 jstack是java虚拟机自带的一种堆栈跟踪工具.jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项&qu ...
- IOP知识点(3)-Modal.show
1.position 模态框初始位置.可设为字符串 "左位置 上位置" 或数组 [左位置, 上位置],规则如下: 左位置 可设为 left|center|right 三者之一,上位 ...