亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

方案沒有文件系統:s3 在讀取 parquet s3 文件時使用 pyspark

方案沒有文件系統:s3 在讀取 parquet s3 文件時使用 pyspark

慕田峪4524236 2022-07-12 15:55:49
我有一個帶有一些小 Parquet 文件的存儲桶,我想將它們合并成一個更大的文件。要執行此任務,我想創建一個 spark 作業來使用和編寫一個新文件。from pyspark import SparkContextfrom pyspark.sql import SparkSession, SQLContextspark = SparkSession.builder \                    .master("local") \                    .appName("Consolidated tables") \                    .getOrCreate()spark._jsc.hadoopConfiguration().set("fs.s3a.access.key", "access")spark._jsc.hadoopConfiguration().set("fs.s3a.secret.key", "secret")df = spark.read.parquet("s3://lake/bronze/appx/contextb/*")這段代碼向我拋出了一個異常:No FileSystem for scheme: s3。如果我切換到s3a://...,我收到錯誤:Class org.apache.hadoop.fs.s3a.S3AFileSystem not found。我正在嘗試將此代碼作為python myfile.py.知道出了什么問題嗎?
查看完整描述

2 回答

?
哈士奇WWW

TA貢獻1799條經驗 獲得超6個贊

下載這個 hadoop-aws-2.7.5.jar(或最新版本)并配置這個 jar 可用于 spark

spark = SparkSession \
        .builder \
        .config("spark.jars", "/path/to/hadoop-aws-2.7.5.jar")\
        .getOrCreate()


查看完整回答
反對 回復 2022-07-12
?
達令說

TA貢獻1821條經驗 獲得超6個贊

from boto3.session import Session

from pyspark import SparkContext

from pyspark.sql import SparkSession, SQLContext


spark = SparkSession.builder \

                    .master("local") \

                    .appName("Consolidated tables") \

                    .getOrCreate()


ACCESS_KEY='your_access_key'

SECRET_KEY='your_secret_key'


session = Session(aws_access_key_id=ACCESS_KEY,

                  aws_secret_access_key=SECRET_KEY)

s3 = session.resource('s3')


df = spark.read.parquet("s3://lake/bronze/appx/contextb/*")


查看完整回答
反對 回復 2022-07-12
  • 2 回答
  • 0 關注
  • 148 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號