扫码关注公众号:芋道源码

发送: 百事可乐
获取永久解锁本站全部文章的链接

《Dubbo 实现原理与源码解析 —— 精品合集》 《Netty 实现原理与源码解析 —— 精品合集》
《Spring 实现原理与源码解析 —— 精品合集》 《MyBatis 实现原理与源码解析 —— 精品合集》
《Spring MVC 实现原理与源码解析 —— 精品合集》 《数据库实体设计合集》
《Spring Boot 实现原理与源码解析 —— 精品合集》 《Java 面试题 + Java 学习指南》

摘要: 原创出处 zhihu.com/question/29775354/answer/45744415 「知乎 ,作者匿名」欢迎转载,保留摘要,谢谢!


🙂🙂🙂关注微信公众号:【芋道源码】有福利:

  1. RocketMQ / MyCAT / Sharding-JDBC 所有源码分析文章列表
  2. RocketMQ / MyCAT / Sharding-JDBC 中文注释源码 GitHub 地址
  3. 您对于源码的疑问每条留言将得到认真回复。甚至不知道如何读源码也可以请教噢
  4. 新的源码解析文章实时收到通知。每周更新一篇左右
  5. 认真的源码交流微信群。

问题:

今天复习西游记的时候,突然想起来的一个问题。

孙悟空在碰到菩提祖师之前,阎王那里是怎么记载阳寿的呢?

猴子甲,乙,丙?西游记里是否有关于这个问题的记载呢?或者别的传说里呢?

下面是知乎网友 大海 从数据库设计和操作的**回复:**

这个问题让我对地狱数据库系统(Hell-DBMS )进行了几点小思考,开个脑洞。

1、生死薄技术上如何实现?广大生灵在生死薄中的唯一标记是什么?阴间数据库是什么样一个数据库?

首先,地狱必须有数据库,数据量太大了

每个生灵都要有记录,且必须是实时记录,要进行数据分析。想像一下各种生灵,万物有灵,大大小小,连蝼蚁飞蛾也是命,从单细胞到现代社会的数据应该有多大。

数据库的话每个生灵就要有唯一标记。

实名反对说是名字主键的,这是基本知识,名字重名怎么办,数据库原理请重修

实名反对说是IP地址标记的,IPV4很快就用光的好不好;IPV6貌似在生物历史长河中也是不够的,朝生暮死都是生灵,这么多年过去了,这数据积累。

把自动生成的唯一ID当主键相对还靠谱,但位数必须相当长,数据库得特别设计,如此大数据至少要谷歌技术支持,也许叫地狱歌,SQL -SERVER之类的技术根本顶不住。

搞Hell-DBMS请先看下大技术

Hoogle File System
Hoogle Bigtable
Hoogle MapReduce

对了,《开源海量数据库技术在阴间生死管理系统中的研究与实践》应该获得天庭科技进步特等奖的。

其次,查询效率必须高

查询效率低的话,阎王还得点支烟等半天结果么,经常有上级官员过来查数据,玉皇啊,如来啊,即使是阿难、迦叶来也是惹不起的人,用户不满意,KPI不行、绩效差阎王官位不稳的。

业务量这么大,每天至少插入数亿条新记录,删除数亿条记录,所有善恶状态数据都要实时记录,想想要接多少善恶传感器,信道冲突肯定很难解决,好事坏事用WIFI还是ZIGBEE传的不清楚,说不定某米会推出家庭善恶智能数据处理中心。

生灵死掉之后还要迅速进行大数据分析,判定死人到底应该进几层地狱。数据分析慢了奈何桥都要排队,用户差评有木有!数据粒度非常非常细,死亡时间三更五更都不能差,下了地狱打多少下铁棍都要精确计算,况且还会有许多异常发生,有时候要回滚,有可能不小心操作错了(死而复生应该就是地府回滚,详细请见《聊斋志异》[1]);有时候要灾难恢复,比如孙猴子捣乱引起的灾难性数据损失;比如用户投诉问题,凭什么猴子要短命?这种问题只有孙猴子问得出,不仅问得出还直接上门责问,地府的安保工作真的要加强。

对了,像悟空这种异常用户,Sa恨不得一删了之有木有?(不懂Sa的IT人士请自行面壁,admin也算sa)

