聊天记录的数据库表设计

现在用户数量大致有10万人

所使用的数据库一定为mysql

想保存所有人聊天记录在在数据库中

即使一个人的聊天数据条数只有100条

那如果把所有记录保存在一张表中,那不就有1000万条记录

这样应该会导致查询效率极低吧?

有没有具体其的数据库设计方法或思想

比如多表?只是有这个想法,但是不懂其运作机制

大家说说想法,让小弟参考参考 谢谢了!

0

4个回答

最佳解决方案:分表+备份
分表:根据用户的id,把不同用户的聊天信息放到对应的表中,以缓解数据量的压力。
备份:后台搞个过程,定期把老的数据备份的备份表里,同时把已备份的数据删除。
我们公司类似这样的功能就是这么做的。

还有一种方法,不如知道适不适合你的需求,那就是像qq一样,把该用户的聊天记录以文件的形式写在他本地.

0

好的设计是针对一个新注册的用户,建立一张对应此用户的聊天记录表

0

按日期分表

0

我觉得每个用户创建一个表是不错的想法,问题是表会太多.单表记录太少.成本太高.10w个表做起统计来会很麻烦.
我的意思将用户分类:比如 号码10000-19999的作为一个号段记录在一个表里面. 这样表相对少点,记录量相对合理.
另外要做备份表,定期备份过期信息,比如前3个月的聊天记录等.

ps: 我不理解,聊天记录属于隐私来的,这个也要记录!??

