获取hive表最新分区
来源:互联网 发布:西南大学网络教育官网 编辑:程序博客网 时间:2024/05/16 13:59
在对时间要求比较高的流程中,往往会希望获取最新的分区数据。如果采用 select max(分区) as p from table_name; 获取分区,如果表很大时,时间代价很大;另外,如果直接从分区路径判断,虽然速度也会很快,当hive如何数据正在插入更新时被判断,极有可能会出现job还在进行,而判断已经结束,导致错误。
有一个可行的策略,对上一个任务做依赖调度,并且采用show partitions 输出所有的分区。利用shell语句,获得最大分区值。
(注:准实时情况下,一般对性能有要求,借助于shell脚本可以有效避免使用动态分区等操作)
脚本如下:#!/bin/bashset -enowtime=`date -d today "+%Y-%m-%d %H:%M"`v_today=${nowtime:0:10}partition="set hive.cli.print.header=flase;show partitions database_name.table_name;"#h=` hive -S -e "$partition"` #获取Hive表信息v_partition=`hive -S -e "$partition" | grep d="${v_today}" | sort | tail -n 1` #取最新的分区h=${v_partition:15:2}echo $h
阅读全文
0 0
- 获取hive表最新分区
- 获取hive表最新分区(准实时算法)
- HIVE获取最新分区的数据的方法
- hive表分区
- Hive表分区
- Hive表分区操作
- hive表分区
- Hive操作表分区
- hive表分区
- Hive 表分区
- hive修改 表/分区语句
- hive外部表及分区
- Hive创建表和分区
- 改变Hive 表的分区
- hive修改 表/分区语句
- 修改hive表分区名称
- hive修改 表/分区语句
- hive 修改表/分区语句
- 机器学习基础---生成模型和判别模型
- 创建"Hello World"图形用户界面
- Hadoop 解除 安全模式、"Name node is in safe mode"
- 1017第一题
- 9.Java流程控制
- 获取hive表最新分区
- 10-17盒子缓冲运动,显示盒子淡入淡出,offset、style.xx、的区别,页面窗口滚动
- VMware Vsphere 6.0安装部署 (三) vCenter Server安装
- 文QT5下载安装教程
- 2017.10.17一试
- codeforces 570A【python】
- Linux基本命令详解
- 输入一个三位数的整数
- 时光机穿梭