首页 » 网站建设 » phpspldoublylink技巧_SLS 数据加工周全进级集成 SPL 语法

phpspldoublylink技巧_SLS 数据加工周全进级集成 SPL 语法

访客 2024-11-19 0

扫一扫用手机浏览

文章目录 [+]

数据加工概述

Cloud Native

phpspldoublylink技巧_SLS 数据加工周全进级集成 SPL 语法

在系统开拓、运维过程中,日志是最主要的信息之一,其最大的优点是大略直接。
不过在全体日志的生命周期里有一对很难调和的抵牾:输出和采集日志哀求尽可能的大略便捷 vs 日志剖析时须要数据格式化并能够按需存储。
为理解决前者,担保做事的稳定和效率,提出了不同的高性能数据管道办理方案,比如阿里云 SLS 这样的云做事、还有 Kafka 这样的开源中间件。
而对付后者,须要供应给下贱规范化的、完全的数据,用于比如业务剖析等场景,SLS 数据加工即是达成这一需求的功能。

如上图所示,SLS 数据加工的常见场景:

phpspldoublylink技巧_SLS 数据加工周全进级集成 SPL 语法
(图片来自网络侵删)
规整:这是利用频率最高的场景,比如从文本日志数据中提取出关键信息,将其转为规范化的数据。
富化:比如用户的点击数据中只包含商品 ID,在剖析时须要从数据库关联起详细信息。
脱敏:随着我国信息安全干系法律的完善,对付敏感数据(比如个人信息)的处理哀求越来越高。
分裂:在数据写出时,处于性能、便捷性考虑会将多条数据合并输出,在剖析前则须要拆分出独立数据条款。
分发:将不同类型的数据分别写到不同的特定目标中,以供下贱定制化利用。

新版数据加工提升

Cloud Native

集成 SPL,统一语法SPL 是 SLS 为日志采集、交互式查询、流式消费、数据加工等数据处理的场景,供应的统一的数据处理语法,语法细节可参考 SPL 语法[1]。
新版数据加工 SPL 编写过程支持按行调试和代码提示,更靠近 IDE 编码体验。
性能提升 10+ 倍,大数据量、数据洪峰处理更平滑在处理无规则日志数据场景中,相同的处理繁芜度,新版数据加工相对付旧版有 10+ 倍的性能提升,能够支撑更高的数据吞吐量。
其余,通过调度系统的升级,面对平常流量上千倍的数据洪峰时,新版数据加工能够更加敏捷的实现打算并发扩展,尽可能减少洪峰带来的积压。
本钱更优,降至旧版 1/3通过数据加工做事的技能迭代升级,新版数据加工供应了更具上风的利用本钱,仅为旧版数据加工的 1/3。
以是,在需求场景已经支持时,推举利用数据加工(新版)。

集成 SPL、统一语法

Cloud Native

新版数据加工事理

新版数据加工通过托管实时数据消费的任务,结合日志做事 SPL 规则消费功能,实现对日志数据的实时加工处理,事理如下图。

调度机制对每一个加工任务,加工做事的调度器会启动一个或多个运行实例,并发实行数据处理,每个运行实例扮演一个消费者角色消费 1 个或者多个源 Logstore 的 Shard。
调度器根据运行实例资源花费、以及处理进度决定运行实例数目,实现弹性并发。
单个任务的并发上限为源 Logstore 的 Shard 数量。
运行实例根据任务的 SPL 规则和目标 Logstore 等配置信息,从数据加工做事分配的 Shard 中,利用 SPL 规则消费源日志数据,将基于 SPL 规则处理后的结果分发写入对应的目标 Logstore。
运行实例运行过程中,自动保存 Shard 的消费点位,确保任务停滞重启时,从断点处连续消费。

SPL 语法比拟旧版 DSL

相对付数据加工(旧版)DSL 措辞,日志做事 SPL 语法提升了易用性,详细如下:

1. 数据加工(旧版)DSL 语法作为 Python 语办法集,须要函数式编程,利用过程中存在较多语法符号冗余。
相较而言,日志做事 SPL 措辞是类 Shell 指令式语法,在最大程度减少语法符号的冗余。
如下案例:

旧版本利用函数 v 引用字段值 v("field"),SPL 则直接引用字段,比如 | where field='ERROR'。
旧版本函数调用 func(arg1, arg2),转为 SPL 指令 | cmd arg1, arg2,编写更简洁。

2. SPL 措辞支持处理过程中临时字段类型保持,数据类型转换[2];与之相反,数据加工(旧版)DSL 的定义中,字段值固定为字符串类型,类型转换的中间结果不支持保留。
比如,如下 DSL 脚本,需两次调用 ct_int 函数:

