将 Spark 数据帧导出到 Athena



我正在运行一个 pyspark 作业,该作业创建一个数据帧并将其存储到 S3,如下所示:

df.write.saveAsTable(table_name, format="orc", mode="overwrite", path=s3_path)

我可以毫无问题地读取 orcfile,只需使用 spark.read.orc(s3_path) ,因此 orcfile 中有架构信息,正如预期的那样。

但是,我真的很想使用 Athena 查看数据帧内容。 显然,如果我写到我的 hive 元存储,我可以调用 hive 并执行show create table ${table_name},但是当我想要的只是一个简单的架构时,这是很多工作。

还有别的办法吗?

其中

一种方法是为 S3 路径设置 Glue 爬网程序,这将在 AWS Glue 数据目录中创建一个表。或者,您可以通过粘附 API 创建粘附表定义。

AWS Glue

数据目录与 Athena 完全集成,因此您可以在 Athena 中看到您的 Glue 表,并能够直接查询它:http://docs.aws.amazon.com/athena/latest/ug/glue-athena.html

最新更新