前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SQL还是那个SQL么?

SQL还是那个SQL么?

作者头像
用户2936994
发布2018-12-12 13:40:46
7890
发布2018-12-12 13:40:46
举报
文章被收录于专栏:祝威廉祝威廉

前言

今天MLSQL群里有个小伙伴问到,能把Spark, Flink 这些框架运行在黑莓上么? 我回答道:可以作为一个内置SQL计算引擎嵌入(不是数据库),其他可能没啥用了。

不过这又引起了我的另外两个思考,第一个是,Spark真的能(或者有必要)跑在移动设备上么?第二个问题是,在传统Web/App开发领域,SQL只是数据库的一个操作语言(DSL),但是在大数据里,SQL已经远远超越了数据库操作语言的范畴,而是数据处理的标准语言,而在MLSQL中,SQL被发挥到极致,是一切数据处理的核心语言,无论爬虫,数据处理,流式,ML(AI)都是用SQL做交互的。 那么为什么在大数据领域SQL会有这种变革呢而在Web/App开发领域没有这种事情发生呢?

Spark真的能(或者有必要)跑在移动设备上么

首先,Spark经过改造完全可以跑在移动设备上的,其次是这也是有必要的。之前跟挖财的小伙伴交流,他们用改造过的Spark引擎可以把一些小数据量的复杂SQL计算缩小到几毫秒,那么如果将该引擎移植到Ios/Android/BlackBerry, 根据我前面提到的第二个思考,我们不再把SQL当做一个数据库操作语言,而是数据处理语言,我在移动设备上完全可以把数据处理全部换到spark引擎上,而且可以实现处理逻辑的热升级(手机端连接服务器,更新SQL脚本)就能更新数据处理逻辑。会不会功耗过高?几毫秒的CPU(GPU/AI芯片)而已。

对 Web/App小伙伴思维模式的冲击

我们知道以前在做Web的时候,分库分表的痛点是查询的时候很难受。而早期Spark无法被Web/App的小伙伴使用,因为他做不到毫秒级的计算延迟。但是有针对性的对Spark做优化(不再针对大数据,而是针对Web/App),得益于Spark的多数据源支持,以及高效的SQL计算引擎,分表分库查询不在是噩梦,我们可以轻易实现。事实上,tidb已经是这么做的了。这是以第一点。

第二点是,很多业务处理环节,是不是都能通过SQL来处理呢?不能说大部分,但是应该相当一部分是可以不用写代码了,而是通过SQL来完成的,那这也意味着,我们可以热更新的好处。所有数据处理无非如下三种模式:

image.png

而在MLSQL里,我们甚至对API也用SQL做了抽象:

image.png

最后的实现效果如下:

image.png

我们会用sql对传递进来的data的每条内容中的feature字段进行处理,得到的结果也会是一张表。

结论

  1. SQL可以在Web/App 领域进一步发扬光大,就像他在大数据里一样。
  2. Spark 团队可以考虑将Spark移植到Web/App领域。
  3. 期待挖财团队的新开源项目。
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2018.11.14 ,如有侵权请联系 cloudcommunity@tencent.com 删除

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 前言
  • Spark真的能(或者有必要)跑在移动设备上么
  • 对 Web/App小伙伴思维模式的冲击
  • 结论
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档