再次,必须能应对瞬时并发高峰数据

战争来了,成千上万的人阵亡;瘟疫了,成千上万人逝去;灭鼠了,几万几十万老鼠完蛋;飞机撒农药了,多少修行不够的小精灵批量完蛋。

有生灵死亡必须要登记并把流程向前推进,这是典型的移动应用,无数的勾魂小鬼在短时间内飞速赶到现场,管它是扫二维码还是近场通讯技术NFC,反正无数小鬼同时用移动客户端向Hell-DBMS系统上传数据,App必须友好,后台必须能顶住,不能学12307-1总是掉链子,12307-1掉了链子还能骂它:“去死!Go to Hell!”,Hell-DBMS可怎么骂才好。所以呢:

关键时刻,服务器不能卡住,数据库性不能下降,生死薄必须实时更新。

最后,必须有大数据分析和预测技术

阴间有谛听,可以通过”听“,得到过去数据和未来的数据,这明显是大数据和云结合的杰作。为什么是听呢?因为阴间数据库已经把数据语音化了,用定向波束直接送到谛听耳边,电磁监听根本没有效果,几乎不可能泄密。定向波束的技术在加大功率后可同时用于在阴间跳广场舞的某些亡灵们。

2、孙猴子在阴间里删除数据,怎么删除的?后来如何?

结论1: 猴子要删除数据,应该是从界面删除的,没什么高技术,纯粹的社会工程而已。

巨型数据库,大数据数据库一定是分解得比较细的,删除的话至少是多表级联删除,直接从主表DELETE 未免要引发异常,再说孙猴子不是计算机专业的,应该是用金箍棒顶着小鬼的顶梁门,胁迫他用超级用户进去,选择界面的删除功能搞定的。

我猜阴间数据库删除要左右各一个小鬼,持阎王发的优盾,同时输入口令。

孙猴子反正克隆能力强,变出几个分身分别逼住就能搞定。
这个BUG系统必须要改进。

所以这是正常删除,删除之后,轮回系统并没有完全混乱,只影响了一部分数据。

即使给孙猴子开个CONSOLE,他也记不住命令,猴急猴急,抓耳挠腮,他最多会点点鼠标。

结论2:阴间数据库有强劲的灾难恢复功能

话说,猴子完全低估了程序员们的实力。海量数据库都有强大的异地容灾备份功能,数据应该是备在最安全的雷音寺(第三方),所有操作均有LOG。在西方以如来为首的专家团指导下(具体操作应该是负责安全保卫的天王,成就归于领导),数据迅速恢复,猴子们根本没有得到永生,在西方如来团队的支持下数据迅速恢复,猴子家族应该死还是死。

孙猴子自己么,虽然罪过不小,但是他会闹,能力还强。为了和谐天庭管理层还是为他做了特殊标记,在数据库里加上一个TAG,设定为神仙级,计算寿命但不设定界限,有异常情况直接发出系统警报,和RuLai -SkyNet All-in System系统联动,确保一方平安。

参考文献:

0 、《Big Data Application Platform for Hell》[J] InHell Hell-SCI收录
1、《论Paxos算法在阴间生死管理系统中的应用与优化》[J] 阴间信息技术 玉帝元年 第7788卷 核刊
2、《论Consistent Hash在阴间生死管理系统云中的应用》[M]阴间信息技术 玉帝9527年 第125222 核刊
3、 《论超大规模稠密矩阵在阴间生死管理系统中的理论研究》[C] 信息技术阴间应用大会 9528
4、 《论孟婆汤在阴间生死管理系统库存管理当中的管理流程》 [J] 阴间食品与营养 VOL 2241554
5、《论牛头马面阴间勾人大队的管理电子化》[J] 阴间数字化城管研究 VOL15486488789
6、《论天庭-西天-阴间点对点技术在阴间办公自动化中的实现》 [J] 阴间实用软件增刊。

文章目录
  1. 1. 1、生死薄技术上如何实现?广大生灵在生死薄中的唯一标记是什么?阴间数据库是什么样一个数据库?
  2. 2. 2、孙猴子在阴间里删除数据,怎么删除的?后来如何?