一篇看懂!MLSQL 是如何作为一个可编程的 SQL 语言的?

本文涉及的产品
EMR Serverless StarRocks,5000CU*H 48000GB*H
简介: 重点讲解 MLSQL 的一些语法特性,通过这些特性的覆盖,我们可以看到 MLSQL 是怎么作为一个可编程的 SQL 语言的。

开源大数据社区 & 阿里云 EMR 系列直播 第二期

主题:MLSQL - 可编程的 SQL
讲师:祝海林,Kyligence 资深数据架构师
议题重点:重点讲解 MLSQL 的一些语法特性,通过这些特性的覆盖,我们可以看到 MLSQL 是怎么作为一个可编程的 SQL 语言的
直播回放链接:https://www.slidestalk.com/w/399


前言

SQL 简单易用,但是现在大家用的多了,也慢慢发现它还是存在诸多问题的。我们认为良好的编程应该是创建小型、可理解、可重用的逻辑片段,并且这些逻辑片段还要被测试、被命名、被组织成包,而这些包之后可以用来构造更多有用的逻辑片段,这样的工作流程才是合理又便捷的。更进一步的,这些“高阶”能力应该是可选的,我们总是希望用户一开始能用最简单的方式来完成手头的工作。尽管如此,现在的 SQL 并不能很好的支持我们前面提到的这些。

这次分享重点介绍了 MLSQL 的一些语法特性,通过这些特性的覆盖,我们可以看到 MLSQL 是怎么作为一个可编程的 SQL 语言的。

内容概述

为什么 SQL 是数据时代的标准,而不是像 Python 这样的通用语言?因为用 Python 你可以解决大部分你不需要解决的问题,所以你相当于拿到了零部件,而不是一辆能跑的汽车。你花了大量时间去组装汽车,而不是去操控汽车。大部分同学核心要解决的是数据操作问题。SQL 就是这么一个方便你操作数据的语言。

你不需要关注 CPU ,内存,临时变量,线程这些和计算机相关的概念,SQL 可以让你很自然的用语言去告诉计算机怎么操作这些数据,你只要描述好了你的数据操作逻辑,剩下的交给计算机就好了。

但是 SQL 也存在一定的局限性。
1.png

时代在变,SQL 也需要与时俱进,而 MLSQL 正好是这个与时俱进的结果。
2.png
3.png

可编程能力:脚本化

4.png

可编程能力:模块化

5.png
6.png

可编程能力:Snippet Template

7.png

可编程能力:分支语法支持

8.png

可编程能力:Python 支持

9.png

可编程能力:Java / Scala 函数扩展

10.png

可编程能力:命令行封装

11.png

可编程能力:语言扩展点

12.png
13.png

MLSQL 特点总结

14.png

MLSQL Engine 逻辑分层图

15.png

最后,但是也是最重要的:如何保证数据安全?

16.png

解析时权限控制原理示意图

17.png

运行时权限控制原理示意图

18.png

语法元素权限控制原理示意图

19.png


后续我们会在钉钉群定期推送精彩案例,邀请更多技术大牛直播分享。欢迎有兴趣的同学扫下方二维码加入钉钉群进行交流和技术分享。关注公众号,锁定每周精彩分享内容!

图片1.png

相关实践学习
基于EMR Serverless StarRocks一键玩转世界杯
基于StarRocks构建极速统一OLAP平台
快速掌握阿里云 E-MapReduce
E-MapReduce 是构建于阿里云 ECS 弹性虚拟机之上,利用开源大数据生态系统,包括 Hadoop、Spark、HBase,为用户提供集群、作业、数据等管理的一站式大数据处理分析服务。 本课程主要介绍阿里云 E-MapReduce 的使用方法。
相关文章
|
5月前
|
SQL 存储 数据库
爆肝!一看就懂的《SQL 语言知识体系》【建议收藏】(下)
爆肝!一看就懂的《SQL 语言知识体系》【建议收藏】
56 1
|
3月前
|
SQL 关系型数据库 MySQL
在MySQL中,什么是结构化查询语言 (SQL)
【8月更文挑战第20天】在MySQL中,什么是结构化查询语言 (SQL)
66 1
|
4月前
|
SQL 存储 关系型数据库
SQL语言优缺点有哪些?
SQL(Structured Query Language)语言作为数据库管理和操作的标准语言,具有一系列的优点,同时也存在一些缺点。
98 7
|
1月前
|
SQL Oracle 关系型数据库
SQL语言的主要标准及其应用技巧
SQL(Structured Query Language)是数据库领域的标准语言,广泛应用于各种数据库管理系统(DBMS)中,如MySQL、Oracle、SQL Server等
|
1月前
|
SQL 关系型数据库 MySQL
Go语言项目高效对接SQL数据库:实践技巧与方法
在Go语言项目中,与SQL数据库进行对接是一项基础且重要的任务
67 11
|
17天前
|
SQL 数据挖掘 Python
数据分析编程:SQL,Python or SPL?
数据分析编程用什么,SQL、python or SPL?话不多说,直接上代码,对比明显,明眼人一看就明了:本案例涵盖五个数据分析任务:1) 计算用户会话次数;2) 球员连续得分分析;3) 连续三天活跃用户数统计;4) 新用户次日留存率计算;5) 股价涨跌幅分析。每个任务基于相应数据表进行处理和计算。
|
5月前
|
SQL 存储 数据库
爆肝!一看就懂的《SQL 语言知识体系》【建议收藏】(中)
爆肝!一看就懂的《SQL 语言知识体系》【建议收藏】
68 1
|
3月前
|
SQL 关系型数据库 MySQL
|
3月前
|
SQL 数据库 索引
SQL 编程最佳实践简直太牛啦!带你编写高效又可维护的 SQL 代码,轻松应对数据库挑战!
【8月更文挑战第31天】在SQL编程中,高效与可维护的代码至关重要,不仅能提升数据库性能,还降低维护成本。本文通过案例分析探讨SQL最佳实践:避免全表扫描,利用索引加速查询;合理使用JOIN,避免性能问题;避免使用`SELECT *`,减少不必要的数据传输;使用`COMMIT`和`ROLLBACK`确保事务一致性;添加注释提高代码可读性。遵循这些实践,不仅提升性能,还便于后期维护和扩展。应根据具体情况选择合适方法并持续优化SQL代码。
56 0
|
3月前
|
SQL 存储 大数据
SQL 语言发展史简直太震撼啦!从诞生到现代数据处理,见证一场奇妙的演变之旅,快来感受!
【8月更文挑战第31天】SQL(结构化查询语言)自20世纪70年代由IBM研究员E.F. Codd提出以来,已成为现代数据处理不可或缺的一部分。它最初简化了层次和网状模型中复杂的存储与检索问题,通过基本的SELECT、FROM和WHERE关键字实现了数据查询。80年代,SQL在商业数据库中广泛应用,引入了GROUP BY、HAVING和ORDER BY等功能,增强了数据分析能力。90年代,互联网和企业信息化推动了SQL的进一步优化与扩展,支持分布式数据库和数据仓库等技术。
55 0
下一篇
无影云桌面