1

我是去年的大学生,现在正在做我的论文。我的题目是“基于日志分析的索引建议”。该项目将分析 PostgreSQL 事务日志,为将要测试的数据库提供索引推荐。

本研究将通过分析经常访问的属性(使用 SELECT 语句)来开发索引推荐工具。

但我发现很难找到 PostgreSQL 日志文件。我的问题是,我在哪里可以找到 PostgreSQL 日志事务数据集?或者可能是其他数据库日志事务数据集?

4

1 回答 1

2

您正在混淆事务日志 (WAL) 和常规文本日志文件。

后者确实包含语句(如果配置是这样设置的),而事务日志根本不包含语句,只是关于哪个块中发生了什么变化的二进制信息。

您将无法仅通过查看查询来推荐索引,我也不能这样做。

我有一个建议给你:如果你想编写一个建议索引的工具,它应该将输出EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) SELECT /* your query */作为输入。

此外,该工具必须连接到数据库才能查询表和索引元数据(可能还有统计信息)。这使您依赖于数据库版本,因为元数据可以更改(并且确实 - 请参阅分区表),但这在论文中不会引起您太多关注。

任务仍然不简单(查询优化是人工智能),但你至少有机会。

于 2019-02-21T04:28:02.997 回答