pyspark將hive數據寫入Excel文件中

不多解釋直接上代碼,少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()

創作不易,覺得還不錯,辛苦給個點贊👍🏻,感謝~~

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/77907.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/77907.shtml
英文地址,請注明出處:http://en.pswp.cn/web/77907.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Stack--Queue 棧和隊列

一、Stack--棧 1.1 什么是棧? 堆棧是一種容器適配器,專門設計用于在 LIFO 上下文(后進先出)中運行,其中元素僅從容器的一端插入和提取。 第一個模版參數T:元素的類型;第二個模版參數Container…

用Python做有趣的AI項目1:用 TensorFlow 實現圖像分類(識別貓、狗、汽車等)

項目目標 通過構建卷積神經網絡(CNN),讓模型學會識別圖片中是什么物體。我們將使用 CIFAR-10 數據集,它包含 10 類:飛機、汽車、鳥、貓、鹿、狗、青蛙、馬、船和卡車。 🛠? 開發環境與依賴 安裝依賴&…

3D可視化編輯器模版

體驗地址:http://mute.turntip.cn 整個搭建平臺核心模塊包含如下幾個部分: 3D場景渲染 組件拖拽系統 元素編輯功能 狀態管理 歷史記錄與撤銷/重做 技術棧 前端框架與庫 React 18 用于構建用戶界面的JavaScript庫 Next.js 14 React框架,提供服…

“連接世界的橋梁:深入理解計算機網絡應用層”

一、引言 當你瀏覽網頁、發送郵件、聊天或觀看視頻時,這一切都離不開計算機網絡中的應用層(Application Layer)。 應用層是網絡協議棧的最頂層,直接為用戶的各種應用程序提供服務。它為用戶進程之間建立通信橋梁,屏蔽了…

JavaScript 代碼搜索框

1. 概述與需求分析 功能&#xff1a;在網頁中實時搜索用戶代碼、關鍵字&#xff1b;展示匹配行、文件名&#xff1b;支持高亮、正則、模糊匹配。非功能&#xff1a;大文件集&#xff08;幾十萬行&#xff09;、高并發、響應 <100ms&#xff1b;支持增量索引和熱更新。 2. …

【運維】Ubuntu apt 更新失敗?Temporary failure resolving ‘cn.archive.ubuntu.com‘ 問題

Ubuntu apt 更新失敗&#xff1f;Temporary failure resolving ‘cn.archive.ubuntu.com’ 問題 在使用 Ubuntu 時&#xff0c;你是否遇到過這樣一個煩人的錯誤&#xff1a; Temporary failure resolving ‘cn.archive.ubuntu.com’ 如果你也踩坑了&#xff0c;別慌&#xff0…

Uniapp:showLoading(等待加載)

目錄 一、出現場景二、效果展示三、具體使用一、出現場景 在項目的開發中,我們經常會請求后臺接口返回數據,但是每一個接口返回數據的時間不一致,有的快,有的慢,這個時候如果不加一個遮罩層,接口返回慢的時候,非常影響用戶體驗 二、效果展示 三、具體使用 顯示加載框…

【11408學習記錄】英語書信通知寫作模板大全:5個高分句式+使用場景解析,速存每日一句拆解練習!

書信/通知寫作錦囊妙句 英語寫作——19個錦囊妙句妙句9妙句10妙句11妙句12妙句13 每日一句詞匯第一步&#xff1a;找謂語第二步&#xff1a;斷句第三步&#xff1a;簡化讓步狀語從句限定性同位語從句主句 英語 寫作——19個錦囊妙句 妙句9 故宮在中國人民中很受歡迎/評價很高…

Unity 粒子同步,FishNet

Github的工程 同步畫面 使用FishNet插件同步&#xff0c;可使用這個選項來克隆第二個項目進行測試

【hadoop】案例:MapReduce批量寫入HBase

1.需求分析 我們仍然以美國各個氣象站每年的氣溫數據集為例&#xff0c;現在要求使用MapReduce讀取該數據集&#xff0c;然后批量寫入HBase數據庫&#xff0c;最后利用HBase shell根據行鍵即席查詢氣溫數據。 2.數據集準備 數據集的文件名為temperature.log&#xff0c;里面包含…

