| 
积分19241明经币 个注册时间2015-8-18在线时间 小时威望 金钱 个贡献 激情  
 | 
 
 
 楼主|
发表于 2024-10-21 20:37:09
|
显示全部楼层 
| 本帖最后由 你有种再说一遍 于 2024-10-21 20:59 编辑 
 # 博客数据库怎么设计储存图片?
 在Markdowm的文章是这样插入图片的:
 
 那么如果我不再引用这个图片,那么岂不是没有自动删除?
 
 要设计一个动态删除图片的数据库.
 图片表:
 自增id,日期,已删除标记,代替文本,可选标题,图片二进制
 
 文章表:
 自增id,日期,已删除标记,用户id,版本号,文本
 
 图片引用表:
 图片id,文章ids.
 增:每次修改博文,检测文本,若有加入文章id.
 改(逻辑删除):每次修改博文/删除博文,若删了引用图片(要前后版本的文本检测)则删引用id.并检测引用数量,为0则修改图片表记录的已删除标记.
 物理删除:含有删除标记的,是通过定时任务进行物理删除的,定时任务每次巡逻几条id,然后比较时间,三个月后删除图片.
 为什么要分多一个表,因为行式数据库,请求图片的时候会把文章引用集合也获取了,反而拖累了速度.
 
 如果要数据回滚呢?岂不是没有这个图片了?
 但是多张图片可以共用一张图片..
 通过采集算法可以合并引用?
 md5摘要合并是不对的,hash冲突.
 | 
 |