• 数据库设计 Step by Step (1)读书笔记


    1.数据库设计为什么很重要?

     

       数据库设计就像是建房子画的图纸之一,如果不在最初就设计好,而是等到间房子的时候再  发现数据库设计不合理,这个时候的代价要远大于在设计时就设计合理;

    举例几个数据库不良设计造成的场景:

    a. 数据一致性的丧失

      一个订单管理系统,维护着客户和客户下的订单信息。使用该系统的用户在接到客户修改收货地址的电话后,在系统的客户信息页面把该客户的收货地址进行了修改,但原先该客户的订单还是送错了地址。

    b. 数据完整性的丧失

      公司战略转移,准备撤出某地区。系统操作人员顺手把该地区的配置信息在系统中进行删除,系统提示删除成功。随后问题就来了,客服人员发现该地区的历史订单页面一打开就出错。

    c. 性能的丧失

      一个库存管理系统,仓库管理员使用该系统记录每一笔进出货情况,并能查看当前各货物的库存情况。在系统运行几个月后,仓库管理员发现打开当前库存页面变得非常慢,而且整个趋势是越来越慢。

    上面这些场景都是由于数据库设计不当造成的,根源包括:设计时引入了冗余字段,没有设计合理的约束,对性能没有进行充足设计等,上面的例子也只是沧海一粟。

    2.平台无关,设计是核心

     

      内容略。

    原文是“

    在我们一头扎进数据库设计之前,我们先了解一下除了关系型数据库之外的数据存储方式。”

    看到这里我觉得有点失笑,自己从学校学的存储就是数据库和XML,XML用的非常少,几乎每次都是用的sqlserver,所以自己平常建项目用的存储方式都是sqlserver。感觉就是脑子里只剩下“sqlserver”这种方式了,不管它是几百条数据还是一万条数据,这就是思维僵化的一种表现形式吧,

    关系型数据库之外的数据存储方式:

    一:*.txt和*.ini

    适用场景:存放小量,修改不频繁,如:配置信息。

    Windows注册表

    Excel表格

    适用场景:适合存放数据量不大,具有层次性结构的数据,如属性配置信息。

    XML

    自描述的(所用的标记描述了数据的结构和类型,尽管缺乏语义

    同样它也有缺点,例如,它是冗余的,由于要对它进行解析和文本转换,所以数据访问速度较慢。

    NO-SQL数据库

     

     

    一:数据库设计对于软件成败的关键作用;

    二:本课程与数据库无关,核心是设计理念;

    三:各种数据存储所应用的场景。

    ..
  • 相关阅读:
    面试题
    面向切面编程 AOP
    matlab提取wind底层数据库操作
    tensorflow(4):神经网络框架总结
    tensorflow(3):神经网络优化(ema,regularization)
    tensorflow(2):神经网络优化(loss,learning_rate)
    tensorflow(1) 基础: 神经网络基本框架
    在anaconda中安装tensorflow
    anaconda利用pip安装module
    python(10): xlsxwriter模块
  • 原文地址:https://www.cnblogs.com/lanyueer/p/1997933.html
Copyright © 2020-2023  润新知