V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
MySQL 5.5 Community Server
MySQL 5.6 Community Server
Percona Configuration Wizard
XtraBackup 搭建主从复制
Great Sites on MySQL
Percona
MySQL Performance Blog
Severalnines
推荐管理工具
Sequel Pro
phpMyAdmin
推荐书目
MySQL Cookbook
MySQL 相关项目
MariaDB
Drizzle
参考文档
http://mysql-python.sourceforge.net/MySQLdb.html
jyoe
V2EX  ›  MySQL

聊聊反范式

  •  
  •   jyoe ·
    woody1983 · 2012-04-13 15:59:43 +08:00 · 3571 次点击
    这是一个创建于 4389 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最开始这个词是从@fenng那里听到的 随后google到一个Blog和一篇pdf 里面简单的描述过一些内容,里面通过Wordpress新建分类是单独创建分类表而非在分类表中插入一条分类的信息为例讲述了反范式的优点。
    这个以查询为基准的数据库设计理念倒是很适合做OLAP这种以大数据量分析为前提的项目当中。

    个人感觉优点最明显的地方有2个 或许有更多个。
    1、upload一篇文章等待5秒和打开浏览一篇文章等待5秒 对于用户而言感觉是会有差异的。
    2、空间换取时间 [硬盘/内存/CPU 前者最便宜] 数据库表多一些无所谓,前台查询又快又方便是最重要的,有些事情是需要把精力用在客户最容易看到的地方。

    --- 泛泛而谈
    2 条回复    1970-01-01 08:00:00 +08:00
    bhuztez
        1
    bhuztez  
       2012-04-13 16:07:14 +08:00
    soulhacker
        2
    soulhacker  
       2012-04-13 16:58:40 +08:00
    反向规范化,首先要了解为什么会有 RDBMS 中经典的各级范式,然后要知道每个范式的代价,然后才是了解什么场景下可以牺牲规范化来换取别的东西。其实称职的数据架构设计者都会在设计和实现的各阶段不断平衡这些东西,最重要的还是了解应用本身的特点。

    下面这个链接是我很久以前写的,比较过时了但是基本概念无问题,可以参考: http://mrp.7thgen.info/posts/146/messages
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2154 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 23ms · UTC 00:29 · PVG 08:29 · LAX 17:29 · JFK 20:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.