我在互联网上能找到的唯一好的引用是 this whitepaper ,它解释了什么是数据库分层,但没有解释它是如何工作的:
The concept behind database tiering is the seamless co-existence of multiple (legacy and new) database technologies to best solve a business problem.
但是,它是如何实现的呢?它是如何工作的?
与此相关的任何链接也会有所帮助。谢谢。
最佳答案
我认为该文档的想法是将“便宜”的数据库放在“昂贵”的数据库之前以降低成本。
例如。让我们假设您有一个“昂贵”的数据库……比如 Oracle、DB2 甚至 MSSQL(更现实地说,这可能更多是遗留数据库系统的一个问题,它不受太多支持,或者您需要专门的资源来维护)。购买和维护成本很高的数据库引擎(可以说,当您考虑所有因素时,这些并不昂贵。但让我们以它们为例)。
现在,如果您突然出名并且您的服务器开始重载,您会怎么做?您是否购买更大的服务器并将所有数据迁移到该新服务器?那可能会非常昂贵。
使用分层解决方案,您可以将多个“廉价”数据库放在“昂贵”数据库的前面,以承担工作的重任。因此,您的 Web 服务器(或应用程序服务器)与一组 MySQL 服务器通信,而不是直接与昂贵的服务器通信。然后这些 MySQL 服务器处理大部分调用。例如,他们可以完全自己处理所有只读调用,只需要将写调用传回主数据库服务器。这些 MySQL 服务器随后通过标准复制实践保持同步。
使用这样的方法,理论上您可以将昂贵的服务器扩展到数十个(如果不是数百个)“廉价”数据库服务器,并处理更高的负载。
关于mysql - 数据库分层如何工作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3365091/