1

我是 Postgres 的新手。

我们使用 Postgres 在我们的项目中实现了 SCD type-2。输入文件是一个完整的刷新文件,每天大约有 3000 万条记录。

帐号是关键列。

新记录的大约数量为 20K/天。如果源中缺少记录,则该记录将在目标中以结束日期关闭。关闭的大约记录数 - 10k/天

查询的运行时间正在稳步增加。索引是否有助于加快进程?

对要使用的索引有什么建议吗?

4

2 回答 2

0

这 3000 万条记录是否存储为数据库中的每一行?好吧,如果是这样,那么索引(创建和维护)许多记录在某种程度上也将成为数据库的负担。但是,PostgreSQL 引入的这个新索引称为BRIN Index它可能会对您有所帮助。几个月前我写了一篇关于这个的博客。您可以查看它,显然可以对其进行更多研究。

http://blog.bajratechnologies.com/2016/09/16/Postgres-BRIN-Index/

于 2016-10-18T01:57:54.793 回答
0

您将不得不查看慢速查询的执行计划,以确定索引是否有帮助以及您应该创建哪些索引。

正确的索引通常对查询有很大帮助,并且使用只读数据库,您可以根据需要创建任意数量的索引。

您应该确保在加载表创建任何索引,因为索引会大大降低插入速度。在每日加载之前删除并重新创建表,或者截断并删除所有索引。

于 2016-10-18T13:23:25.130 回答