Usually RDBMS just have only one primary server for writing, so what's the point of virtualization?

It cannot make multi-DB, and one additional layer of encapsulation does not mean that the speed will be slowed.

But I know there's a reason for exist, what are the scenarios that are particularly suitable for database virtualization?

有帮助吗?

解决方案

First the assumption that databases have one primary write server is incorrect. A lot of set ups have multi- master configs and clusters. There are also distributed database systems where data is written to different servers based on various conditions.

Though not required, database can still be containerized, especially when dealing with microservices. Each microservice can have its own database and it all depends on how your infrastructure has been architected.

Here is a small excerpt for a good read. I am linking the article as it's too big to copy paste here

A containerized database is an encapsulation of its DBMS server software, with access to a physical database file residing somewhere within the network. Each DBMS is encased in its own container image. Containerizing a database, however, is not quite as straightforward as containerizing an application.

其他提示

Personally, I really like the idea of putting a golden set of data in a VM or container for QA testing. Spin up a new VM/container for each project and you can test it in isolation. When testing is complete, it goes away cleanly. You can do the same thing for development: Think git branches.

I can't tell you how many times I've had projects look like they were failing because someone mucked up the data in the dev/qa environment to test a different project.

许可以下: CC-BY-SA归因
不隶属于 dba.stackexchange
scroll top