只想问一下清单文件和元数据文件的行为。这两个文件是在s3中查询完成并生成输出后创建的,还是在您开始在雅典娜中查询时立即创建的?
提前谢谢你。
发布于 2020-11-17 11:42:59
文档中没有包含关于这种行为的明确信息,但是使用其中的内容加上快速测试可能会对此有所了解。
根据使用查询结果、输出文件和查询历史记录文档页面,我们知道一些事情:
Amazon自动存储运行在查询结果位置中的每个查询的查询结果和元数据信息,这些查询可以在S3中指定。..。无论查询本身是否保存,运行的每个查询都会自动保存输出文件。
元数据文件总是被创建,并且与查询结果密切相关;清单文件只是为插入类型的查询而创建的:
在运行INSERT INSERT查询时,生成数据清单文件来跟踪雅典娜在亚马逊S3数据源位置中创建的文件。如果查询失败,清单还跟踪查询要写入的文件。
我试图运行一个查询,正如您可以看到的那样,它是在11:29:53 UTC执行的,它持续了20.52秒。

检查相应位置的元数据对象,我们可以看到对象最后一次修改是在11:30:14 UTC (查询提交后20秒)。


基于上述--这显然不是一个统计上有意义的示例--我们可以看到元数据文件是在提交查询之后和完成运行之前在某个时候创建的。
考虑到AWS没有在任何地方指定这一点,我的建议是不依赖于文件存在或不跟踪查询执行/完成的事实。如果这是您的用例,则应该使用相应的QueryId通过API检查查询的状态。
https://stackoverflow.com/questions/64872304
复制相似问题