美文网首页HiveHive在简书
Hive分区表:发现指定时间范围内数据有更新的分区

Hive分区表:发现指定时间范围内数据有更新的分区

作者: 风筝flying | 来源:发表于2019-09-26 16:17 被阅读0次

使用场景

需要查找最近修改时间在指定范围内的hive表或者hive表的相关分区,代码如下:

hive_tbl_path=path #hive表的路径
txt=`hdfs dfs -ls  $hive_tbl_path | awk '
       BEGIN {
         IFS="\t";
         n_days_ago=strftime("%Y-%m-%d%H:%M",systime()-1800)
         }{
           if($6$7>n_days_ago){print $8}
         }'`
#IFS:Linux系统的分隔符
#systime()-1800:当前时间半小时,可以任意指定
#$6:日期,$7:时分,$8:hive表的路径       
OLD_IFS="$IFS"
IFS=,
ntxt=${txt//[[:space:]]/,} #将分隔符换成逗号
arr=($ntxt)#字符串转成数组
dh=""
len=${#arr[*]}#计算数组长度
n=1
for a in ${arr[@]}
do
  dt=${a:0-13:13}#取出hive表路径中的分区信息
  if [ $n -lt $len ];then
    dh=$dh${dt//"/"/""},#替换/
  else
    dh=$dh${dt//"/"/""}
  fi
  n=$((n+1))
done
echo "$dh"
IFS="$OLD_IFS"

相关文章

  • Hive分区表:发现指定时间范围内数据有更新的分区

    使用场景 需要查找最近修改时间在指定范围内的hive表或者hive表的相关分区,代码如下:

  • Hive系列之分区表和桶

    为提升hive数据的查询和写入性能, hive提供了分区表机制。hive每个表格可以指定多个分区key, 这些分区...

  • 大数据知识点总结

    Hive: 分区表有哪几类 Hive中追加导入数据的4种方式是什么? Hive中到处数据有几种方式?如何导出数据 ...

  • 案例详解__HIVE中内部表、外部表、分区表和分桶表

    目录一、Hive建表语法二、内部表外部表三、分区表四、分桶表 Hive在建表时可指定内部表、外部表、分区表和分桶表...

  • hive的严格模式和分区

    相比mysql,hive有严格模式存在,为了不错误扫描整个数据,hive的分区表会将数据分成几个分区。查询分区表中...

  • HiveSQL分区-DML

    分区 创建分区表 以性别分区;分区字段不可与表列名重复! 载入分区表数据 介绍load-data:Hive-DML...

  • 大数据开发之Hive篇19-Hive分区表详解

    备注:Hive 版本 2.1.1 一.Hive分区表概述 数据分区的概念以及存在很久了,通常使用分区来水平分散压力...

  • hive分区表

    hive分区表 1 为什么出现分区表? 假设有海量的数据保存在hdfs的某一个hive表明对应的目录下,使用hiv...

  • create table tmp_table_name as .

    1.hive中用CTAS 创建表,所创建的表统一都是非分区表,不管源表是否是分区表。所以对于分区表的创建使用cre...

  • Hive-分区&分桶

    分区 简介 为了避免Hive每次查询都扫描整个文件,除了采用索引的方式外,还可以通过建立分区表。分区表是指在创建表...

网友评论

    本文标题:Hive分区表:发现指定时间范围内数据有更新的分区

    本文链接:https://www.haomeiwen.com/subject/ryhnuctx.html