Hadoop上传和下载大存储的HIVE表
生活随笔
收集整理的這篇文章主要介紹了
Hadoop上传和下载大存储的HIVE表
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
- 1. 上傳CSV并轉(zhuǎn)換為HIVE
- 2. 下載和讀取
- 2.1 下載HIVE表為ORC
- 2.2 pandas讀取ORC
1. 上傳CSV并轉(zhuǎn)換為HIVE
# 1. 將pandas df保存為csv文件 df.to_csv("wrs_df.csv")# 2. 將csv上傳到hive(查看地址:http://dpp.ops.ctripcorp.com/#/hive/file/file_browser) import os file_path="wrs_df.csv" hdfs_path="hdfs://ns/user/jppkgnlp/" os.system("hadoop fs -put {0} {1}".format(file_path, hdfs_path))# 3. 轉(zhuǎn)換為spark df并保存為hive表 df3 = spark.read.options(header='True', inferSchema='True', delimiter=',') \.csv("hdfs://ns/user/jppkgnlp/wrs_df.csv")def save_to_hive(spark_df, dstTableName, dbName="tmp_jppkgnlp"):"""將df保存到hive表中:param spark_df: DataFrame:param dstTableName: 要保存的表名"""spark_df.createOrReplaceTempView('{0}'.format(dstTableName))dropTableSQL = "drop table if exists {0}.{1}".format(dbName, dstTableName)spark.sql(dropTableSQL)creatTableSQL = "CREATE TABLE {0}.{1} AS select * from {1}".format(dbName, dstTableName)spark.sql(creatTableSQL)print('{0} is saved'.format(dstTableName))save_to_hive(df3, "wrs_df_hive")2. 下載和讀取
2.1 下載HIVE表為ORC
hadoop fs -get hdfs://ns/user/hive/warehouse/tmp.db/tmp_table2.2 pandas讀取ORC
import pandas as pd# 使用pd.read_orc需要先安裝最新版的pyarrow(pip install pyarrow -U) pandas_df = pd.read_orc('分區(qū)名/part-00000')總結(jié)
以上是生活随笔為你收集整理的Hadoop上传和下载大存储的HIVE表的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: python中聚类和分类的区别_聚类与分
- 下一篇: 强制禁用gitlab的双因子认证:Two