该方案目前还处于演示阶段。
一般来说,数据库查询时间会随着记录数量的增加而增加,而索引的引入正好让这种耗时的增加变得不那么快。
但是@宏哥最近开发了一种全新的解决方案,可以彻底解决这个问题,并且他委托我来发布和推广这项技术。据说宏哥已经在他建立软件王国的幻想中的第一个软件中使用了该技术。
简单介绍一下宏哥的新计划:
一般我们在建数据库的时候,表结构是固定的,比如用户表,用户的属性信息基本就确定了。当新用户加入时,一条记录会插入到表中。
@宏哥 表示这种做法完全是愚蠢的。他举了一个例子:就像在分布式技术之前的时代,如果想要提高系统性能,就必须提高机器的配置,也就是所谓的“垂直扩展”,但配置的提升很快就会到来。结束并且不会升级。 。但是现在是分布式时代,我们提倡的是系统的水平扩展性。
那么在宏哥的系统中,所有的表都只有一条记录,那么如何插入一条记录呢?请看下面的SQL语句你就能猜到:
--假设要插入的用户id为2438
更改表用户添加 user_2438 TEXT;
UPDATE users SET user_2438 = "{'名称':'码云','域名':'m.smtshopping.cn'}";
怎么样?很简单吧,而且性能也非常好,对吧?
那么我们来看看查询:
从用户中选择 user_2438
这么简单的查询,而且表中只有一条记录,所以这条SQL语句的执行时间相当于0ms。
如果删除用户怎么办?
ALTER TABLE users DROP user_2438;
是的,本文使用的演示示例是基于宏哥最喜欢的PG数据库。
看到这个我惊呆了。
真的,我一直认为@宏哥很愚蠢。没想到如此开创性的工作,他竟然能获得计算机图灵奖。
宏哥的智商给我留下了深刻的印象。宏哥对开元中国500万会员的智商负责。