目前,在我们的项目中,我们为 PostgreSQL 数据库使用专用服务器。
理论上,我们可以在一些云平台上运行任何东西。但是,PostgreSQL 配置与硬件配置严格相关。我们正在寻找的是具有原生 PostgreSQL 支持的云解决方案。
以下是所需功能的列表:
那么这样的服务有哪些选择和最佳选择呢?
将事务日志 ( *.ldf
) 放在与数据库文件 ( *.mdf
, *.ndf
)不同的物理磁盘系统上是一种常见的做法。
在虚拟机云环境中,事务日志可以和其他数据文件放在同一个盘符上吗?这在当今流行的云虚拟机环境中通常是如何处理的。
注意:不使用 SQL Azure。使用具有完全访问权限的 Windows 虚拟机。
如果我错了,请纠正我,但我想通过添加更多机器或平衡多个服务器之间的负载来处理更多请求和负载是水平扩展。那么,如果我添加更多服务器,我该如何分发数据库?我是否创建一个数据库来保存多台服务器的用户记录?还是我也要拆分数据库?数据库完整性如何?如何同步呢?不然我怎么办?我是一个新手,真的很困惑,但渴望学习。我想在我的项目中使用 postgres,并且想在开始之前了解一些基本的东西。我正在考虑使用两个小的 ec2 实例。但是我对数据库感到困惑。我如何着手创建数据库。我需要为此进行分片吗?根据 postgres,水平缩放的最佳方法是什么?如果您能向我解释一下,我将不胜感激。谢谢!
编辑:
如何使用多台机器进行负载均衡并管理数据库?
我有一个用户可以上传视频的应用程序,它将使用 Elastic Transcoder 转换为 mp4。用户约10k。那么,如何使用多台机器进行负载均衡并管理数据库呢?我想做的是性能负载平衡。我在很多帖子中读到添加更多机器可以利用它。所以我认为水平缩放。但是由于水平扩展很可怕,我如何负载平衡和管理我的数据库?
我们有一个 galera 集群,有 3 个节点,在 3 台不同的物理机器上,但都位于同一个数据中心。
据我了解,他们过去部署此功能的原因是为了提高可用性和可靠性,DC 故障不是问题。每个节点都安装在使用 12 个内核和 4Gb RAM 的 VM 上。(根据我所做的监控,我们可以将使用的内核数量减少到 4 个)
我们被要求将其迁移到 Google Cloup Platform 以摆脱操作任务。我可以创建 3 个计算引擎实例并部署 galera 集群,GCP 甚至有 Percona XtraDB Cluster 一键部署服务,但与具有复制和备份的 Cloud SQL 实例相比,我很难看到附加值。我对扩展重负载系统不是很熟悉。
托管在这些节点中的数据库非常关键,应确保最大的可用性和可靠性。
为了将此架构迁移到 GCP,我应该采用什么策略?
我可以毫无问题地将 SQL Server 备份到本地磁盘,但我现在需要备份到我可以访问的云磁盘或网络文件夹。执行此操作的最佳做法是什么?
cloud ×5
postgresql ×2
sql-server ×2
azure-vm ×1
backup ×1
galera ×1
percona ×1
scalability ×1