0
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
mysql聊天记录数据库表设计
我想每个用户创建一个表,但问题是表会太多,单表记录太少,成本太高,若有10W个用户就10w个表做起统计来会很麻烦.;rn请教各位高手,对于聊天记录数据表要如何分表分区,性能才是最优的?
web聊天类数据库功能表结构如何设计?
最近在带着团队做项目,有些比较关键的问题,也在找解决方案,这里把一些感觉比较重要的记录一下。 希望看完博客的同事,能踊跃留言,恳请指正。 完 web聊天类数据库功能表结构如何设计? User(--用户表                字段    字段类型    字段描述    备注 U_ID    Int        主键、自增 U_Login
实现类似微信聊天功能的mysql表设计
前言: 最近设计了一套聊天功能,此功能支持人对人聊天、发送图片、查看聊天记录、按时间展示聊天列表、最后一条聊天数据及未读消息数 下面分享一下表结构及实现逻辑:   表结构: 1、聊天主表 id(主键id) user_id(用户id) another_id(对方用户id)   ...
数据库表设计数据库表设计
数据库表设计数据库表设计数据库表设计数据库表设计数据库表设计数据库表设计数据库表设计
c06数据库表设计设计设计
c06数据库表设计 c06数据库表设计 c06数据库表设计 c06数据库表设计 c06数据库表设计
mysql数据库表设计
一: 三范式 第一范式(1NF):字段值具有原子性,不能再分(所有关系型数据库系统都满足第一范式); 例如:姓名字段,其中姓和名是一个整体,如果区分姓和名那么必须设立两个独立字段; 第二范式(2NF):一个表必须有主键,即每行数据都能被唯一的区分; 备注:必须先满足第一范式; 第三范式(3NF):一个表中不...
聊天系统 数据库功能表结构如何设计?
User(--用户表 字段 字段类型 字段描述 备注 U_ID Int 主键、自增 U_LoginID Varchar(20) (登陆账号) U_NickName Varchar(20) (昵称) U_PassWord Varchar(20) (密码) U_SignaT...
私信聊天,mysql数据库表设计【简单粗暴易懂】
A用户与B用户聊天,需要考虑以下场景: A用户删除聊天记录111,B用户还能看得到那一条记录111 A用户撤销聊天记录222,B用户看不到那一条记录222 程序猿,话不多说,看技术实现原型图。 采用了mysql根据uid分表技术,is_send=1表示是当前用户uid是发送方,is_send=0表示当前用户uid是接收方。花了一个晚上的时间画图
仿微信客服聊天界面(已实现聊天记录本地数据库保存)
仿微信客服聊天界面(已实现聊天记录本地数据库保存),同时也写好了网络传输,以提供注释,方便你的使用。
im表设计
User(--用户表                字段    字段类型    字段描述    备注 U_ID    Int        主键、自增 U_LoginID    Varchar(20)    (登陆账号)     U_NickName    Varchar(20)    (昵称)     U_PassWord    Varchar(20)    (密码)     U_SignaTu...
数据库设计
数据库表设计,
聊天记录聊天记录聊天记录
聊天记录聊天记录聊天记录聊天记录聊天记录聊天记录聊天记录聊天记录
数据库表设计
创建数据库里最基本的应该就是建表,建索引、存储过程等一系列操作了。谈到表就不得不谈到实体。     一、数据实体         什么是实体,客观存在并且可以相互区别的事物称为实体。这里我们就简单的把它理解为一个表吧,描述实体的特性,我们就把他们称为了属性。也可以说当我们把一个数据库表当作一个实体,那么它里面的所有字段是不是就是一个属性了呢?结果是肯定的。    二、实体间的联系   
数据库表设计说明书
数据库表设计说明书
导出微信聊天记录并生成词云
写在最前:某天和女朋友聊天,我说,我觉得你和我在一起这么久,性格变了不少,从微信聊天记录应该可以反映出来,于是疑问产生了——微信聊天记录怎样才能在PC端查看呢?需要准备的工具:已root的安卓手机,RE文件管理器,wxsqlcipher.exe(用于解密数据库),python 3.5及相关库(jieba,wordcloud)效果图:操作步骤:1. 获得聊天记录数据库文件       在手机上使用R...
skype聊天记录备份和还原方法
系统盘\ Documents and Settings\使用者名称\Application Data\Skype 目录下,备份你SkypeID的文件夹就行! 还原的时候也按照上面的目录还原
用wx聊天记录 制作词云(python)
本人初学者,看完了如何做词云的教程,试用微信聊天记录做一个demo练手。关于词云,网上有大量的教程,可随意参看,注意python的版本问题即可。 微信聊天记录导出 用到的工具是一款微信聊天记录查看软件,分享如下,侵权则删。 链接: https://pan.baidu.com/s/1c1EDh52 密码: 129q 使用:需要一个root后的手机,然后导出即可,对于使用了没有root
PC微信聊天记录数据迁移恢复
本文章仅仅是PC微信聊天记录从一台电脑迁移到另外一台电脑恢复办法,主要适用于更换电脑,或重装系统,用户想保存PC微信中数据和文件。1.查看微信记录的保存文件夹设置--通用设置中查看文件管理的路径。如下图:2.复制文件路径,并打开该路径。我的文件文件路径是D:\Program Files\WeChat Files\,是我自己修改的,请复制自己的微信文件夹路径。3.拷贝和备份WeChat Files的...
从安卓手机ROOT提取微信聊天记录到利用Python进行词云分析全过程
从安卓手机ROOT提取微信聊天记录到利用Python进行词云分析全过程 刚刚来到了2018年,正值女票生日将近。想想这一年来我俩的聊天记录也不少(导出后一看十个月的微信文字聊天记录将近8万条 ^-^),于是就有了将我们的聊天记录导出来制作成词云,或者分析一下她说的最多的一句话是什么?还打算做个预测模型,输入一个句子然后让模型预测下是她说的还是我说的,哈哈,想想还有点小激动呢。其中的一个难点在于微
聊天记录保存方式
聊天记录保存方式
【matlab】记一次微信聊天文字记录导出到Excel工作
其实一直想把我和她的微信聊天记录导出到文本,整理出来拿出来翻翻,然后再查阅了大量网络资料后,我成功的将我和她的聊天记录整理成excel的形式,如下所示:       那么我们开始。   一、工具准备(苹果手机也可,在文末) 1、root的安卓手机,装有微信。 2、安装RE浏览器或者ES浏览器。 3、加密数据库DB文件打开工具:sqlcipher.exe(下载链接:微云分享) ...
微信聊天记录导出工具WeChatExporter开源啦!
之前曾经写过一个导出微信聊天记录的工具,偶尔自己用一下,现在免费开源出来,希望大家喜欢。 WeChatExporter 微信聊天记录导出工具。无需越狱手机,即可导出备份微信聊天记录。目前支持文字、语音、图片、视频的查看。 项目基于nodejs实现,框架采用angularjs 目前支持导出iOS系统导出,软件运行仅限MacOS系统。(其实安卓和Windows系统也能用,只是现在懒得适配多...
微信聊天记录生成器
生成微信聊天界面,头像昵称内容都可以自己设置
飞信聊天记录查看器飞信聊天记录查看器飞信聊天记录查看器
飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器 飞信聊天记录查看器
websocket实现聊天记录
登录验证 wobsocket聊天
易信客户端导出聊天记录方法
易信导出聊天记录工具: 1)RE管理器 2)SQLite Database Browser步骤 1、使用“RE管理器”打开data分区,data文件夹下的im.yixin文件夹。 可能手机需要切换到root权限才能找到im.yixin文件夹。 2、在im.yixin文件夹下有以数字命名的文件夹,其中包含有聊天记录,聊天记录是保存在msg.db文件中,其中main.db也保存可能感兴趣的数据
Java 从文档中读取聊天记录
题目要求 根据附件中的QQ群聊天文件,读取其中的聊天记录,实现如下的方法:1)List getMessagesById(String id, Date beginTime, Date endTime):根据参数的id返回id对应的qq号码或者邮箱地址标识的聊天者在指定时间段内(beginTime与Date endTime之间)的所有聊天记录;2)getChatter():打印除了教师外的话唠(发言...
环信聊天记录的完整代码
按照文档自己封装的,水平有限仅供参考 class Easemob { protected $client_id; protected $client_secret; protected $org_name; protected $app_name; protected $app_key; protected $url; public func...
lync本地聊天记录修改目录保存的方法
lync聊天默认保存在C盘,不支持修改,采用下面的方法修改目录: 默认的聊天记录保存在: C:\Users\用户名\AppData\Local\Microsoft\Communicator 所以采用软连接的方法把它换到其他目录去,下面以Windows7下Administrator账号为例。 1、关闭lync,移动目录到其他磁盘上去 move "C:\Users\Administrat
人民日报调查:花 50 元买软件可偷看他人聊天记录
原文链接;http://news.ifeng.com/mainland/detail_2013_01/16/21233751_0.shtml 不法分子非法盗取倒卖公民个人信息现象严重。李宏宇/CFP 原标题:谁动了我的聊天记录(法眼) 本报记者 徐隽 马龙 近年来,随着现代通讯技术和互联网技术的普及,公民个人信息资料屡屡被窃,不法分子通过倒卖公民个人信息牟取
基于websocket实时聊天记录Demo
一个基于websocket实时聊天记录Java代码Demo,亲测很好用,可以学习一下。
文章热词 机器学习教程 Objective-C培训 交互设计视频教程 颜色模型 设计制作学习
相关热词 mysql关联查询两次本表 native底部 react extjs glyph 图标 怎么学习互联网大数据 村干部学习大数据心得