字节跳动FlinkSQL优化实践:扩展DDL与功能增强
130 浏览量
更新于2024-08-27
收藏 1.57MB PDF 举报
FlinkSQL在字节跳动的优化与实践深入探讨了Flink SQL在大型互联网公司如字节跳动中的实际应用与挑战。自2018年Blink开源以来,字节跳动内部在Flink 1.9发布前已开始构建基于master分支的内部SQL平台,该平台在2019年10月升级到基于Blink planner的Streaming SQL平台,并广泛内部推广。在这个过程中,团队面临了一些有趣的需求场景和未解决的问题,比如Flink 1.9版本的DDL支持不足。
为了适应内部需求,字节跳动针对Flink 1.9进行了DDL扩展,增加了如`CREATE TABLE`, `CREATE VIEW`, `CREATE FUNCTION`, `ADD RESOURCE`等关键SQL语法支持,同时填补了watermark定义方面的空白。此外,他们发现用户对于SQL处理复杂业务逻辑的反馈中,许多其实是可以通过外部RPC调用解决的,因此开发了RPC维表和sink,允许直接在SQL中操作RPC服务,这极大地拓展了SQL的应用范围,甚至包括FaaS(函数即服务)场景。
在数据连接器方面,字节跳动实现了一系列内部源(sources)和sink(sinks),包括RocketMQ、ClickHouse、Doris等,以及配套的PB、Binlog、Bytes等格式。他们还创建了一个在线的界面化SQL平台,提供全面的功能支持,如SQL编辑、解析、调试,自定义UDF(用户定义函数)和Connector,版本控制,以及任务管理。
在实践优化方面,团队特别关注了窗口操作性能,引入了Mini-Batch功能,这使得Blink planner的窗口处理更加高效。同时,他们在SQL语法、性能瓶颈和用户体验上进行了针对性的改进,以提升整体Flink SQL在实际生产环境中的表现。这些经验分享对于理解和优化Flink SQL在大规模实时流处理中的应用具有很高的参考价值。
点击了解资源详情
点击了解资源详情
点击了解资源详情
2023-03-21 上传
2019-10-25 上传
2024-03-19 上传
2018-11-30 上传
115 浏览量
2020-03-18 上传
weixin_38744375
- 粉丝: 373
- 资源: 2万+
最新资源
- acfplot.m:计算并绘制输入序列自相关的估计值-matlab开发
- 行业文档-设计装置-正和平台.zip
- novious-fw:最初用于Novious网页版项目PHP框架,构建于新浪云引擎之上,部分代码未完善。
- clicks_calculator
- Emoji-Pup-crx插件
- AI-Logic-Based-Agent:使用后继状态公理,智能代理尝试达到其目标
- bookstore,如何查看java源码,java底层源码图解
- meal-planner-node:我们的 springboot 应用程序在 node.js 和 angular 中的简化版本
- navgationkit-docs-sphinx:Autolabor导航套件官方使用手册
- ssc
- actions:内置Logux动作的类型和动作创建者
- InLineQuestion,java源码网站,javaoa源码要多久
- blood-alcohol-calculator:使用FlutterDart构建的BAC计算器
- Frontend-Boilerplate:Frontent Boiler Plate - 使用 NPM、Bower、Gulp、Jade、Scss
- study-php:课程《网页设计与开发》-罗维老师
- iathook:Windows kernelmode和usermode IAT挂钩