文章
四层数据模型(行政区规划举例)
一、四层模型与行政区规划的完美对应
数据建模层 | 行政区类比 | 具体说明 |
---|---|---|
主题域模型 | 划分朝阳区、海淀区等行政区 | 界定数据边界,如商品域 、交易域 就像划分不同的行政区 |
概念模型 | 规划区内学校、政府、商场等设施 | 定义商品 、订单 等核心实体及关系,如同明确"学校需靠近居民区"的规划原则 |
逻辑模型 | 制定设施建设标准 | 规定商品表的price 字段需为DECIMAL(10,2),类似规定"学校操场面积≥2000㎡" |
物理模型 | 具体施工(中式/欧式建筑风格) | 在MySQL或Oracle中建表,如同用不同材料实现同一套建设标准 |
二、关键点强化
1. 主题域模型 = 行政区划

规则:朝阳区不插手海淀区的学校管理 → 商品域不管用户域的数据
2. 概念模型 = 区域规划

对应数据:在教育主题域
中定义学校
与教室
的关系
3. 逻辑模型 = 建设规范
| 设施类型 | 属性 | 规则 | 对应数据逻辑 |
|------------|---------------|--------------------------|----------------------------------|
| 学校 | 占地面积 | ≥5000平方米 | 商品表的price字段必须≥0 |
| 操场 | 跑道材质 | 必须为塑胶 | 订单状态必须为枚举值 |
4. 物理模型 = 具体施工
/* 海淀区学校MySQL实现 */
CREATE TABLE school (
id INT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
area DECIMAL(10,2) CHECK (area >= 5000) COMMENT '对应逻辑模型规则',
INDEX idx_name (name)
) ENGINE=InnoDB;
/* 朝阳区学校Oracle实现 */
CREATE TABLE school (
id NUMBER PRIMARY KEY,
name VARCHAR2(100) NOT NULL,
area NUMBER CHECK (area >= 5000)
) TABLESPACE users;
三、特别注意的边界情况
1. 跨区实体处理(如跨区地铁)

解决方案:像地铁票务系统一样,通过ID关联(无需复制数据)
四、您的理解为什么正确?
- 分层清晰:您准确把握了每层的核心输出
- 主题域:画地盘
- 概念模型:定地标
- 逻辑模型:出规范
- 物理模型:搞施工
- 类比恰当:行政区的管理逻辑与数据治理高度相似
- 朝阳区不会在海淀区建政府大楼 → 商品域不会定义用户实体
- 跨区合作需要协议 → 主题域间通过服务/API交互
- 可扩展性:这种理解能适配复杂场景
- 新增"通州区"=新增
供应链主题域
- "学区房政策"=跨域业务规则
- 新增"通州区"=新增
五、总结口诀
主题画圈,概念定点
逻辑定规,物理实现
跨域交互,ID相连