pyspark将hive数据写入Excel文件中

不多解释直接上代码,少python包的自己直接下载

python 复制代码
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
from pyspark.sql import SparkSession
import pandas as pd
import os

# 初始化 SparkSession 并启用 Hive 支持
spark = SparkSession.builder \
    .appName("select_hive_data_to_xlsx") \
    .master("yarn") \
    .config("spark.sql.warehouse.dir", "hdfs://1.1.1.1:4007/aaa/hive/warehouse") \
    .enableHiveSupport() \
    .config("spark.yarn.queue", "default") \
    .config("spark.executor.instances", "10") \
    .config("spark.executor.memory", "5g") \
    .config("spark.executor.cores", "4") \
    .config("spark.driver.memory", "6g") \
    .config("spark.driver.cores", "5") \
    .config("spark.hadoop.fs.defaultFS", "hdfs://1.1.1.1:4007") \
    .config("spark.hadoop.fs.hdfs.impl", "org.apache.hadoop.hdfs.DistributedFileSystem") \
    .config("spark.hadoop.fs.file.impl", "org.apache.hadoop.fs.LocalFileSystem") \
    .config("spark.hadoop.fs.hdfs.impl.disable.cache", "true") \
    .getOrCreate()

# 读取 Hive 表
df = spark.sql("\
select \
col_1,col_2 \
from tmp.tmp_1")

# 将 DataFrame 写入 CSV
df.write.csv("hdfs://1.1.1.1:4007/data/tmp/tmp_1.csv", header=True)

# 读取 HDFS 上的 CSV 数据
df = spark.read.option("encoding", "utf-8").csv("hdfs://1.1.1.1:4007/data/tmp/tmp_1.csv", header=True, inferSchema=True)

# 将 Spark DataFrame 转换为 Pandas DataFrame
pandas_df = df.toPandas()

# 将 Pandas DataFrame 写入本地的 Excel 文件
pandas_df.to_excel("/data/tmp/tmp_1.xlsx", index=False)

# 停止 SparkSession
spark.stop()

创作不易,觉得还不错,辛苦给个点赞👍🏻,感谢~~

相关推荐
闲人编程6 分钟前
猜数字游戏:从数学原理到交互体验的完整设计指南
python·游戏·交互·内存管理·猜数字·智能辅导·游戏二分查找
肖永威1 小时前
VSCode开发调试Python入门实践(Windows10)
ide·vscode·python
小白学大数据2 小时前
基于Python的携程国际机票价格抓取与分析
开发语言·爬虫·python
小技与小术2 小时前
代码随想录算法训练营day12(二叉树)
数据结构·python·算法
焱童鞋2 小时前
贪吃蛇游戏demo
人工智能·python·pygame
星空2 小时前
从 Python 基础到 Django 实战 —— 数据类型驱动的 Web 开发之旅
python·django
IT成长日记3 小时前
【Hive入门】Hive高级特性:事务表与ACID特性详解
数据仓库·hive·hadoop·事务·acid
从零开始学习人工智能3 小时前
深度解析 MindTorch:无缝迁移 PyTorch 到 MindSpore 的高效工具
人工智能·pytorch·python
C灿灿数模4 小时前
2025五一杯数学建模C题:社交媒体平台用户分析问题;思路分析+模型代码
数据库·人工智能·python
灏瀚星空4 小时前
量化交易之数学与统计学基础2.2——线性代数与矩阵运算 | 特征值与特征向量
笔记·python·学习·数学建模·金融