我想检查 shell 脚本中是否存在给定的 s3 密钥。
S3 Path:
========
s3://Bucket/test/names/12345/names-ca/one.txt
s3://Bucket/test/names/12346/names-ec/two.txt
Run Code Online (Sandbox Code Playgroud)
我想检查 s3://Bucket/test/names/12345 是否存在。有什么更好的方法可以从 shell 中检查这个。
我正在尝试使用 AWS EMR 中的 Pyspark 读取驻留在 s3 的 Excel 文件,为了执行此操作,我下载了 Spark-Excel jarspark-excel_2.11-0.12.4.jar 和 Spark-excel_2.12-0.13.5 .jar 并放入 s3 存储桶中
scenario 1:
===========
df = spark.read.format("com.crealytics.spark.excel").option("useHeader", "true").option("inferschema", "true").load("s3://bucket/abc.xlsx")
spark-submit --jars s3://Bucket/spark-excel_2.11-0.12.4.jar test.py
Error:
Caused by: java.lang.NoClassDefFoundError: org/apache/commons/collections4/IteratorUtils
scenario2:
=========
df = spark.read.format("com.crealytics.spark.excel").option("header", "true").option("inferschema", "true").load("s3://bucket/abc.xlsx")
spark-submit --jars s3://Bucket/spark-excel_2.12-0.13.5.jar test.py
Error:
py4j.protocol.Py4JJavaError: An error occurred while calling o79.load.
: java.lang.NoSuchMethodError: scala.Product.$init$(Lscala/Product;)
Run Code Online (Sandbox Code Playgroud)
有人可以帮我解决这个问题吗?我感谢您的帮助 !