聊天工具的数据库设计

问题描述

现在的聊天工具很多,用户也很多,拿QQ来说,说腾讯是怎么保持QQ好友关系的,他们的表是怎么建的?如果是一张关系表,一个QQ用户最多可以加500个好友,那么那数据量得多大啊?总不可能给每个用户一张表把?哪位大虾有相关设计经验的或业内人士指点一下啊 问题补充:deepfuture 写道

解决方案

对于关系数据库,你可以设一个这样的字段,这个字段里存放了李四的所有好友,每个好友以“,”分隔,对于非关系数据库,比如说健值数据库,你可以使用一个大型的HASH表来存放,李四的所有好友以一个链接的方式串起来比如:linker表示链接hash(李四)=linker(王五、张三、黄光、李明)
解决方案二:
是不是和腾讯游戏一样,分区管理的。你是上海的你在别的地方登录时会在把你在上海的数据先copy过去..
解决方案三:
2个表一个关系表userid friendid1 21 31 42 33 13 4一个用户信息表userid username1 张三2   李四3 王五4 刘光明

时间: 2024-09-20 05:32:42

聊天工具的数据库设计的相关文章

教你使用数据库建模工具进行数据库建模

很多人在进行数据库设计的时候,还是喜欢使用word文档的格式设计好数据库结构以后,再进行物理数据库的创建:而真正使用数据库建模工具进行数据库设计的就很少了:如果你讯问那些不愿意使用数据库建模工具的人为什么的话,我想他们一般会给你下面几个答案: 1.数据库结构不复杂,没必要使用建模工具. 2.建模工具使用起来比较麻烦,不现实. 3.我们公司有专门的数据库文档格式,恐怕建模工具没法生成合适的文档. 对于以上答案,我认为都不成立,是因为对建模工具的误解造成的. 以powerdesign为例,对于上述答

数据库设计及建模工具——ERwin简介

设计|数据|数据库|数据库设计 ERwin用来建立实体-关系(E-R)模型,是关系数据库应用开发的优秀CASE工具.ERwin可以方便地构造实体和联系,表达实体间的各种约束关系,并根据模板创建相应的存储过程.包.触发器.角色等,还可编写相应的PB扩展属性,如编辑样式.显示风格.有效性验证规则等. ERwin可以实现将已建好的ER模型到数据库物理设计的转换,即可在多种数据库服务器(如Oracle,Sql Server,Watcom等)上自动生成库结构,提高了数据库的开发效率. ERwin可以进行逆

通信-C#基于TCP的局域网聊天工具 不知道怎么接收消息部分怎么写 求设计思路

问题描述 C#基于TCP的局域网聊天工具 不知道怎么接收消息部分怎么写 求设计思路 我之所以问这个问题是因为我说的接收消息不是那种两个窗口都开着 发送或接收的 而是当接收的用户不在场时 聊天窗口并未打开也能接收 只是好友列表里的好友在闪 然后等用户回来 点击好友时聊天窗口,好友发送过来的那些信息还有 然后用户也能回复 说白了就是qq那样的 我只能做到发送信息 和当发送消息,接收方的用户里对应的好友在闪(只是在闪 也不能接收消息和打开窗口) 想问问大侠们 如果是你们大概会怎么设计这一块 .....

Database Deployment Manager 0.1f发布 多平台数据库设计工具

Database Deployment Manager(DDM)是一个面向桌面的多平台数据库http://www.aliyun.com/zixun/aggregation/6993.html">设计工具,它允许数据库管理员和程序员创建数据库结构(用面向对象的方法),并部署到现有的数据库.该工具可以用于创建图表,以确定定义结构之间的基本关系. Database Deployment Manager 0.1f该版本增加了一个新的连接管理器到你的数据库,使你不必记住它们就能更容易地创建视图的SE

聊天软件的数据库的表格代码是

问题描述 聊天软件的数据库的表格代码是 就是那个表格数据的建表,主键.聊天软件的数据库的表格代码.请各位大神帮帮 解决方案 ------------------------啥? 解决方案二: 参考这个看看 网络聊天工具的设计与实现_http://wenku.baidu.com/link?url=issjPPsQJsDUXGP2bXGxMwX63Hvslyl2P62DvYSxhm2IR_oAsBm1enB6M34BBsRK7iweCQBTaJDmwTwfJ4SlakpEbxVNiLfZoXb9QM

一款名为Line的聊天工具在短短的19个月内就火爆全球

来自Line的官方数据显示,3月9日,Line的用户突破1.2亿,大约4500万用户来自日本,1500万来自中国台湾和泰国.不深入研究的用户可能以为它是一款日本公司研发的应用,但实际上,它是由韩国NHN的日本子公司研发的.LINE的母公司是韩国NHN(Next Human Network)公司.这是韩国资本市场市值最大的互联网公司,拥有最大的搜索引擎和门户网站Naver和韩国最大的游戏公司Hangame.这家公司的掌舵者正是韩国的互联网奇才--李海珍.一个伟大成功者往往缘于其有一位伟大的对手.对

数据库设计中的14个技巧

1. 原始单据与实体之间的关系  可以是一对一.一对多.多对多的关系.在一般情况下,它们是一对一的关系:即一张原始单据对应且只对应一个实体.在特殊情况下,它们可能是一对多或多对一的关系,即一张原始单据对应多个实体,或多张原始单据对应一个实体.这里的实体可以理解为基本表.明确这种对应关系后,对我们设计录入界面大有好处.  [例1]:一份员工履历资料,在人力资源信息系统中,就对应三个基本表:员工基本情况表.社会关系表.工作简历表.这就是"一张原始单据对应多个实体"的典型例子.  2. 主键

数据库设计指南(转)

设计|数据|数据库|数据库设计     如果把企业的数据比做生命所必需的血液,那么数据库的设计就是应用中最重要的一部分.有关数据库设计的材料汗牛充栋,大学学位课程里也有专门的讲述.不过,就如我们反复强调的那样,再好的老师也比不过经验的教诲.所以通过对数据库设计颇有造诣的专业人士的反馈精选,暨以给大家传授一些设计数据库的技巧和经验. 第1 部分- 设计数据库之前 这一部分罗列了12 个基本技巧,包括命名规范和明确业务需求等. 1. 考察现有环境 在设计一个新数据库时,你不但应该仔细研究业务需求而且

数据库设计方法、规范与技巧

规范|技巧|设计|数据|数据库|数据库设计 数据库设计方法.规范与技巧(推荐)   一.数据库设计过程数据库技术是信息资源管理最有效的手段.数据库设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求.数据库设计中需求分析阶段综合各个用户的应用需求(现实世界的需求),在概念设计阶段形成独立于机器特点.独立于各个DBMS产品的概念模式(信息世界模型),用E-R图来描述.在逻辑设计阶段将E-R图转换成具体的数据库产品支持的数据模型如关系