美文网首页
数据库元数据设计的维度和分层设计

数据库元数据设计的维度和分层设计

作者: jeanron | 来源:发表于2021-09-27 23:42 被阅读0次

对于元数据体系的建设思考,目前的设计是基于基础数据配置的管理,包括多个元数据维度的管理,在此基础上需要梳理基于系统场景的元数据设计,覆盖如备份恢复,监控报警,实例部署等层面的元数据管理信息,通过运维任务提炼得到系统流程; 然后基于业务需求来梳理相关的业务场景的元数据相关设计,如资源申请,权限申请等,逐步梳理出主干业务流程,其中每个层之间都是相对隔离的,每个层都需要开放相关的API,在业务层不能直接暴露ORM层的相关操作。

我们在此描述的主要是元数据的核心设计部分。

元数据维度可以按照业务维度和系统维度来综合考虑,其中业务维度相对简单,而系统维度结构和层次要复杂一些,但是业务维度的信息是基于系统维度的设计,如对于实例的概念,对于业务来说,实例,集群在业务中都是广义的实例范畴,所以接下来会按照系统维度的设计为主。

接口层:业务访问维度,基于app_code, 对外统一体现为实例,如单实例,主从,集群等,都是以实例的角色出现,不显示内部的数据信息(如不显示数据分片节点),接口层数据源自代理层,接口层的数据为只读模式,数据可刷新

代理层:代理层是设计中逻辑关系最为关键的一层,承上启下,其中单实例在代理层需要体现service_name, 基于MHA的环境需要体现Consul或VIP的service_name,如果是集群,则需要在其中体现中间件和数据分片;如果是分布式集群,仅显示对外服务层(如TiDB中显示Server层,如果有多个Server,则显示多个。

拓扑层:是逻辑关系最复杂的一层,需要支持多种拓扑结构,比如一主一从,一主多从,级联复制,双主复制等,其中单实例是一种特殊的复制拓扑,也需要体现,此外还需要支持分布式模型,在分布式模型中,多个节点是相对独立的角色,无法体现多个节点间的映射。

实例层:实例层是整体元数据的基座,以IP+端口来唯一标识,实例层按照计算存储分离的模式来考虑,不光包含数据库实例信息,还包括中间件的相关信息,实例层是连接数据库层的重要环节。

主机层:主机层的信息相对独立,主要是主机层的基础信息,可以通过外部接口进行提取,并保持周期性刷新。

实例和集群的关系

数据库实例是基础的服务单元,按照实例角色可以分为单实例,主库实例,从库实例和级联实例。

 

集群类型分为高可用集群,分布式集群(分库分表),分布式集群(NewSQL体系)

高可用集群:多个主从实例,如一主一从或者一主多从

分布式集群(分库分表):多个数据库实例(通常一组主从实例为一个高可用集群)和少量数据库中间件(通常1~3个做负载均衡)

分布式集群(NewSQL体系):按照存储计算分离模式,有计算节点,存储节点和配置管理节点,基于分布式协议实现分布式存储管理

 

同时,集群维度和实例维度会有明显差异的运维管理流程,从长远来看,以集群形式交付和以实例形式交付是根据业务需求来共同决定,会长期共存。

 

综上,集群和实例的含义有一些交叉,但是又有明显的区别,按照规范程度来说,实例应该尽可能以高可用集群的基础架构形式出现,同时按照数据存储水平扩展需要可重构成分布式集群(分库分表)架构,同时因为现状和使用的差异,会存在单实例,普通的主从等环境。

 

所以元数据的维度有实例和集群的明显差异,但是在元数据设计中却需要把两者有效结合起来,元数据为和元数据分层的对应关系为:

相关文章

  • 数据库元数据设计的维度和分层设计

    对于元数据体系的建设思考,目前的设计是基于基础数据配置的管理,包括多个元数据维度的管理,在此基础上需要梳理基于系统...

  • 数据仓库设计

    数据仓库--事实表 数据仓库--事实表和维度表 DW数据仓库分层模型设计 如何优雅地设计数据分层 ODS DW D...

  • 第二章 在线教育平台(数据库设计)

    数据库设计(model分层设计) 标签:mysql python2.7 django1.9.8 APP分类 Use...

  • 一个数据管理工具的设计资料说明

    程序说明 主要用于直接操作数据库。 架构设计 分层结构设计 C# WPF桌面程序分层结构设计 MVVM设计模式 C...

  • 数据库设计

    一、数据库设计概念 1. 数据库的生命周期 ①数据库分析与设计阶段包括需求分析、概念设计、逻辑设计和物理设计。②数...

  • Power Designer—数据库设计步骤

    数据库设计步骤 需求分析 — 概念结构设计 — 逻辑结构设计 — 物理结构设计 — 数据库的建立和测试 — 数据库...

  • 数据库设计

    第六章 数据库设计 学习重点: 数据库设计的基本步骤; 数据库设计各阶段的具体设计内容; 数据库设计各阶段的设计描...

  • 数据库逻辑设计

    数据库设计 数据库设计包含需求设计、逻辑设计、物理设计和维护优化。 需求分析:全面了解产品设计的存储需求(存储需求...

  • 阿里数据库开发规范:谁还敢说你的数据库设计的“烂”

    数据库设计几个规范: 数据库命名规范、数据库基本设计规范、数据库索引设计规范、数据库字段设计规范、数据库SQL开发...

  • MySQL之规范数据库设计

    九、规范数据库设计 1.为什么需要设计? 1)糟糕的数据库设计:①数据冗余,浪费空间。②数据库插入和删除都会很麻烦...

网友评论

      本文标题:数据库元数据设计的维度和分层设计

      本文链接:https://www.haomeiwen.com/subject/twclnltx.html