猿们,还记得前几年火热的 nosql 吗?

2018-01-14 15:25:10 +08:00
 mb135
那时候多少招聘都要求 nosql,好像带上 nosql 不能彰显公司的逼格,简历也同样。多少网站的 CTO 出来现身说法,控诉吃人的 SQL 旧社会,一把鼻涕一把眼泪的分享换成 mongodb 的美好新生活。

现在呢?还不是乖乖的换回传统的 sql 数据库。nosql 有他的优点,但不是革命者,只是点缀。现在炒的火热的前端框架同样如此
12885 次点击
所在节点    程序员
80 条回复
mb135
2018-01-14 15:34:03 +08:00
xml+xslt 革 HTML 的命听说过没? CSDN 还真这么做过,那时候打开帖子都是 xml 后缀的网址,当时感觉逼格好高啊。

生成真静态听说过没?那时候连论坛这种高交互性的网站都把生成真静态当成卖点,仿佛数据库就是原罪,sql 数据库倒了八辈子霉,整天被人革命。

还有缓存热,恨不得把整个页面都给缓存了,程序员开个博客也使用各种缓存,大缓存套小缓存,搞得打开一篇文章都得卡半天,计算资源全耗在缓存上了。

现在又有个人博客程序拿大前端 spa 当卖点的,是不是很熟悉的味道?哦,对了,在十年前这叫胖客户端
dtysky
2018-01-14 15:37:40 +08:00
这叫螺旋上升,条件有了,以前做不好的就可以做好了

至于理念么,工程界玩的大都是学界上个阶段的东西,没什么好说的,很多年翻来覆去也很正常

需求才是一切,需要什么用什么
chenqh
2018-01-14 15:42:00 +08:00
现在大部分公司也是用的 nosql 吧,毕竟用 mysql 来搞海量数据很多公司都搞不定的吧,至于 newsql,现在还在发育阶段吧,反正我看着 mysql 分库分表,真的一点想法都没有,完全不知道怎么搞
WinMain
2018-01-14 15:43:54 +08:00
现在 nosql 不是没人用,而是用的太多。。。以至于没必要在要求里面写了,我觉得是。😄
mb135
2018-01-14 15:45:55 +08:00
@chenqh nosql 只是点缀,没有革掉 sql 的命,只是用来存储数据量大逻辑性不强的东西。业务的总体架构,还是围绕着 sql 数据库进行
WispZhan
2018-01-14 15:47:16 +08:00
都是一群别有用心和半瓢水的人。

说别有用心,是想乘火打劫。
说半瓢水,是什么实际应用场景不考虑,只想蹭热度,盲从追新。
---
和这几年微服务和容器不一样的么?!
连自己的应用规模都不考虑,就直接上µ。
连监控和部署都没有,就直接跳µ。
连业务领域都没有正确划分就想上µ。
---
发现很多公司或者某些人,平时连设计都没有,整天就想蹭热度,涨身价。特别是创业公司和小公司特别多。
codermagefox
2018-01-14 15:47:21 +08:00
我是萌新,我赞同楼主的观点,但是不同意楼主的态度.
在技术上楼主肯定比我高很多个层级,我也没法评判 SPA 是不是就是未来,但是 SPA 这种新技术的出现是有意义的.
不管什么行业,什么技术,都需要足够的试错.
你说 nosql 从火热变得无人问津,这说明还是已经有人做出了改变,尝试过,不行,才换回去的.
你说 xml+xslt 革 HTML 的命,CSDN 也已经尝试过,不行,才换回去的.

新技术的产生你可以说是炒作,可以说是过热,但是我反对你说业界纯粹是拿它当卖点.

你又怎么能确定这波大家都换 SPA 之后还会不会换回去?

最典型的例子,你可以看看,SVG1.1 在 2003 年就被确立为 W3C 标准,但是它最后还是被 CSS 干掉了,近几年才重新火起来.

CSS 当初提出"流"的概念,那个时候会不会也像我们今天的讨论一样,有些人会说流完全是热点,是炒作?

我不懂,但是我保持敬畏.
chenqh
2018-01-14 15:47:52 +08:00
@mb135 但是 nosql 已经替换掉 sql 一部分了,没有完全替换这种事情的,就好比 c->cpp->java,java 也只是替换了一部分领域而不是全部
WispZhan
2018-01-14 15:49:18 +08:00
@WispZhan 另外对于 nosql 是对 sql 的补充不是代替。在 sql 不适合的领域才会有 nosql 的使用场景。想代替?那只是某些人根本没理解应用场景。
lovescar
2018-01-14 15:50:33 +08:00
谁知道啥火呢,反正都有可能吧
dan2001go
2018-01-14 15:56:17 +08:00
Nosql 还在吧,现在就是被分成了问 Redis 的一些底层问题了。

现在面试基本上稍微讲点技术的公司都会问微服务。一堆专业术语,仿佛你没有接触到微服务的这些内容你就不懂程序一样。还有 RPC 方面的内容。

