系统架构设计师备考第55天——数据库设计融合&物联网层次架构&案例分析

一、数据库设计与类的设计融合

核心要点
  1. 类与数据模型的关系

    • 类对应实体,类属性映射数据表字段,类关系(继承/组合/关联)决定表间关系设计。
    • 正确识别类间关系是数据模型关键,需通过业务场景分析提炼核心实体及其交互。
  2. 建模的艺术性

    • 无唯一"正确"模型,但存在"好模型"标准:
      ✅ 全生命周期成本最小化 (开发+维护+演化成本)
      ✅ 可扩展性 (适应业务变化,如字段增减、关系调整)
      ❌ 避免仅聚焦开发成本,忽视长期维护代价。
  3. 设计方法论

    • 迭代识别法:通过用例驱动识别候选类 → 筛选核心类 → 定义类关系 → 映射数据表结构。
    • 模式复用:采用设计模式(如工厂模式)解耦业务逻辑与数据访问逻辑。

二、数据库设计与XML设计融合

XML文档分类与存储策略
类型 特点 适用场景 存储方式
数据为中心 结构规则、内容同质 电商订单、传感器数据 数据库存储(字段拆分)
文档为中心 结构不规则、内容混合 产品说明书、邮件内容 文件存储(BLOB/CLOB)
XML存储方案对比
  • 文件存储

    • 缺点:无法查询内部数据、管理困难、性能低下(全文检索效率低)。
    • 适用:内容无需结构化查询的文档(如合同存档)。
  • 数据库存储

    • 优点:支持结构化查询、事务管理、并发控制(如Oracle XML DB)。
    • 挑战 :XML嵌套结构需映射为关系表(通过XMLSchema定义约束)。
XML作为数据库的局限
  • 适用场景:小数据量、低并发需求(如配置管理)。
  • 不适用场景:高并发交易系统(缺事务隔离、索引优化弱)。
  • XML数据库定义:持久化XML文档集合,需符合Schema校验,支持XQuery查询。

三、物联网层次架构设计

四层核心架构
  1. 感知层

    • 终端设备(传感器/RFID)采集数据 → 边缘计算初步处理。
    • 设计重点:低功耗通信(ZigBee/LoRa)、设备轻量化协议(MQTT-SN)。
  2. 网络层

    • 数据传输通道(4G/5G/NB-IoT) → 网关协议转换(MQTT→HTTP)。
    • 安全挑战:设备认证(DTLS)、数据加密(TLS 1.3)。
  3. 平台层

    • 设备管理(接入控制)、数据存储(时序数据库InfluxDB)、分析引擎(Spark Streaming)。
    • 关键技术:规则引擎(动态响应设备事件)、API网关(开放能力)。
  4. 应用层

    • 行业解决方案(如智能家居、工业监控) → 提供用户交互界面。
    • 案例:电子小票系统通过RFID自动生成消费记录。

四、层次式架构案例分析

案例1:PetShop电商系统
  • 分层设计 :
    表现层 :ASP.NET MVC动态生成页面
    业务层 :订单处理工作流(状态机模式)
    数据层:工厂模式封装SQL Server/Oracle差异
  • 亮点 :
    • UIP(用户界面处理)模式统一Web/WinForm交互逻辑
    • 连接池管理降低数据库开销
案例2:电子小票服务系统
  • 物联网架构落地 :
    • 感知层:POS机扫码/RFID标签
    • 平台层:Kafka消峰处理交易流水
    • 应用层:大数据分析消费行为(关联Lambda架构)
  • 价值:减少纸质小票成本,实现精准营销。

考点聚焦与真题示例

  1. 高频考点

    • 类图到数据库表的映射规则(如继承→单表/多表策略)
    • XML存储选型依据(结构化程度 vs 查询需求)
    • 物联网层次职责划分(感知层≠数据传输)
  2. 典型试题

    Q: 某系统需存储不规则医疗报告(含图文混合),请选择存储方案并说明原因。
    A: 选择文件存储(如MongoDB GridFS),因内容结构松散且无需深度查询,数据库存储会导致字段冗余。

  3. 论文写作提示

    • 结合项目说明分层架构如何解决性能瓶颈(如数据库连接池优化)。
    • 对比XML与JSON在数据交换中的优劣(考题趋势)。
相关推荐
余槐i4 分钟前
WAL 下写并发仍是 1:SQLite 单写者模型实测与绕开方案
数据库·python·性能优化·sqlite·wal
阳光九叶草LXGZXJ8 小时前
达梦数据库-报错-15-列【XXX】长度超出定义
linux·运维·数据库·sql·学习
字节渡客9 小时前
Redis键明明过期了,业务还在读到旧数据
数据库·redis·spring
OnlineProxy11 小时前
亚马逊多账号运营:如何在规避“关联封号”风险的同时实现电商规模化扩张
服务器·数据库·redis
白搞电子12 小时前
ESP32-S31 上做可在线安装的 WASM 应用平台:0.4.9 Beta 发布
单片机·嵌入式硬件·物联网
辻弋20112 小时前
五年前的旅行视频糊成马赛克?Video2X用Real-ESRGAN逐帧重建细节,但只支持Windows、集显用户建议直接放弃
服务器·数据库·windows·游戏引擎·电脑
microrain13 小时前
先应答,再入库:SagooIoT 接入 GB/T 32960 的四层宿主改造
物联网·golang·开源·sagooiot
可乐鸡翅yeah_13 小时前
业务中 M3U8 水印相关坑,硬水印和动态水印区别
前端·网络·数据库·ffmpeg·m3u8在线
石头麻辣鱼14 小时前
Bamboo 调度系统 OceanBase 适配实战:存储过程迁移踩过的三个大坑
数据库
龙亘川14 小时前
数智驱动民政升级 精准守护民生保障
大数据·数据库·人工智能