【linux網絡】網絡基礎概念

1. 初始協議 1.1 OSI 七層模型 OSI&#xff08;Open System Interconnection&#xff0c;開放系統互連&#xff09;七層網絡模型稱為開放式系統互聯參考模型&#xff0c;是一個邏輯上的定義和規范&#xff1b; 把網絡從邏輯上分為了 7 層. 每一層都有相關、相對應的物理設備&a…

【Android】談談DexClassLoader

一,Dex和Jar DEX 文件(Dalvik Executable)相較于普通的 JAR(Java 字節碼 .class 文件)進行了多方面的優化,主要是為了適應 Android 設備的性能和資源限制(例如內存、存儲空間和處理能力)。以下是 DEX 文件的一些具體優化點: 1. 內存占用優化 合并類文件: DEX 文件將…

【Flutter】Unity 三端封裝方案:Android / iOS / Web

關聯文檔&#xff1a;【方案分享】Flutter Unity 跨平臺三維渲染架構設計全解&#xff1a;插件封裝、通信機制與熱更新機制—— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理&#xff0c;助力 XR 項目落地 —— 支持 Android/iOS/Web 的 3D 內容嵌入與遠程資源管理&…

Html1

一&#xff0c;HTML概述 網頁開發需要學習的知識&#xff1a; html css javaScript 兩個框架 VUE.js ElementUI UI user interface 用戶界面 HTML xml 可擴展標記語言-->存儲數據 Markup Language標簽語言都會提供各種標…

一、I/O的相關概念

I/O的相關概念 1、I/O I/O即Input和Output&#xff0c;用戶進程執行I/O操作&#xff0c;歸結起來&#xff0c;也就是向操作系統發出請求&#xff0c;讀請求就把數據填到緩沖區里&#xff0c;寫數據就把緩沖區里數據排干&#xff0c;目的地可以是磁盤也可以是其他通道。進程通…

出現Invalid bound statement (not found)問題的原因可能有哪些

1.全局配置文件沒配好&#xff1f; 檢查全局配置文件application.properties或application.yml是否配置掃描mapper包的文件路徑 #mybatis配置mapper文件路徑 #mybatis.mapper-locationsclasspath:/mapper/*.xml #mybatis-plus配置mapper文件路徑 mybatis-plus.mapper-locatio…

第十節:文本編輯

理論知識 文本編輯器的基本概念&#xff1a;文本編輯器是用于創建和編輯文本文件的工具。在 Linux 系統中&#xff0c;常見的文本編輯器有 vi、vim、nano 等。vi 和 vim 編輯器&#xff1a;vi 是一款經典的文本編輯器&#xff0c;vim 是 vi 的增強版&#xff0c;提供了更多的功…

部署一個自己的Spring Ai 服務(deepseek/通義千問)

Spring Boot 無縫接入 DeepSeek 和通義千問請求日志記錄及其ip黑白名單 SpringBoot版本 3.2.0 JDK 版本為17 redis 3.2.0 mybatis 3.0.3 依賴引入 關鍵依賴 <dependency><groupId>org.springframework.ai</groupId><artifactId>spring-ai-openai-sp…

組裝 (DIY) 一臺顯示器 (4K 屏支持 4 畫面分屏 PBP 1080p x4)

首發日期 2025-04-26, 以下為原文內容: 家里的 PC 主機比較多, 如果同時開機, 顯示器就不夠用了. 因為窮, 窩租住的房間又很小, 放不下很多顯示器. 所以, 窩希望買一臺支持 分屏 功能的顯示器. 最好是 4K 分辨率 (3840x2160) 的屏幕, 然后 4 分屏 (有 4 個 DP 或 HDMI 輸入接口…

[Java入門]抽象類和接口

[Java入門]抽象類和接口 1. 抽象類1.1 抽象類的概念1.2 抽象類語法1.3 抽象類特性1.4 抽象類的作用 2. 接口2.1 接口的概念2.2 語法規則2.3 接口使用2.4 接口特性2.5 實現多個接口2.6 接口間的繼承2.7 抽象類和接口的區別 3. Object類3.1 獲取對象信息3.2 對象比較equals方法 1…