e_set("ms", ct_float(v("sec"))1000)e_keep(ct_float(v("ms")) > 500)

对应的 SPL 逻辑则更为简洁,无需两次转换类型,参考如下:

| extend ms=cast(sec as double)1000| where ms>1024

3. 其余,SPL 措辞可以无缝利用日志做事 SQL 函数,无需额外的理解和学习本钱,SPL 所支持的 SQL 函数参考 SQL 函数概览[3]。

数据加工 SPL 代码调试

调试菜单

数据加工(新版)SPL 调试菜单参考

,菜单按钮定义如下:

运行按钮:完全运行编辑框中的 SPL 规则。
调试按钮:开启调试模式,并实行运行至第一个断点,开启后可以实行按行、或者断点调试。
下个断点按钮:调试运行至下一个断点。
下一行按钮:调试运行至下一行。
停滞调试按钮:停滞当前调试过程。

代码编辑框的行号前的空缺区域为断点区域,在断点区域单击鼠标,即可在单击点对应的行添加调试断点,效果如下图。
单击已添加的调试断点,即可将其移除。

调试过程

1. 准备测试数据和编写 SPL 规则。

2. 在须要调试的行添加断点。

3. 单击调试按钮,开启调试模式,如下图。
黄色背景行表示当前停息的位置(语句未实行),蓝色背景行表示已经实行的 SPL 语句。

4. 在加工结果标签页中查看运行结果是否知足需求。

如果符合需求:进入第 5 步,连续调试运行。
否则,单击停滞调试按钮,回到第 1 步,修正 SPL 规则,重新开始调试过程。

持续迭代升级

Cloud Native

接下来,新版数据加工将持续进行迭代升级,这里我们仅聊一下近期即将推出的两个升级。

1. 支撑完备的数据处理场景

目前新版数据加工专注于无规则数据处理场景,即偏打算型,对付数据流转场景暂未覆盖,比如数据分发至多目标或动态目标、维表富化、IP 解析、跨地域同步数据。

接下来,新版数据加工将着重支持这些场景,并通过架构升级,供应更稳定、更易用的做事,比如跨区域同步的加速能力、基于数据集的分发等。

2. 旧版数据加工任务无缝升级

对付线上在运行的旧版数据加工任务,须要运用如上所述的新版本提升,数据加工做事将从两个技能角度支撑已有任务的原地升级:

第一,数据加工做事担保数据的完全性,自动将当前的数据消费点位迁移至新版数据加工,升级后将从该点位连续消费数据。

第二,基于 AST 语法树解析,自动翻译旧版数据加工任务的 DSL 脚本,至同等数据处理逻辑的 SPL。

干系链接:

[1] SPL 语法

https://help.aliyun.com/zh/sls/user-guide/spl-syntax/

[2] 数据类型转换

https://help.aliyun.com/zh/sls/user-guide/spl-general-reference?#9f3d943aa1ceb

[3] SQL 函数概览

https://help.aliyun.com/zh/sls/user-guide/function-overview

标签:

相关文章

易语言在端口读写应用中的魅力与优势

随着计算机技术的飞速发展,编程语言在各个领域的应用日益广泛。在众多编程语言中,易语言以其简单易学、应用广泛的特点,受到了广大编程爱...

网站建设 2024-12-28 阅读0 评论0

巴黎世家IT,时尚界的创新先锋

在时尚界,巴黎世家(Balenciaga)始终以其独特的风格和前卫的设计理念引领着潮流。近年来,随着科技的发展,巴黎世家将目光投向...

网站建设 2024-12-28 阅读0 评论0

易语言在头像提取技术中的应用与前景展望

随着互联网的快速发展,个人头像已成为网络社交、电子商务等领域的重要元素。如何高效、准确地提取头像,成为了一个亟待解决的问题。易语言...

网站建设 2024-12-28 阅读0 评论0

易语言在供应链管理中的应用与方法

随着经济全球化的不断发展,供应链管理在企业管理中的重要性日益凸显。如何提高供应链的效率和效益,成为众多企业关注的焦点。近年来,易语...

网站建设 2024-12-28 阅读0 评论0

平安IT内勤,智慧金融背后的守护者

在飞速发展的金融科技浪潮中,平安IT内勤扮演着至关重要的角色。他们如同智慧金融的守护者,默默无闻地坚守在幕后,确保着系统的稳定运行...

网站建设 2024-12-28 阅读0 评论0