分布式数据库是部署在物理机环境还是虚拟化+物理机共存的,还是虚拟机/容器环境
解读:
1、类型:OLTP应用场景的分布式数据库产品
2、环境:物理服务器、虚拟机、容器
建议:
1、容器:是没有任何意义价值的,采用容器不如直接要求数据库产品厂商直接采用Cgroup 技术实现底层资源的隔离。容器也是采用Cgroup实现底层资源的隔离,去掉容器则还能省下资源和减少一层故障点。
容器适合版本更新频繁且无状态的软件运行环境,数据库是一个有状态的软件、版本若无重大缺陷或安全漏洞则不会更新版本,故也不适合。
2、虚拟机:若是生产环境只有虚拟机资源,甚至因公司管理要求而必须采用虚拟机的模式,那么就只能采用虚拟机部署分布式数据库产品。例如:中国移动10086电话的业务系统及数据库就是全部虚拟机部署的。
3、物理机:按正常而言采用物理机部署,还可以省去虚拟化软件许可授权,同时借助分布式数据库自己的资源隔离和多租户来实现控制。
4、总结
4.1 按业主方内部的要求或称条件来定义,推荐虚拟机或物理机 都可以,不推荐容器。
4.2 部分数据库产品对硬件设备有特殊要求则必须物理机,例如:OB、TiDB。大多数数据库产品对硬件设备无依赖则可以自由选择,例如:TDSQL、GoldenDB、HotDB、GaussDB。
收起核心的对磁盘IO要求高的数据库尽量部署物理机
普通的对IO要求不高的(例如读类型、报表类型)的可以部署在虚拟机(虚拟机最低要配置含固态硬盘的混合型存储,配置万兆存储网络)
物理节点直接部署。虚拟机部署可以作为测试库,边缘库,容灾库。
生产库建议纯物理集群部署,性能要求和稳定性有保障。
在银行行业中,分布式数据库的部署方式通常是虚拟化+物理机共存的方式。这种方式可以充分利用物理机的性能,同时也可以通过虚拟化技术实现资源的灵活调度和管理,提高系统的可用性和可扩展性。
具体来说,银行行业中的分布式数据库通常会采用虚拟化技术,将数据库部署在虚拟机或容器环境中,然后通过虚拟化技术将虚拟机或容器映射到物理机上。这样可以实现多个虚拟机或容器共享同一个物理机的资源,从而提高资源利用率。
同时,为了保证数据的安全性和可靠性,银行行业中的分布式数据库通常会采用多副本机制,将数据复制到多个节点上,从而实现数据的冗余备份和容错能力。这种方式也需要虚拟化技术的支持,以便在虚拟机或容器发生故障时能够快速切换到其他节点上,保证系统的稳定性和可用性。