Amazon web services 红移表-查找表上查询的最后日期

Amazon web services 红移表-查找表上查询的最后日期,amazon-web-services,amazon-redshift,database-administration,Amazon Web Services,Amazon Redshift,Database Administration,我正在尝试清理我的小数据库,并尝试查看上次实际查询某些表的时间,但似乎找不到任何有关如何执行此操作的文档。我可以获得模式中所有表的列表和大小,但在轮询用户之前无法确定哪些表可能过时 有人知道一种方法来获取在红移中使用/查询表的最后日期吗 select schema, "table", size as GB from svv_table_info where schema = 'measure' or schema = 'mphd' or schema = '

我正在尝试清理我的小数据库,并尝试查看上次实际查询某些表的时间,但似乎找不到任何有关如何执行此操作的文档。我可以获得模式中所有表的列表和大小,但在轮询用户之前无法确定哪些表可能过时

有人知道一种方法来获取在红移中使用/查询表的最后日期吗

select
    schema,  
    "table",
     size as GB
from svv_table_info
    where schema = 'measure' or schema = 'mphd' or schema = 'offer'
order by schema asc;

您很可能需要在中解析条目,其中存储SQL查询

这可能更容易解析


这两个表都可以连接回以获取执行查询的时间。

您可以在
stl\u scan
中查看上次扫描表的时间。几乎所有select查询都将进行扫描。以下内容摘自:正如您所注意到的,历史记录只保存了一段有限的时间

SELECT tbl,
       MAX(endtime) last_scan,
       Nvl(COUNT(DISTINCT query || LPAD(segment,3,'0')),0) num_scans
FROM stl_scan s
WHERE s.userid > 1
AND   s.tbl IN (SELECT oid FROM tbl_ids)
GROUP BY tbl

然而,STL表只保存2-5天的历史记录,因此这只会告诉您最近是否查询过它。您可能需要开始将STL表卸载到S3文件中(Amazon推荐的方法)然后将它们加载到您自己的查询历史记录表中,并运行一段时间,以收集必要的数据量,以确定哪些表未在您的数据库中被查询。@Nathan您是否从amazon获得过他们推荐这种方法的资源?非常感谢。我所指的(对不起,我应该更具体)是启用数据库审计日志记录,它将查询活动写入S3。要分析这些日志,您可能需要将日志读回红移,或者在其上创建一个频谱表(或者使用其他工具)。