最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

python導出hive數(shù)據(jù)表的schema實例代碼

 更新時間:2018年01月22日 11:43:44   作者:kwsy2008  
這篇文章主要介紹了python導出hive數(shù)據(jù)表的schema實例代碼,小編覺得還是挺不錯的,具有一定借鑒價值,需要的朋友可以參考下

本文研究的主要問題是python語言導出hive數(shù)據(jù)表的schema,分享了實現(xiàn)代碼,具體如下。

為了避免運營提出無窮無盡的查詢需求,我們決定將有查詢價值的數(shù)據(jù)從mysql導入hive中,讓他們使用HUE這個開源工具進行查詢。想必他們對表結(jié)構(gòu)不甚了解,還需要為之提供一個表結(jié)構(gòu)說明,于是編寫了一個腳本,從hive數(shù)據(jù)庫中將每張表的字段即類型查詢出來,代碼如下:

#coding=utf-8 
import pyhs2 
from xlwt import * 
 
hiveconn = pyhs2.connect(host='10.46.77.120', 
         port=10000, 
         authMechanism='PLAIN', 
         user='hadoop', 
         database='hibiscus_data', 
         ) 
 
def create_excel(): 
  sql = 'show tables' 
  tables = [] 
  with hiveconn.cursor() as cursor: 
    cursor.execute(sql) 
    res = cursor.fetch() 
    for table in res: 
      tables.append(table[0]) 
   
  tableinfo = [] 
  for table in tables: 
    tableinfo.append(get_column_info(table)) 
 
  create_excel_ex(tableinfo) 
 
def create_excel_ex(tableinfo): 
  w = Workbook() 
  sheet = w.add_sheet(u'表結(jié)構(gòu)') 
  row = 0 
  for info in tableinfo: 
    row = write_tale_info(info,sheet,row) 
  w.save('hive_schema.xls') 
 
def write_tale_info(tableinfo,sheet,row): 
  print row 
  sheet.write_merge(row,row,0,2,tableinfo['table']) 
   
  row += 1 
  sheet.write(row,0,u'名稱') 
  sheet.write(row,1,u'類型') 
  sheet.write(row,2,u'解釋') 
  row += 1 
 
  fields = tableinfo['fields'] 
  for field in fields: 
    sheet.write(row,0,field['name']) 
    sheet.write(row,1,field['type']) 
    row += 1 
 
  return row + 1  
   
   
def get_column_info(table): 
  sql = 'desc {table}'.format(table=table) 
  info = {'table':table,'fields':[]} 
  with hiveconn.cursor() as cursor: 
    cursor.execute(sql) 
    res = cursor.fetch() 
    for item in res: 
      if item[0] == '': 
        break 
      info['fields'].append({'name':item[0],'type':item[1]}) 
 
  return info 
 
if __name__ == '__main__': 
  create_excel() 

其實,我們的hive數(shù)據(jù)庫將所有的元數(shù)據(jù)存儲在了mysql當中,分析這些元數(shù)據(jù)也可以獲得表結(jié)構(gòu)信息。

總結(jié)

以上就是本文關于python導出hive數(shù)據(jù)表的schema實例代碼的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站其他相關專題,如有不足之處,歡迎留言指出。感謝朋友們對本站的支持!

相關文章

  • 利用python繪制蜂群圖的示例代碼

    利用python繪制蜂群圖的示例代碼

    蜂群圖可以不重疊的顯示各數(shù)據(jù)點的分布,相對于散點圖,所繪制的點彼此靠近且不會重疊,能有效呈現(xiàn)出點分布的局部密度信息,本文給大家介紹了如何利用python繪制蜂群圖,文中有詳細的代碼示例供大家參考,需要的朋友可以參考下
    2024-03-03
  • windows環(huán)境下tensorflow安裝過程詳解

    windows環(huán)境下tensorflow安裝過程詳解

    這篇文章主要為大家詳細介紹了windows環(huán)境下tensorflow安裝過程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-03-03
  • Python中基礎數(shù)據(jù)類型 set集合知識點總結(jié)

    Python中基礎數(shù)據(jù)類型 set集合知識點總結(jié)

    在本篇文章里小編給大家總結(jié)了一篇關于Python中基礎數(shù)據(jù)類型 set集合知識點總結(jié)內(nèi)容,有需要的朋友們可以學習下。
    2021-08-08
  • 在主流系統(tǒng)之上安裝Pygame的方法

    在主流系統(tǒng)之上安裝Pygame的方法

    這篇文章主要介紹了在主流系統(tǒng)之上安裝Pygame的方法,本文通過實例圖文相結(jié)合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-05-05
  • Python實現(xiàn)批量修改文件時間屬性

    Python實現(xiàn)批量修改文件時間屬性

    我們有時候需要修改文件的“修改時間”?、?“訪問時間”,“創(chuàng)建時間”?,此時如果使用Python批量實現(xiàn)應該會方便很多,下面小編就來為大家介紹一下具體實現(xiàn)方法吧
    2023-11-11
  • python爬蟲使用scrapy注意事項

    python爬蟲使用scrapy注意事項

    在本篇文章里小編給大家整理的是一篇關于python爬蟲使用scrapy注意事項的相關文章,對此有興趣的朋友們可以學習下。
    2020-11-11
  • Pandas之缺失數(shù)據(jù)的實現(xiàn)

    Pandas之缺失數(shù)據(jù)的實現(xiàn)

    這篇文章主要介紹了Pandas之缺失數(shù)據(jù)的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-01-01
  • python中的集合及集合常用的使用方法

    python中的集合及集合常用的使用方法

    這篇文章主要介紹了python中的集合及集合常用的使用方法,集合是一個無序的不重復元素序列,文章圍繞主題展開詳細的內(nèi)容介紹,具有一定的參考價值,需要的朋友可以參考一下
    2022-07-07
  • 編寫同時兼容Python2.x與Python3.x版本的代碼的幾個示例

    編寫同時兼容Python2.x與Python3.x版本的代碼的幾個示例

    這篇文章主要介紹了編寫同時兼容Python2.x與Python3.x版本的代碼的幾個示例,在Python2.7.x的更新中由于采用了某些Python3中的代碼編寫特性、使得在有些原本不同之處編寫兼容性代碼成為可能,需要的朋友可以參考下
    2015-03-03
  • 用pandas按列合并兩個文件的實例

    用pandas按列合并兩個文件的實例

    下面小編就為大家分享一篇用pandas按列合并兩個文件的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-04-04

最新評論

宁远县| 孟村| 临泉县| 定边县| 廉江市| 寻甸| 衡阳县| 高清| 西藏| 米林县| 大港区| 图木舒克市| 乐安县| 丹江口市| 常德市| 天全县| 苍梧县| 柳江县| 莱州市| 怀宁县| 大兴区| 惠东县| 嫩江县| 通道| 龙里县| 通江县| 合肥市| 南皮县| 虞城县| 家居| 巨野县| 泰来县| 嘉禾县| 灵台县| 黄梅县| 北京市| 永康市| 乃东县| 泰和县| 商洛市| 岳西县|