另外一个热潮就是问原理,问算法和基础。这个大概是和人多起来有关系。本来是用来卡那些培训班出来的人的。不过大概没想到的是这个已经被当成了培训班的一个新的卖点拿来授课了…反而会卡死一些平常写业务代码比较多的人。

比较奇怪的是文档型数据库面试的时候问的非常少。Mongodb 和 Elasticsearch 目前都没有碰到任何人问过。

这些热潮其实对被面试者来说,也没有什么可以揶揄的了,毕竟话语权掌握在别人手里,别人想怎么问就怎么问。你答不出就可以不选择你。没反抗的余地,只能顺应。
ivechan
2018-01-14 16:04:06 +08:00
经常看到招聘要求里有 redis,mangodb 的,应该算 nosql 的一部分吧。。。
mdluo
2018-01-14 16:36:24 +08:00
有的人,总觉得这个世界上一定要有一个造物主,制定好一切规则,绝不允许人打破。还喜欢嘲笑那些在创新路上摸爬滚打的人说,你看你们折腾这么半天最后还不是走了造物主制定好的老路...

看到上面有人提 CSS,想起《 CSS Secrets 》引言部分的一段话,大概意思是:你们以为 W3C 标准好像是一群研究员抓耳挠腮写出来的,然后浏览器厂商再根据这些标准去做实现。其实才不是呢,制定标准的人 88% 都是浏览器开发商、主流网站 的公司的人,他们在制定的过程中要不断的撕逼和妥协,标准也是要经历 6 个阶段最终定稿。

最近我在做浏览器内核里某个功能的移植,发现这一部分功能的 W3C API Specification 不过是 WebKit 内核里这部分功能的实现的 API 说明文档。所以哪有什么安排好一切的造物主、制定好一切细则的标准,而不断摸爬滚打的人们总结下来的经验而已。

倒置因果和幸存者偏差是我们经常犯的错误。
WuwuGin
2018-01-14 16:38:27 +08:00
与其用 NoSQL 模拟关系型数据库,还不如直接用关键型数据库。
Phariel
2018-01-14 16:46:01 +08:00
NoSQL 需求的资源太大 而且并没有 SQL 型这么高效稳定 所以大家碰的壁踩的坑都差不多了自然关注度就小了 NoSQL 当当缓存还是不错的
q397064399
2018-01-14 16:46:22 +08:00
@mdluo #13 问题是绝大部分创新是没必要的,而且人是社会化下的赋予的属性,,很容易盲目跟风,
NoSql 也是 NotOnlySQL 不是要革命,毕竟底层算法跟需求摆在那里,MVCC 多版本并发控制 在很多场景就是很有效啊,数据库还带事务,Redis 可不支持事务。
mdluo
2018-01-14 17:34:13 +08:00
@q397064399 #16

《高性能 MySQL 》作者写的这篇博文:

https://www.xaprb.com/blog/2014/12/08/eventual-consistency-simpler-than-mvcc/

(译文: http://www.jdon.com/forum/messageList.shtml?thread=46910

摘抄一下译者的个人评论:

现在进入多核时代,只要是运行在多核上多用户同时读写都回避不了分布式和并发这两个课题。我们不能因为我们熟悉关系数据库,就对之产生 100%信任,其实 MySQL 这些关系数据库在处理分布式 并发以及一致性上非常复杂,而且有问题在其中,会打折扣。

比如缺省设置 READ COMMITTED 隔离级别其实并不能带来真正高一致性,而 REPEATABLE READ 类似于串行序列化,拒绝并行计算,严重浪费多核资源。

所以,这些数据库其实要么是使用类似加锁技术实现事务,这种类似 Java 中同步锁等应用一样,这种锁的多线程并发很差;要么是使用一种类似最终一致性的 READ COMMITTED,也并不能给你真正高一致性。

与其接受传统关系数据库教廷式的洗脑,不如打开这个盒子,实现 Out-of-box,NoSQL 是这种尝试,DDD 和 CQRS 也是这种尝试,将分布式和并发主动权掌握在开发人员自己手里,而不是打破脑袋搜集各种关系数据库资料,拜山各种关系数据库牛人,这种行为才是真正封建迷信呢。

什么是真正封建迷信?就是自己无法或不愿主动研究自然的秘密,期待牛人大牛为自己指点迷路,迷信于一些牛人的神奇“智力”,缺乏对自己的自信。
changlers
2018-01-14 17:46:36 +08:00
我觉得还是看自己的需求吧,总不能因为喜欢 nosql 而用 nosql,技术还是为产品服务
fulvaz
2018-01-14 17:50:31 +08:00
楼上有些人啊....

MVC 当年不"炒作"? 设计模式不"炒作"? SSH? 还有那群抛弃 Netbean 的人?

尝试就是炒作? 布道也是炒作?
RqPS6rhmP3Nyn3Tm
2018-01-14 17:57:40 +08:00
最近在写的项目在用 DynamoDB …感觉已经跟不上时代了

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

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

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

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

© 2021 V2EX