请教各位是怎么处理冗余用户信息的

2023-02-16 10:52:16 +08:00
 iloveMonica

随着用户量增加,有很多用户长期不登陆,甚至有的用户已经过世,如何处理他们留下的信息? 处理这些垃圾数据第一是节省空间,储存空间很贵,如果不删掉这些信息会一直消耗储存成本。第二是影响数据库性能,在需要遍历整个表的时候(找回密码,搜索账号),过多数据让搜索速度变慢。 我想的方法是:所有两年不活跃的账号,先发短信 /邮件提醒用户,再过半年到一个月再次提醒,第三年直接删除账号相关数据。 对于违规封禁的用户,给一个注销账号的选项,但是账号绑定的邮箱或手机号不能在 3 年再次注册。 考虑到储存空间的昂贵,所有注销操作全部是真删除而不是标记为删除。 如果未来有检测用户是否过世的 api ,可以在检测到用户死亡后锁定账号并在一年后删除相关数据。

2908 次点击
所在节点    程序员
32 条回复
MoRanjiang
2023-02-16 11:01:13 +08:00
用大厂的冷存储?价格便宜,但如果用户要登陆需要时间恢复数据。
LeegoYih
2023-02-16 11:05:03 +08:00
按我的理解硬盘是硬件里最便宜的设备了,只存数据基本上不会影响成本吧?而且数据应该是比硬件值钱的,一般都不会物理删除,可以备份到冷库或者打包保存。

如果表结构设计合理,不会影响查询效率,不太清楚你描述的“找回密码”和“搜索账号”在什么场景下会查全表。

我个人非常讨厌服务或软件删除用户信息,过了几年想回去玩游戏 /找历史记录,结果你把我号删了?
whyso
2023-02-16 11:05:15 +08:00
@MoRanjiang 我玩的一个游戏应该就是你说的这样,大概两年没玩,登录就是读条恢复数据
zuixinwenyue
2023-02-16 12:21:05 +08:00
用户信息非常宝贵,相关数据也不应该删除,数据过多的话 可以尝试下分表操作。理论上除非用户自己注销,用户都应该可以正常登录,就算用户自己注销 数据也应该是物理删除,方便以后大数据分析 等等,总之数据是非常宝贵的
wxf666
2023-02-16 12:49:22 +08:00
为啥“找回密码”和“搜索账号”会遍历全表??
foolishcrab
2023-02-16 12:57:39 +08:00
你说的性能不够的地方都可以在技术方案上规避掉的,再怎么也轮不到清除数据。

就这么说吧,如果你的业务真的庞大到用户表 mysql 都支撑不住,那个时候你删个数据起码 cto 审批。
没到这规模的话老老实实研究下缓存啥的
iloveMonica
2023-02-16 12:59:05 +08:00
@wxf666 用手机号匹配 uid ,一个一个去对比,找到 uid 再去把对应的密码修改了。添加好友也是根据昵称匹配 uid ,在用 uid 寻找用户头像这些。
tongyifan
2023-02-16 13:01:23 +08:00
@iloveMonica 为什么不加索引呢
opengps
2023-02-16 13:04:51 +08:00
这得多大的系统,需要为这个数据担心?一个人的注册信息占了你多大存储呢?
ghostwind
2023-02-16 13:24:58 +08:00
建议先说下用户规模。。百万,千万还是上亿。。。
julyclyde
2023-02-16 13:38:24 +08:00
出于成本和隐私考虑,是应该删除
但是你得考虑一下删除之后,这个用户和其它人发生过的关系怎么处理

举个例子:我曾经见过某 cmdb 系统,服务器使用数据库外键的方法“属于”人。然后这人离职了……
LeegoYih
2023-02-16 13:46:14 +08:00
@iloveMonica 如果这 2 个功能你们是通过扫全表实现的,那么应该考虑换一位 CTO 了。
LaGeNanRen
2023-02-16 13:46:44 +08:00
大厂优化成本时考虑冷存,但你这到底是什么体量的服务
shyangs
2023-02-16 13:55:52 +08:00
隨便一部小說,比如《天龍八部》都有 100 萬字,一個人的註冊資訊有小說佔空間?

你公司的儲存空間還不如盜版小說站?
iloveMonica
2023-02-16 14:01:43 +08:00
@opengps 不只是注册的,还有这个人创建的一些东西,头像,发过的图片,文字这些
RiverMud
2023-02-16 14:15:50 +08:00
@iloveMonica 你这到底啥服务啊?用户发的图片、文字这些东西,服务不倒闭的情况下都不应该删吧?
zoharSoul
2023-02-16 14:46:02 +08:00
不差这点
nzynzynzy
2023-02-16 14:48:08 +08:00
怪不得我用了十多年的 163 邮箱被彻底清空了:)
watzds
2023-02-16 14:51:26 +08:00
国外一些服务,倒是收到过要删除账号的提醒
Maboroshii
2023-02-16 16:07:58 +08:00
啥业务这么大数据量? 一般单机 mysql 都随便应付啦

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/916566

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX