数据库的体系架构和系统架构理解

97 阅读1分钟

有很多地方提到数据库架构,说法不一,比如有说:

  • 数据库架构
  • 数据库体系架构
  • 数据库系统架构

于是就想这几个叫法是否相同的含义呢,细细品来,还是有一些区别的

比如对于MySQL数据库来说

如果单单说数据库架构,可能我们通常的理解是数据库的集群架构,比如:

  • 一主N从
  • 双主
  • 组复制
  • 等等

对于体系架构和系统架构,问了下chatgpt,chatgpt的回答是这是两个不同的概念:

  • 体系架构

    • 指数据库管理系统(DBMS)的组织结构和设计原则,它决定了数据库系统的组成部分及它们之间的关系,例如数据存储、数据访问、查询处理等
  • 系统架构

    • 指整个系统的设计和组织结构,包括硬件、软件、网络、数据等方面,系统架构决定了系统的整体性能、可扩展性、可靠性等

这样理解的话,我们是不是可以这么说:

  • MySQL的体系架构包括:

    • Server层和引擎层
      • 其中Server层包括:SQL接口、解析器、优化器等等
      • 引擎层支持多种引擎:InnoDB,Memory等等
  • MySQL的系统架构包括:

    • 客户端、MySQL服务端、文件系统

附官方文档图: image.png

其实是看到OceanBase的这个图,引发的一点点小思考,哈,这里是否叫OceanBase数据库系统架构更为贴切呢,倒也不打紧,都可以理解 www.oceanbase.com/docs/common…