前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >关于数据库逻辑删除(伪删除)的设计方案探讨

关于数据库逻辑删除(伪删除)的设计方案探讨

作者头像
全栈程序员站长
发布于 2022-08-26 13:33:25
发布于 2022-08-26 13:33:25
1.6K0
举报

大家好,又见面了,我是你们的朋友全栈君。

项目上碰到过关于数据采用了逻辑删除导致的问题,情况是这样:原先的代码中,对于表T中的数据的删除采用的是逻辑删除,但是其他使用该数据的地方并没有针对逻辑删除进行配套的处理。该表T中存在字段A 要求不能重复,其实就是说字段A是unique key。

那么问题就来了,逻辑删除只是将数据的status字段更新为删除状态,所以字段A的旧值依然存在,导致插入新数据时,就不能使用已经删除的字段A的值,这明显是不合理的。由于这里采用逻辑删除,同时还引入了关联关系也未进行物理删除的问题。就该场景,本人进行了一番关于逻辑删除的思考,在此抛砖引玉,欢迎讨论。

首先要思考要不要用逻辑删除

这一点很重要,不要盲目使用逻辑删除,首先要看是否有必要采用逻辑删除。因为采用物理删除的优势是显而易见的,不会有历史数据,数据间的关联关系也不会出错,还能节省数据库空间。采用物理删除,业务处理起来很清爽。所以如果没有必要,那么可以优先采用物理删除,从而避免逻辑删除引入的麻烦。比如说本人这次碰到的情况,实际上项目中并不需要逻辑删除,没有这方面需求,这些历史数据也没什么价值。所以这个问题就是当初的开发人员盲目采用了逻辑删除,而没有考虑周全导致的。基于这个情况,直接修改为物理删除解决问题。

当然,某些情况下必须使用逻辑删除,尤其是在现在越来越注重数据价值的环境下。比如历史数据有价值,项目对历史数据有存档要求,或者需要历史数据进行恢复等, 这些情况就必须采用逻辑删除了。

那么逻辑删除该采用怎样的设计呢?

方案1:增加delete_token字段(需要设置默认值,如“defaultToken”),与原来的unique key 组成联合主键.

delete_token字段作用:用来标识该条记录被删除,而不是通过原来的status或enabled字段来区分该记录是否已删除。

比如本文开头我碰到的情况,可以增加一个字段delete_token字段,与原来的字段A组成联合主键。比如删除表T中数据记录1时,delete_token可以更新为该条记录的主键id或者生成的唯一随机值(如UUID),用该方案可解决不能插入已删除数据的问题。同时也要注意,表T的关联关系表也需要进行类似的处理。

优点:不需要引入新表

缺点:若业务量较大或增删频繁,那么数据增长速度会很快,导致一张表中数据量太大,对表的操作效率会降低。

结论:适用于数据量较小、增删不频繁的场景。

方案2:增加备份表(删除记录表)

每张表都设计一张对应的备份表,用于存储删除的数据。表结构可以根据实际需要在原表基础上增加删除时间、删除操作者之类的字段。这样在删除数据时,对于原表,相当于是物理删除,然后再备份表中插入新的记录。注意:关联关系表也需要备份表。

优点:跟物理删除类似,不会有数据冲突的问题。同时也满足了逻辑删除的需求。将在用的业务数据与历史数据区分开,业务结构更清晰。

缺点:需要逻辑删除的数据都要有对应备份表。

结论:推荐该方案。

最后总结:推荐方案2,若大家有更好的方案,欢迎讨论。

参考资料:

