python 读文件并处理成DataFrame

1. 从hive表中批量读取数据,处理成DataFrame。

#!/usr/bin/python
# -*- coding: UTF-8 -*-
from pyhive import hive
import pandas as pd

def get_batch_data_from_hive(sql_str, batch_size=100):
    # sql_str = 'select * from zx_dm.lx_user_wt_gjc_contact_4_predict_data_d where pt="{}"'.format(last_dt)
    conn = hive.Connection(host='localhost', port=10000, username='zx_dm', auth='NOSASL', database='zx_dm')
    cursor = conn.cursor()
    cursor.execute(sql_str)
    while True:
        batch_data = cursor.fetchmany(size=batch_size)
        if len(batch_data) == 0:
             break
        df = pd.DataFrame(batch_data, columns=cols)
        # 处理一个batch
        fun(df)

    cursor.close()
    conn.close()

2.  使用pandas从hive表中读取DataFrame数据。

def get_data_from_hive(sql_str):
    conn = hive.Connection(host='sjpt-other-standby-9.wxxdc',\
port=10000,auth='KERBEROS', kerberos_se
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值