通過表名和時間查看hive分區表的數據


[linux-]$  /home/script/listHive.py  ta_name_1002_user_search_log_day  20180626

#!/usr/bin/env python
# -*- coding: utf-8 -*-
##########################################
# 通過表名和時間查看hive分區表的數據 
# len(sys.argv)--輸入參數個數
# sys.argv[1] -- 表名
# sys.argv[2] -- 時間 
# 創建者:df    
# 創建日期:2018年06月25日
###############################################
import os
import sys

ll = len(sys.argv)
def pri(com):
    print("command: '%s'" % com)
    os.system(com)
    sys.exit(0) 

if ll < 2:
    print('no parameter !')
    print('Please enter the format !')
    print("./l_hive.py tableName  [date]")
    sys.exit(1)
#獲取表名
v_tablename = sys.argv[1]
command = "hadoop fs -ls  /apps/hive/warehouse/*/%s" % v_tablename
if ll == 2:
    pri(command)

v_time = sys.argv[2]
if ll > 2:
    # 獲取時間長度
    len = len(v_time)
    if len <4:
        pri(command)
    else:
        num = len / 2 - 3 + 1
        for i in range(num):
            sublen = 6 + i * 2
            command = "%s/*=%s" % (command, v_time[0:sublen]) 
        pri(command)
else:
    print('Please enter the format !')
    print("./l_hive.py tableName  [date]")
    sys.exit(1)
View Code

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM