postgres 流式复制 - 仅从属索引
postgres streaming replication - slave only index
我们已经成功部署了带有流复制(WAL 复制)的 Postgres 9.3。我们目前有 2 个奴隶,第二个奴隶是第一个奴隶的级联奴隶。两个从站都是热备用的,正在使用活动的只读连接。
由于负载,我们想创建第三个从属,其硬件规格略有不同,并且不同的应用程序将其用作更多数据仓库用例中的只读数据库。由于它是针对不同的应用程序,我们希望专门针对该应用程序对其进行优化,并通过使用一些额外的索引来提高性能。出于大小和性能目的,我们宁愿不在主服务器或其他 2 个从服务器上使用这些索引。
所以我的主要问题是,我们可以在从属服务器上为流式复制创建不同的索引吗?如果不能,是否还有另一种我错过的数据仓库技术?
So my main question is, can we create different indexes on slaves for streaming replication
不,你不能。流式物理复制工作在比这更低的级别,复制磁盘块。它并没有真正关注 "this is an index update," "this is an insert into a table," 等。它没有维护仅备用索引所需的信息。
and if not, is there another data warehouse technique that I'm missing out on?
逻辑复制解决方案,如:
- 伦敦
- pglogical
- Slony-I
可以为所欲为。他们发送行更改,因此辅助服务器可以有额外的索引。
我们已经成功部署了带有流复制(WAL 复制)的 Postgres 9.3。我们目前有 2 个奴隶,第二个奴隶是第一个奴隶的级联奴隶。两个从站都是热备用的,正在使用活动的只读连接。
由于负载,我们想创建第三个从属,其硬件规格略有不同,并且不同的应用程序将其用作更多数据仓库用例中的只读数据库。由于它是针对不同的应用程序,我们希望专门针对该应用程序对其进行优化,并通过使用一些额外的索引来提高性能。出于大小和性能目的,我们宁愿不在主服务器或其他 2 个从服务器上使用这些索引。
所以我的主要问题是,我们可以在从属服务器上为流式复制创建不同的索引吗?如果不能,是否还有另一种我错过的数据仓库技术?
So my main question is, can we create different indexes on slaves for streaming replication
不,你不能。流式物理复制工作在比这更低的级别,复制磁盘块。它并没有真正关注 "this is an index update," "this is an insert into a table," 等。它没有维护仅备用索引所需的信息。
and if not, is there another data warehouse technique that I'm missing out on?
逻辑复制解决方案,如:
- 伦敦
- pglogical
- Slony-I
可以为所欲为。他们发送行更改,因此辅助服务器可以有额外的索引。