QQZone的需求介绍和数据库设计

1.熟悉QQZone业务需求1) 用户登录2) 登录成功,显示主界面。左侧显示好友列表;上端显示欢迎词。如果不是自己的空间,显示超链接:返回自己的空间;下端显示日志列表3) 查看日志详情:- 日志本身的信息(作者头像、昵称、日志标题、日志内容、日志的日期)- 回复列表(回复者的头像、昵称、回复内容、回复日期)- 主人回复信息4) 删除日志5) 删除特定回复6) 删除特定主人回复7) 添加日志、添加回复、添加主人回复8) 点击左侧好友链接,进入好友的空间
2.数据库设计1) 抽取实体 : 用户登录信息、用户详情信息 、 日志 、 回贴  、 主人回复2) 分析其中的属性:- 用户登录信息:账号、密码、头像、昵称- 用户详情信息:真实姓名、星座、血型、邮箱、手机号.....- 日志:标题、内容、日期、作者- 回复:内容、日期、作者、日志- 主人回复:内容、日期、作者、回复3) 分析实体之间的关系- 用户登录信息 : 用户详情信息      1:1 PK- 用户 : 日志                   1:N- 日志 : 回复                   1:N- 回复 : 主人回复                1:1 UK- 用户 : 好友                   M : N
3.数据库的范式:1) 第一范式:列不可再分2) 第二范式:一张表只表达一层含义(只描述一件事情)3) 第三范式:表中的每一列和主键都是直接依赖关系,而不是间接依赖
4.数据库设计的范式和数据库的查询性能很多时候是相悖的,我们需要根据实际的业务情况做一个选择:- 查询频次不高的情况下,我们更倾向于提高数据库的设计范式,从而提高存储效率- 查询频次较高的情形,我们更倾向于牺牲数据库的规范度,降低数据库设计的范式,允许特定的冗余,从而提高查询的性能

QQZone的需求介绍和数据库设计相关推荐

  1. sql取系统时间减一小时_Java秒杀系统实战系列-整体业务流程介绍与数据库设计...

    本篇文章是"Java秒杀系统实战系列文章"的第三篇,本文将主要介绍秒杀系统的整体业务流程,并根据相应的业务流程进行数据库设计,最终采用Mybatis逆向工程生成相应的实体类Enti ...

  2. SparkStreaming 实时计算 广告点击流量实时统计 需求 技术方案数据库设计

    几大模块内容 用户访问session分析模块:会话(session),用户的基础访问行为 页面单跳转化率模块:页面(page),用户的页面访问和页面跳转行为 各区域热门商品统计模块:商品(produc ...

  3. 仿联想商城laravel实战---1、仿联想商城需求和数据库设计(lavarel如何搭建项目)...

    仿联想商城laravel实战---1.仿联想商城需求和数据库设计(lavarel如何搭建项目) 一.总结 一句话总结: composer引入lavarel.配置域名.配置apache 1.项目名 le ...

  4. 数据库设计的10个最佳实践

    作者 | Emily Williamson 译者 | 孙薇,责编 | 屠敏 出品 | CSDN(ID:CSDNnews) 以下为译文: 数据库是应用及计算机的核心元素,负责存储运行软件应用所需的一切重 ...

  5. 数据库设计的 10 个最佳实践

    作者 | Emily Williamson 译者 | 孙薇,责编 | 屠敏 出品 | CSDN(ID:CSDNnews) 以下为译文: 数据库是应用及计算机的核心元素,负责存储运行软件应用所需的一切重 ...

  6. 数据库设计讲解和案例分析 | mysql 入门

    数据库设计 什么是数据库设计 数据库设计是指在数据库系统开发过程中,根据用户需求,通过对数据进行分析.抽象和建模,设计出一个合理.高效的数据库结构的过程.数据库设计的目的是为了实现数据的存储.管理.维 ...

  7. 【数据库】数据库设计一

    文章目录 前言 一.数据库设计概述 二.需求分析 三.概念设计 四.逻辑设计 五.总结 前言 这章主要介绍了数据库设计的相关概念,整体目标和需要解决的问题.并按照新奥尔良设计方法对需求分析.概念设计. ...

  8. 【数据库系统概论】-数据库设计

    数据库设计概念 在数据库领域内,通常把使用数据库的各类信息系统都统称为数据库应用系统. 数据库设计,广义的讲,是数据库及其应用系统的设计,即设计整个数据库应用系统.狭义的讲,是设计数据库本身,即设计数 ...

  9. 【数据库系统】第二部分 设计与应用开发(7) 数据库设计

    本文属于「数据库系统」系列文章之一,这一系列着重于「数据库系统知识的学习与实践」.由于文章内容随时可能发生更新变动,欢迎关注和收藏数据库系统系列文章汇总目录一文以作备忘.需要特别说明的是,为了透彻理解 ...

最新文章

  1. JavaScript最新手机号码、电话号码正则表达式
  2. Time profile 使用
  3. powerdesigner显示工具面板_10分钟看懂Photoshop 绘画(画笔面板1-3)
  4. 自定义sql_一个简单易用的开源BI软件,专为SQL用户设计的开源库
  5. MySQL 5.7 聚合(GROUP BY)功能描述
  6. socket python实例_Python网络编程—第27课—Socket实例(0531)
  7. 实现一个简单的前端水印
  8. 正则表达式加参数匹配
  9. python数据框的横向贾总_[Spark][Python]DataFrame的左右连接例子
  10. Atom飞行手册翻译: 4.2 深入键表(keymap)
  11. 小米重磅新机Mimoji萌拍被指抄袭 官方怒回应:将追查到底!
  12. 大数据之-入门_大数据特点(4V)---大数据之hadoop工作笔记0003
  13. SQL2005中row_number( )、rank( )、dense_rank( )、ntile( )函数的用法(2)
  14. python有哪些好的学习资料或者博客
  15. Fullpage:基础学习
  16. 计算机硬盘突然只有一个c盘,win10硬盘消失了只剩下c盘怎么恢复_win10硬盘突然消失只有c盘解决方法-win7之家...
  17. 谷歌图片验证码的使用图文详解附源码
  18. 纯 CSS 中的简单响应式汉堡菜单
  19. CAD编辑指南7:新建空白图纸和新建表格、导入图片
  20. 3D游戏模型教程系列:3D max安装

热门文章

  1. 宇宙中最大的神秘结构被发现 跨度达40亿光年
  2. http://www.cnblogs.com/wayfarer/archive/2004/09/29/47896.html
  3. 图片 滚动 放大缩小 旋转
  4. 互联网数据标注员是做什么的?有什么发展前途吗?
  5. PageHelper这种情况下有坑!
  6. C语言 输入一个长度小于80的字符串,将字符串中的字母字符滤掉掉,并统计新生成串中包含的字符个数。
  7. MySQL数据库的常用命令
  8. 常用的统计建模方法——差分分析
  9. 从前后台系统转到RTOS系统编程
  10. 鸿蒙系统平板界面,首发预装鸿蒙OS!华为MatePad Pro 2系统界面曝光