https://www.jianshu.com/p/f37281576585

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/144975.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年5月1,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
谷歌战略揭秘:押注人工智能,云服务和Moonshots(一)
在谷歌无人驾驶汽车,企业云,以及智能手机业务中,人工智能是不可或缺的重要组成部分。 自1998年在加州门洛帕克的一个车库成立以来,谷歌已经成为后互联网时代企业创新的领导者。谷歌孵化创新的能力已经从几个
点滴科技资讯
2018/04/28
4.1K0
谷歌战略揭秘:押注人工智能,云服务和Moonshots(一)
谷歌重组硬件部门:裁员数百人,Fitbit创始人离职
1月11日消息,谷歌(Google)近日向外媒9to5Google证实,将对负责Pixel、Nest、Fitbit硬件的装置和服务部门进行组织重整,预计将裁员数百名员工,与AR扩展现实、Google助理业务相关的员工受影响最大。这似乎也表明谷歌不再自主开发AR硬件产品,而是选择与硬件伙伴合作开发。
芯智讯
2024/01/12
2190
谷歌重组硬件部门:裁员数百人,Fitbit创始人离职
Nest创始人:“智能家居”是伪概念
去年开始,有关“智能家居”和“智能硬件”的创业开始在中国火热起来。Nest Labs 无疑是当时这个领域里全球做的最好的公司。于是8月左右我联系了对方希望进行采访,而他们也爽快的答应了。 但是后来进展一直不太顺利,采访对象从联合创始人及CEO Tony Fadell 变到到联合创始人及副总裁 Matt Rogers,采访提纲也几易其稿。最终在去年年底的时候,对方正式拒绝了我的采访。随后发生了什么事大家都知道了,今年1月,Google宣布32亿美元收购了Nest。 在最近的 GigaOM Roadmap 大会
大数据文摘
2018/05/23
5860
Google Nest收购Dropcam,不只是为了摄像头
被Google以30亿美金收入囊中的Nest正式拿下了Dropcam,价格为5.55亿美金。对于收购目的,Nest联合创始人罗杰斯表示“Nest和Dropcam都希望能为客户提供整体化的使用体验,同时也都致力于帮助人们出门在外时仍然能与自己的家保持联系。”,Dropcam是目前最受欢迎的平民家居摄像头,并且开创了基于摄像头的云存储服务的“硬件即服务“模式。 一个是温控器+燃气报警器,另一个则是家庭监控摄像头。两个看上去本来不相关的公司之间的共同点在于,它们是都“智能家居”产品。智能家居单品之间的联合协作是必
罗超频道
2018/04/25
8370
谷歌为何32亿美金收购Nest?
谷歌北京时间昨天早间宣布将以32亿美元的价格收购智能家居设备生产商Nest Labs,支付方式为全现金,震惊业内。 仔细分析,谷歌收购的理由不外乎有以下三个。 行业大势转换: 从刚刚结束的CES上看,消费电子的趋势已经告别智能手机,进入可穿戴智能设备、智能家居、互联网汽车等新的领域。包括智能手机、平板电脑等硬件厂商都已经认清这一形势。尤其是智能家居,因为成为巨头争抢的大市场。在CES上,三星等多家厂商展示各自家居自动化系统和智能家电产品。通过这些产品,用户可随时了解家庭能源、水的使用等
大数据文摘
2018/05/22
9090
是权谋还是不当竞争,自动驾驶领域为何频发“技术偷窃”事件?
无论是古往今来的权谋故事、军事战争、还是商业大片之中,派遣己方人员去“敌方”卧底窃取机密总是最令看客们心惊胆战却倍感刺激的情节。近年来,这一经典的情节在自动驾驶领域频繁上演,其中夹杂着出走、背叛、信念不合种种,背后究竟是人性的“扭曲”,还是道德的“沦丧”?
镁客网
2019/05/07
4580
是权谋还是不当竞争,自动驾驶领域为何频发“技术偷窃”事件?
绕过运营商也能发短信?苹果正在研发下一代手机通讯
近两年,人们对于苹果公司的创新能力议论纷纷,它还能再创辉煌吗?事实上苹果公司对于创新的追求始终没有止步。据悉,苹果近期正在疯狂招聘,希望先发制人,在未来5年内缔造一个新的“通讯时代”。
大数据文摘
2020/02/12
6050
从软件到硬件,谷歌在物联网领域做了什么?
物联网一直被认为是继计算机和移动互联网之后颠覆人们生活的第三次革命。 根据今年秋天外国数据研究机构BI Intelligence发布的一份报告预测,到2020年,全球通过物联网链接的设备总数将达到240亿台,占到全球总体联网设备数的70%。在今后的5年中,全球物联网解决方案的总开支预计将达到6万亿美元。 面对如此庞大的市场,作为互联网时代的科技巨头之一,谷歌自然不会视而不见。实际上,从2011年开始,谷歌在物联网方面的布局就首次进入了人们的视野。 软件:系统 + 通讯 2011年5月,在当年的Goo
AI研习社
2018/03/29
1.1K0
从软件到硬件,谷歌在物联网领域做了什么?
包子解读微软收购Linkedin
今天早上6点,不想起床的小编朦朦胧胧起床,随便刷一手微信,突然发现某朋友分享了一条题目无比夸张的重磅消息:微软以262亿美元的价格收购Linkedin! 刚看到这个消息的那一刻,小编的内心是一个大写
包子面试培训
2018/04/20
8550
包子解读微软收购Linkedin
全面布局AI,IBM、Google是如何做的?
雷锋网按:本文摘选自长城证券报告——互联网迎来AI 时代,海外科技巨头争先布局:人工智能深度报告(国外篇一),在未改变原意的基础上略有删减。 PC互联网时代的企业核心竞争力为软件产品的快速反应能力,移动互联网时代是构建移动端的生态系统,人工智能时代则更为依赖 AI 核心技术。 AI技术拥有两大要素: 核心技术平台 数据循环 只有将 AI 技术与数据结合,才可形成实用性的业务。本文主要侧重于介绍IBM、Google在基础层、技术层、应用层全面布局AI,并对其扩展应用场景等内容进行介绍。 IBM——Watso
AI科技评论
2018/03/08
2K0
全面布局AI,IBM、Google是如何做的?
【重磅揭秘】Google帝国原力觉醒:2016将征战哪些新疆域?
又到了半年一度的时候了:我们对 Google 的发展轨迹进行了追踪。对于正在不断扩张疆域的Google帝国,我们概括了所有(我们知道的)处于进展中的项目,推出半年一期的系列文章。 虽然从现在开始,也许我们应该说是 “Alphabet帝国中所有处于进展中的项目”了。“Google”现在仅仅只是“Alphabet”——Google创始人们新成立的总公司——下属公司之一。我们过去一直在追踪的Google的项目,已经落地生根成为了Alphabet下属的许多公司。不过放心吧,一切仍然尽在我们的追踪之中。 与往期相同,
新智元
2018/03/14
1.1K0
【重磅揭秘】Google帝国原力觉醒:2016将征战哪些新疆域?
展望 IoT 市场:机器学习能力定生死
机器哪怕价值上亿,也无法替代医生来治病救人;但一个25美元的可穿戴设备却知道你什么时候该去看医生。 1996 年,美国芝加哥的库克郡医院急诊室采用了一种算法来判断出现胸痛症状的患者中,哪些面临更高的心脏病发作风险,是否在医院床位紧缺的情况下有住院的充分理由。该算法严格按照流程执行系统的基础测试,被证明不但快速高效,且及其精准。相比单纯依赖医生的判断,该算法判定的低风险患者数量多了 70%,而高风险患者数量则达到实际数量的 95%(医生判断仅为 75-89%)。这真是让人惊叹——要知道那个年代,深度运算还未问
CSDN技术头条
2018/02/12
5700
展望 IoT 市场:机器学习能力定生死
Fitbit 就快上市了,为何中国手环依然硬不起来?
中国智能手环厂商在经历数个坏消息之后,终于迎来一个好消息。坏消息 1 是小米出了 79 元手环,坏消息 2 是 Apple Watch上市大受欢迎并且很大程度取代了手环,坏消息 3 是数据显示人们佩戴
罗超频道
2018/04/28
5800
Fitbit 就快上市了,为何中国手环依然硬不起来?
起个大早,赶个晚集,谷歌云业务还“有戏”吗?
全球公有云市场上,谷歌在向前追赶亚马逊和微软的途中,却被阿里云和IBM弯道超车。当竞争对手逐渐形成垄断之势,谷歌云还有机会打破现有的云计算版图吗?
科技云报道
2022/04/14
5240
起个大早,赶个晚集,谷歌云业务还“有戏”吗?
OpenAI 计划以要约收购的形式出售股票,投资者质疑其盈利能力
作者| 李冬梅 1 OpenAI 被曝就收购要约展开谈判 当地时间 1 月 5 日,据《华尔街日报》报道,有知情人士透露,爆红的聊天机器人 ChatGPT 背后的研究实验室 OpenAI 正在谈判以收购要约的形式出售现有股份,交易对该公司的估值达到 290 亿美元左右,使其在没有什么收入的情况下成为账面上最值钱的美国初创公司之一。 这些知情人士说,风投公司 Thrive Capital 和 Founders Fund 正在商谈投资该笔交易,交易中出售的股票总额至少为 3 亿美元。这些知情人士说,这项交
深度学习与Python
2023/03/29
3860
OpenAI 计划以要约收购的形式出售股票,投资者质疑其盈利能力
30天「开猿节流」!拆解硅谷大厂裁员新套路:部门重组
---- 新智元报道   编辑:Aeneas 好困 【新智元导读】最近,硅谷大厂们接连开启「部门重组」。如果在期限内找不到新岗位,对不起,你可以自己润出去了。 最近,硅谷的互联网大厂们为了「降本增效」,纷纷开始悄没声地裁员了。 But,大厂的「裁员」可不叫「裁员」,而是——「部门重组」。 当然,这个「重组」是有期限的。时间一到,没找到落脚点儿的人就得乖乖卷铺盖走人。 Meta:距离你被开除,还有30天 近日,彭博社的亿万富豪榜显示,小扎的资产缩水了一半。 小扎哭晕在厕所 而Meta计划在未来几个月
新智元
2022/09/22
2770
30天「开猿节流」!拆解硅谷大厂裁员新套路:部门重组
裁员的沃森健康,问题重重的IBM人工智能业务
李杉 编译整理 量子位 出品 | 公众号 QbitAI 沃森(Watson),IBM最重要的人工智能部门,搭载着这家公司的诸多期望。 就在上个月,IBM CEO罗睿兰还在一次会议上表示,我们正处在历史转折点上,把人工智能打造成无处不在的技术可以让企业的发展呈现出“指数级曲线”。 她甚至认为,有朝一日可能会因此而诞生“沃森定律”。 但在沃森部门上一轮裁员中被扫地出门的工程师却表示,该公司针对“认知计算”平台的推广,掩盖了他们在利用人工智能盈利的过程中遇到的真正困境。 “IBM沃森拥有了不起的人工智能技术。”一
量子位
2018/07/19
7480
谷歌上海研发院院长带队出走创业!VC热捧,塞钱都得跑得快
金磊 博雯 发自 凹非寺 量子位 报道 | 公众号 QbitAI 一边是美国总部,业务进展不顺败退,团队裁员重组。 另一边则是中国分舵,负责人带队出走创业,热捧之盛,累计拿到上亿美元融资,动作慢一点的VC连塞钱进去的机会都没有。 说的是谷歌,讲的是医疗健康业务,具体是上海研发中心几十号员工出走创业。 就在最近,一家名为耀乘的上海AI公司,隐秘低调,但又备受追捧。 因为其创始人,是谷歌上海研发中心的高管,其团队也都悉数出自谷歌上海office。 谁是耀乘? 公开资料显示,创办于2020年8月,位于上海。 其后
量子位
2023/03/10
5080
谷歌上海研发院院长带队出走创业!VC热捧,塞钱都得跑得快
谷歌Bard被曝剽窃ChatGPT?BERT一作跳槽OpenAI,揭惊天内幕
---- 新智元报道   编辑:编辑部 【新智元导读】谷歌有大麻烦了!外媒爆料说,Bard的训练数据部分来自ChatGPT。谷歌可能跳到黄河里也洗不清了。 3月29日,外媒The Information曝出了一个惊天大瓜! 谷歌的离职员工、已跳槽OpenAI的顶级研究员竟然曝出——Bard竟是用ChatGPT的数据训练的! 如果事情为真,这可真算得上是谷歌的顶级丑闻了。 对抗ChatGPT的AI,竟然用的是ChatGPT的训练数据,这可太讽刺了。 并且,这也明显违反了OpenAI的服务条款——要知道
新智元
2023/04/01
3410
谷歌Bard被曝剽窃ChatGPT?BERT一作跳槽OpenAI,揭惊天内幕
独立 SOAR 的终结?Google以5亿美元收购以色列网络安全初创公司Siemplify
Google正在收购以色列网络安全初创公司、SOAR供应商Siemplify。收购的价格估计为5亿美元,这是Google首次收购活跃在网络安全领域的以色列公司。Siemplify在以色列、美国和伦敦有200名员工,他们将在收购后加入Google。有分析师认为,这笔交易是独立 SOAR 和安全信息与事件管理 (SIEM) 市场终结的信号。
SDNLAB
2022/01/19
4200
独立 SOAR 的终结?Google以5亿美元收购以色列网络安全初创公司Siemplify
推荐阅读
相关推荐
谷歌战略揭秘:押注人工智能,云服务和Moonshots(一)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档