title: CMDB 数据库设计

tags: Django

CMDB数据库设计

具体的资产

服务器表和网卡、内存、硬盘是一对多的关系,一个服务器可以有多个网卡、多个内存、多个硬盘

hostname设置成unique=True,唯一

硬盘有多个槽位,slot,最后入库的时候数据也是根据槽位进行的操作

related_name

server_obj = models.ForeignKey('Server', related_name='disk')

通过Server的对象obj,通过related_name 就能反向关联到Disk表,这就是代替了小写的表明_set

网络设备也是资产信息,所以需要资产信息表,和服务器表的关系是一对一关系

IDC机房

用户相关

资产需要划分部门,实际上就是业务线表,部门表和资产表也是一对多的关系,一个部门可以有多个资产

每条业务线是由相应的运维人员负责的,对应运维需要设置运维组,运维和运维组之间是多对多的关系,最终就是一条业务线有多个运维组负责,每个业务线还需要有专门的业务联系人,负责处理紧急业务线问题,如宕机等

资产信息变更

资产信息变更表,关联的是资产表Assert,资产信息的变更有两种,一种是自动采集,一种是用户进行的变更,自动的采集的是没有用户的

错误日志信息

采集错误的时候,堆栈的错误信息会显示,所以需要错误日志表

O2O

O2O

O2O

O2O

FK

FK

FK

FK

FK

FK

资产表

资产表

FK

FK

FK

FK

FK

FK

服务器表

[Not supported by viewer]

网络设备

网络设备

网卡

网卡

硬盘

硬盘

内存

内存

交换机

[Not supported by viewer]

防火墙

[Not supported by viewer]

O2O

O2O

用户表

用户表

管理员表

管理员表

FK

FK

FK

FK

FK

FK

用户组表

用户组表

M2M

M2M

M2M

M2M

用户和用户组关系表

用户和用户组关系表

FK

FK

业务线表

业务线表

业务联系人

业务联系人

业务管理员

业务管理员

资产信息变更表

资产信息变更表

IDC机房

IDC机房

创建资产变更的用户,可以为空

创建资产变更的用户,可以为空

错误日志表

错误日志表

O2O:一对一

O2O:一对一

FK:外键

FK:外键

M2M:多对多

M2M:多对多

CMDB数据库图:

https://www.draw.io/?lightbox=1&highlight=0000ff&edit=_blank&layers=1&nav=1&title=CMDB 数据库设计.xml#Uhttps%3A%2F%2Fraw.githubusercontent.com%2Fythzx%2FOnlinenmap_flow%2Fmaster%2FCMDB%20%E6%95%B0%E6%8D%AE%E5%BA%93%E8%AE%BE%E8%AE%A1.xml

在页面中添加svg,


<div width="100%" style="overflow-x: auto;">
<svg width="140" height="170">
<title>SVG Sample</title>
<desc>This is a sample to use SVG in markdown on the website cnblogs.</desc>
<circle cx="70" cy="95" r="50" style="stroke: black; fill: none;"/>
</svg>
</div>

参考的内容:

http://www.cnblogs.com/steven-yang/p/5689577.html

