加入收藏 | 设为首页 | 会员中心 | 我要投稿 核心网 (https://www.hxwgxz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

Apache Flink在唯品会的实践

发布时间:2018-11-15 03:48:03 所属栏目:教程 来源:王新春
导读:唯品会实时平台现状 目前在唯品会实时平台并不是一个统一的计算框架,而是包括Storm,Spark,Flink在内的三个主要计算框架。由于历史原因,当前在Storm平台上的job数量是最多的,但是从去年开始,业务重心逐渐切换到Flink上面,所以今年在Flink上面的应用

对应Flink集群所依赖的HDFS等其他配置,则通过创建configmap来管理和维护。

  1. kubectl create configmap hdfs-conf --from-file=hdfs-site.xml --from-file=core-site.xml 

后续计划

当前实时系统,机器学习平台要处理的数据分布在各种数据存储组件中,如Kafka、Redis、Tair和HDFS等,如何方便高效的访问,处理,共享这些数据是一个很大的挑战,对于当前的数据访问和解析常常需要耗费很多的精力,主要的痛点包括:

  • 对于Kafka,Redis,Tair中的binary(PB/Avro等格式)数据,使用者无法快速直接的了解数据的schema与数据内容,采集数据内容及与写入者的沟通成本很高。
  • 由于缺少独立的统一数据系统服务,对Kafka,Redis,Tair等中的binary数据访问需要依赖写入者提供的信息,如proto生成类,数据格式wiki定义等,维护成本高,容易出错。
  • 缺乏relational schema使得使用者无法直接基于更高效易用的SQL或LINQ层API开发业务。
  • 无法通过一个独立的服务方便的发布和共享数据。
  • 实时数据无法直接提供给Batch SQL引擎使用。
  • 此外,对于当前大部分的数据源的访问也缺少审计,权限管理,访问监控,跟踪等特性。

UDM(统一数据管理系统)包括Location Manager, Schema Metastore以及Client Proxy等模块,主要的功能包括:

  • 提供从名字到地址的映射服务,使用者通过抽象名字而不是具体地址访问数据。
  • 用户可以方便的通过Web GUI界面方便的查看数据Schema,探查数据内容。
  • 提供支持审计,监控,溯源等附加功能的Client API Proxy。
  • 在Spark/Flink/Storm等框架中,以最适合使用的形式提供这些数据源的封装。

UDM的整体架构如下图所示:

Apache Flink在唯品会的实践

UDM的使用者包括实时,机器学习以及离线平台中数据的生产者和使用者。在使用Sql API或Table API的时候,首先完成Schema的注册,之后使用Sql进行开发,降低了开发代码量。

Apache Flink在唯品会的实践

在Flink中,使用UDMExternalCatalog来打通Flink计算框架和UDM之间的桥梁,通过实现ExternalCatalog的各个接口,以及实现各自数据源的TableSourceFactory,完成Schema和接入管控等各项功能。

关于作者:王新春目前在唯品会负责实时平台相关内容,主要包括实时计算框架和提供实时基础数据,以及机器学习平台的工作。之前在美团点评,也是负责大数据平台工作。他已经在大数据实时处理方向积累了丰富的工作经验。

【编辑推荐】

  1. 深入理解Apache Flink核心技术
  2. 基于Apache Flink的实时计算引擎Blink在阿里搜索中的应用
  3. Apache Flink实现的数据流体系结构
  4. 一文读懂Apache Flink技术
【责任编辑:未丽燕 TEL:(010)68476606】
点赞 0

(编辑:核心网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读