Я сталкиваюсь с сообщением об ошибке, когда я вызываю файл S3 parquet, а затем перезаписываю путь, но работает нормально, если я использовал append. Приведенный ниже код является лишь некоторыми частями всего сценария
df = spark.read.format("jdbc")
.option("driver", jdbc_driver_name)
.option("url", db_url)
.option("dbtable", table_name)
.option("user", db_username)
.option("password", db_password)
.option("fetchSize", 100000).load()
load_test = spark.read.parquet("s3://s3-raw/test_table")
new_test = df.withColumn("load_timestamp", unix_timestamp(lit(timestamp),'yyyy-MM-dd HH:mm:ss').cast("timestamp"))
new_test.write.partitionBy("load_timestamp").format("parquet").mode("overwrite").save("s3://s3-raw/test_table")
Я попытался отредактировать код (см. Ниже), и теперь он может вызывать файл партера S3, а затем перезаписывать путь, но когда я проверял путь S3 (s3: // s3-raw / test_table) разделенная таблица, которая является load_timestamp, доступна там, но внутри нет данных. Когда я просканировал его в каталог данных и запросил на AWS Афина, ожидаемый результат доступен там.