CMDB数据库设计的更多相关文章

  1. CMDB经验分享之 – 剖析CMDB的设计过程

    作为IT管理的核心,CMDB逐渐成为系统管理项目实施的热点.在很多的案例中,由于忽视了CMDB的因素,ITIL的深入应用受到了极大的挑战.同时,由于CMDB是IT管理信息的集中,CMDB也是一个重要的 ...

  2. 数据库设计中的Soft Delete模式

    最近几天有点忙,所以我们今天来一篇短的,简单地介绍一下数据库设计中的一种模式——Soft Delete. 可以说,该模式毁誉参半,甚至有非常多的人认为该模式是一个Anti-Pattern.因此在本篇文 ...

  3. 使用django开发博客过程记录1——数据库设计

    1.数据库设计 2.插入测试数据 3.配置相关问题 1.数据库设计 数据库有简单的三张表:Article.Category.Tag以下是代码 # -*- coding:utf-8 -*- from _ ...

  4. 基于SSM的租赁管理系统0.3_20161225_数据库设计

    数据库设计 1. 概念模型 2. 类模型 3. 生成SQL use test; /*========================================================== ...

  5. 第二天ci项目规划 数据库设计

    第二天ci项目规划 数据库设计 商品 + 用户 + 订单 数据库设计思想和方法 关于商品品牌 ,分类 ,属性 如何表示 用一个字段 还是再设计一张表 品牌和商品 是一种信息 还是两种信息 一张表一般只 ...

  6. 优化MySchool数据库设计之【巅峰对决】

    优化MySchool数据库设计 之独孤九剑 船舶停靠在港湾是很安全的,但这不是造船的目的 By:北大青鸟五道口原玉明老师 1.学习方法: 01.找一本好书 初始阶段不适合,可以放到第二个阶段,看到知识 ...

  7. 从零开始编写自己的C#框架(9)——数据库设计与创建

    对于千万级与百万级数据库设计是有所区别的,由于本项目是基于中小型软件开发框架来设计,记录量相对会比较少,所以数据库设计时考虑的角度是:与开发相结合:空间换性能:空间换开发效率:减少null异常.... ...

  8. 数据库设计(1/9):数据元(Data Elements)

    对于设计和创建数据库完全是个新手?没关系,Joe Celko,世界上读者数量最多的SQL作者之一,会告诉你这些基础.和往常一样,即使是最专业的数据库老手,也会给他们带来惊喜.Joe是DMBS杂志是多年 ...

  9. ABP 初探 之User、Role、Permission数据库设计 (EntityFramework 继承的另一种使用方法)

    最近群里(134710707)的朋友都在讨论ABP源码,我把最近学习的内容记录下来,同时也分享给大家,希望正在研究ABP源码的朋友有一定帮助. 上篇介绍ABP的多语言,本篇主要介绍权限的数据库设计,用 ...

随机推荐

  1. NHibernate 打不开工厂有可能是这几个原因

    1. 属性必须虚拟化. 2.属性必须要有Id 字段 3.数据库必须要是创建好的数据库.

  2. 转换嵌套JSON数据为TABLE

    先准备一些数据: 创建一张临时表来存储: DECLARE @json_table AS TABLE ( [type] NVARCHAR(MAX), [desc] NVARCHAR(MAX) ) Sou ...

  3. jmeter压力测试报告

    XXX压力测试报告 时间:2015-08-04                                             测试人员:xxx 目录 XXX压力测试报告... 1 一  测试 ...

  4. 文本情感分析(一):基于词袋模型(VSM、LSA、n-gram)的文本表示

    现在自然语言处理用深度学习做的比较多,我还没试过用传统的监督学习方法做分类器,比如SVM.Xgboost.随机森林,来训练模型.因此,用Kaggle上经典的电影评论情感分析题,来学习如何用传统机器学习 ...

  5. Python中生成随机数

    目录 1. random模块 1.1 设置随机种子 1.2 random模块中的方法 1.3 使用:生成整形随机数 1.3 使用:生成序列随机数 1.4 使用:生成随机实值分布 2. numpy.ra ...

  6. 2014-9-13 NOIP模拟赛

    NOIP2014模拟赛 ——lwher 题目名 环上的游戏 舞蹈课 数位和乘积 源文件 cycle.cpp/c/pas dancingLessons.pas/cpp digit.cpp.cpp/c/p ...

  7. 剑指Offer的学习笔记(C#篇)-- 用两个栈实现队列

    题目描述 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 一 . 概念! 首先要理解栈和队列的概念. 1. 栈:咱可以简单的把栈理解成装羽毛球的球桶.或者我们吃的 ...

  8. linux 之基本命令学习总结

    前言:从今天开始写这系列linux博客了(是学习刘遄老师的<linux就该这么学>),视频学习的资源可以在b站上找到:https://www.bilibili.com/video/av45 ...

  9. 洛谷 P1908 逆序对(归并排序解法)

    树状数组解法:https://www.cnblogs.com/lipeiyi520/p/10846927.html 题目描述 猫猫TOM和小老鼠JERRY最近又较量上了,但是毕竟都是成年人,他们已经不 ...

  10. Python-12-简单推导

    列表推导:从其他列表创建列表 >>> [x * x for x in range(10)] [0, 1, 4, 9, 16, 25, 36, 49, 64, 81] 下面实现只打印能 ...