我试图理解新的CockroackDB与其他分布式SQL数据库之间的区别,而不是像这样的云管理数据库。
它们之间的用例似乎没有什么区别:
在我看来,云SQL数据库涵盖了较新的分布式数据库所涵盖的所有用例,那么我为什么要使用新的产品呢?
不是Azure基本上是一个分布式数据库服务器吗?
我漏掉了什么吗?
发布于 2022-07-14 12:28:28
Azure SQL Server是分布式SQL数据库吗?
不是的。
与各种NOSQL数据库一样,SQL (通常)允许分区键。
- Cassandra nodes are physically different machines that can run independently, which gives it excellent resiliency.- On on-prem MS SQL Server, these row-groups (well, _partitions_) can exist in different `FILEGROUP`s, which means they can exist in different storage volumes to avoid IO bottlenecks, but Azure SQL does not support multiple `FILEGROUP`s.
- [The benefits of implementing partitioning, including on Azure SQL, are documented online](https://learn.microsoft.com/en-us/sql/relational-databases/partitions/partitioned-tables-and-indexes) - and the article explains how it's about performance, not resilience.我可以添加核心在Azure,以增加性能的需要,我也可以切换到超规模,如果我有弹性的工作量。
这个事实与分布式数据库完全无关。
我可以在多个可用区域(地理位置)上读取多个节点的复制。 我也可以在Azure SQL数据库中配置数据复制。
INSERT/UPDATE/DELETE/MERGE)或DDL (CREATE/ALTER),则客户端必须连接到主服务器。在我看来,云SQL数据库涵盖了较新的分布式数据库所涵盖的所有用例,那么我为什么要使用新的产品呢?
它不能:因为Azure不是一个分布式数据库,它不能允许任何客户机读取和写入任何节点或端点,并将更改复制到所有其他节点(使用最终的一致性模型)。相反,Azure SQL需要由单个主“服务器”执行写操作。
请注意,Azure SQL "server“或很大程度上是一种抽象,它隐藏了Azure SQL的本质:在一个单独的Azure数据中心中运行在高可用性Azure Service Fabric环境中的Server引擎的独特构建(这是在运行时可以添加和删除内核/RAM,并提供某种本地抗硬件故障的能力)。
https://stackoverflow.com/questions/72980235
复制相似问题