我将为一个新的Postgres数据仓库获得一个带有电池支持的写缓存的SAN,并且不确定要应用什么设置才能正确地使用它。如果在SAN中启用了缓存,那么这足够了吗?还是我需要设置wal_sync_method、synchronous_commit或其他呢?
一旦打开当前数据源,仓库将每天处理5000万行插入。这种情况在未来很可能会增长。
我们将使用Postrges 9.3和最有可能的Centos 6.4。
提前谢谢。
发布于 2014-02-23 20:28:31
我收集了一些你应该读的链接:
基本上,您的工作流程可能如下所示,它是上述链接的所有提示的组合:
fsync。synchronous_commit设置为"off“,则将其设置为"on”(或"local")。diskchecker.pl只是为了了解您是否购买了一些好的东西,并且它的配置是否正确。show wal_sync_method;自动选择的同步方法postgrespg_test_fsyncFLUSH CACHE EXT/SYNCHRONIZE CACHE问题的影响。wal_sync_method设置为什么值。full_page_writes (见最后一段)。请注意,这似乎非常可靠,但引用了上面的一个链接:
对电池备份方法持批评态度的人认为,如果你在负载下运行这样一个系统,那么这种相对复杂的缓存方法最终会出现故障,它将以一种几乎不可能检测到或无法恢复的方式破坏数据库。
因此,即使有一个BBU和一个正确配置的服务器实例,这也没有消除定期备份所有内容的负担,也没有消除丢失某些数据的可能性。
我不对任何丢失的数据负责;)既不是因为这里缺乏建议,也不是因为一个错误的提示,也不是通过任何其他途径。
https://dba.stackexchange.com/questions/59379
复制相似问题