




























从上述日志中可以看出,添加索引后,PostgreSQL对tpch的22个查询大约在22分钟可以完成,没有需要特别长时间才能完成的测试,最长的第一个查询也不过6分钟多。
下面是各组查询测试结果,取实际运行时间。
▲表1 TPC-H scale=10各种压缩和索引数据的测试对比,单位:毫秒
从表1可知,如果没有索引,大部分查询都能正常执行,加上索引后,大部分查询的用时差别不大,但字体加粗的查询则有明显的提高,基本上没有查询时间恶化的情况。这说明PostgreSQL的查询优化器还是比较强大的,从下一节执行计划的输出中可以看出,它采用基于成本的优化器技术,并且用到了hash join等高效的方法。