SQL还是那个SQL么?丨CSDN博文精选

点击上方“程序人生”,选择“置顶公众号”

第一时间关注程序猿(媛)身边的故事

640?wx_fmt=jpeg

本文来自CSDN博客专家祝威廉的博文,如需转载,请联系原文作者,点击文末“阅读原文”可直接访问作者博客。


今天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来完成的,那这也意味着,我们可以热更新的好处。所有数据处理无非如下三种模式:


640?wx_fmt=png


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


640?wx_fmt=png


最后的实现效果如下:


640?wx_fmt=png


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


结论


SQL可以在Web/App 领域进一步发扬光大,就像他在大数据里一样。

Spark 团队可以考虑将Spark移植到Web/App领域。


- The End -

「若你你有原创博文想与大家分享,欢迎投稿或入驻CSDN博客」

博客地址:https://blog.csdn.net

投稿请加编辑微信丨mengyidan1988

备注#博文# 


更多精彩博文

移动一小步,视界大不同!

更多程序员技术交流,奇闻轶事,

欢迎扫描右侧二维码下载

CSDN Android、iOS移动客户端。

640?wx_fmt=png


推荐阅读:

640?wx_fmt=gif


print_r('点个赞吧');
var_dump('点个赞吧');
NSLog(@"点个赞吧!");
System.out.println("点个赞吧!");
console.log("点个赞吧!");
print("点个赞吧!");
printf("点个赞吧!\n");
cout << "点个赞吧!" << endl;
Console.WriteLine("点个赞吧!");
fmt.Println("点个赞吧!");
Response.Write("点个赞吧");
alert(’点个赞吧’)


猜你喜欢

转载自blog.csdn.net/csdnsevenn/article/details/84801551