使用 python 批量插入 hive


1.環境准備.

需要 python3.6  最好是安裝anaconda

 

 

 用anaconda navigator 安裝這個 , 當然 , 純 python環境下也能安裝這個包 

 

2. 插入hive 換個思路 , 直接插入到hive的表的倉庫中 , 也就是hdfs上存儲hive文件的地方

from hdfs.client import Client
import time
t1=time.time()
client = Client("http://192.168.1.102:50070")

s="100,1094,baumax,58"
filepath="/user/hive/warehouse/hadoop.db/kk/t.txt"
t1 = time.time()
client.write(filepath, s,overwrite=False,append=True)
print('OK')

t2=time.time()
print(t2-t1)

這里我使用的是追加 ,append , 我直接定位到了文件 , 可以添加到里面 , 當然 , 

這個HDFS client也是能建文件夾 , 建文件 , 不追加新建文件等等 , 

這只是一種了思路.

 

最后我去HDFS上看了下  t.txt   確實增加了一行 .

並且在hive的 select * from 表名 ,也能查到新加的 

 

可以這樣理解 , hive的表結構存儲在mysql中  ,但是表數據存儲在hdfs上 , 且定位是文件夾 ,只要把數據放進去 

結論:  通過 LOAD DATA INPATH '' INTO TABLE 

等同於   手動追加 hive的表文件所在的文件夾

 

使用注意:   理論上追加的大小是不做限制的 , 讀取文件  ,追加就行 .


免責聲明!

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



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