python處理數(shù)據(jù),存進hive表的方法
首先,公司的小組長給了我一個任務,把一個txt的文件中的部分內容,存進一個在hive中已有的表的相同結構的表中。所以我的流程主要有三個,首先,把數(shù)據(jù)處理成和hive中表相同結構的數(shù)據(jù),然后仿照已有的hive中表的結構再創(chuàng)建一張新的數(shù)據(jù)表,最后把本地的txt文件上傳到hive中新建的數(shù)據(jù)表中。
1:已有的數(shù)據(jù)表的結構和在hive表中的結構完全對不上,下面的圖是原來hive中表的結構和小組長給我的txt中表的結構:


大家可以看出,我們原來的hive中表的字段一共有17個,而組長給我的表中的字段一共有9個,其中最后一個為json結構,而且順序還不對,所以我們要進行篩選,把對應上的字段放到相應位置,對應不上的字段寫成空。

大家要注意幾個地方,原來的數(shù)據(jù)是按照tab來劃分的,所以我們要數(shù)好對應的tab的數(shù)目,好來計算出來數(shù)據(jù)的實際的位置信息,然后我們按照原來hive表中的數(shù)據(jù)順序,重新排列我們新建表的數(shù)據(jù)的順序,下面給大家看看結果:

其中l(wèi)ine[0]=null,line[1]=102,大家以此類推。
3:我們把本地的txt文件導入到hive表中。首先我們要新建一個和原來hive表中相同結構的數(shù)據(jù)表,然后把我們的數(shù)據(jù)導入到表中,
hive> creat table new_sft(x1 string,x2 string ,...,xn string) partitioned by (d string);
建好表之后,把數(shù)據(jù)導入到新表之中:
hive> load data local inpath‘/home/opendev/1.txt' into table new_sft;
最后給大家看看我的最終的結果:

以上這篇python處理數(shù)據(jù),存進hive表的方法就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關文章
python opencv根據(jù)顏色進行目標檢測的方法示例
這篇文章主要介紹了python opencv根據(jù)顏色進行目標檢測的方法示例,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-01-01
基于Python實現(xiàn)船舶的MMSI的獲取(推薦)
工作中遇到一個需求,需要通過網(wǎng)站查詢船舶名稱得到MMSI碼,網(wǎng)站來自船訊網(wǎng)。這篇文章主要介紹了基于Python實現(xiàn)船舶的MMSI的獲取,需要的朋友可以參考下2019-10-10
使用python查找替換PowerPoint演示文稿中的文本
演示文稿已成為商務會議、學術報告和教育培訓中不可或缺的一部分,而PowerPoint演示文稿作為行業(yè)標準工具,更是承載著無數(shù)創(chuàng)意與信息的載體,本文將介紹如何使用Python來精確查找并替換PowerPoint演示文稿中的文本,需要的朋友可以參考下2024-07-07
利用Python找出序列中出現(xiàn)最多的元素示例代碼
這篇文章主要給大家介紹了關于利用Python找出序列中出現(xiàn)最多的元素的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧。2017-12-12

