58同城的Flink实时计算实践与平台建设

5星 · 超过95%的资源 需积分: 0 4 下载量 189 浏览量 更新于2024-07-15 收藏 3.9MB PDF 举报
"Flink在58同城应用与实践-TY.pdf" 本文主要介绍了Flink在58同城的应用和实践,包括实时计算平台架构、实时SQL建设、Storm迁移至Flink的实践经验以及一站式实时计算平台的构建和后续规划。 在实时计算平台架构方面,58同城的平台定位是为集团海量数据提供高效、稳定的实时计算服务,涵盖实时数据存储、计算和分发。平台采用了包括Kafka、Storm/SparkStreaming和Flink在内的多种技术。基础能力建设中,提到了DDS数据分发系统(KafkaConnect)和Wstream一站式实时计算平台。平台针对实时业务场景的需求,如高吞吐、低延迟、灵活窗口、数据乱序处理、Exactly-once语义保证和中间状态管理等进行了优化。目前的Flink集群规模较大,拥有900+台机器,运行着2000+个实时任务,每日处理2.5万亿条实时计算数据,峰值达到3000万条每秒。 在实时SQL建设上,随着Flink的上线,实时SQL经历了从无到有的发展,支持了DDL扩展、DML操作、维表join、实时存储扩展等功能,并且实现了批流合一,引入了FlinkHive、元数据管理和血缘关系等数仓化特性。此外,为了提升性能,平台还进行了MiniBatch优化、Local-Global聚合以及Emit功能的改进,利用异步IO机制、缓存策略和并发度控制来提升数据处理效率。 在Storm迁移至Flink的实践中,58同城可能面临了诸如性能、稳定性、功能扩展性等方面的挑战,Flink凭借其强大的流处理能力和对Exactly-once语义的支持,成为了理想的替代选择。通过优化,Flink能够更好地适应58同城的实时业务需求。 最后,一站式实时计算平台的建立旨在统一管理和调度各种实时计算任务,简化运维工作,提高效率。后续规划可能涉及进一步提升平台的稳定性和扩展性,增加新的功能,优化性能,以及探索更多实时计算在各业务线中的应用场景。 58同城通过构建强大的Flink实时计算平台,实现了对大数据的高效实时处理,满足了多样化业务场景的需求,并通过实时SQL的建设,提升了开发效率和数据处理性能。这一实践为其他企业提供了参考,展示了Flink在大规模实时计算环境中的应用价值。