• 使用 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的表文件所在的文件夹

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

  • 相关阅读:
    iOS开发之Xcode8兼容适配iOS 10资料整理笔记
    C#流概述
    C#回调实现的一般过程
    ASP.Net MVC的学习
    RAID基本知识
    Infiniband基本知识
    [转]开源实时视频码流分析软件:VideoEye
    [转]高分一号的落后与特色
    [转]MVC,MVP 和 MVVM 的图示
    图文助你打开MS SQL Serever的ldf和mdf文件
  • 原文地址:https://www.cnblogs.com/alpha-cat/p/12939020.html
Copyright © 2020-2023  润新知