Flink1.12支持对接Atlas【使用Atlas收集Flink元数据】

问题导读

1.Atlas中实体具体指什么?
2.如何为Flink创建Atlas实体类型定义?
3.如何验证元数据收集?

在Cloudera Streaming Analytics中,可以将Flink与Apache Atlas一起使用,以跟踪Flink作业的输入和输出数据。

Atlas是沿袭和元数据管理解决方案,在Cloudera Data Platform上受支持。这意味着可以查找,组织和管理有关Flink应用程序以及它们如何相互关联的数据的不同资产。这实现了一系列数据管理和法规遵从性用例。

有关Atlas的更多信息,请参阅Cloudera Runtime文档。

Flink元数据集合中的Atlas实体
在Atlas中,表示Flink应用程序,Kafka主题,HBase表等的核心概念称为实体。需要了解Flink设置中实体的关系和定义,以增强元数据收集。

为Flink创建Atlas实体类型定义
在提交Flink作业以收集其元数据之前,需要为Flink创建Atlas实体类型定义。在命令行中,需要连接到Atlas服务器并添加预定义的类型定义。还需要在Cloudera Manager中为Flink启用Atlas。

验证元数据收集
启用Atlas元数据收集后,群集上新提交的Flink作业也将其元数据提交给Atlas。可以通过请求有关Atlas挂钩的信息来在命令行中使用消息验证元数据收集。

Flink元数据集合中的Atlas实体

在Atlas中,表示Flink应用程序,Kafka主题,HBase表等的核心概念称为实体。需要了解Flink设置中实体的关系和定义,以增强元数据收集。

在向Atlas提交更新时,Flink应用程序会描述自身以及用作源和接收器的实体。Atlas创建并更新相应的实体,并从收集到的和已经可用的实体创建沿袭。在内部,Flink客户端和Atlas服务器之间的通信是使用Kafka主题实现的。该解决方案被Atlas社区称为Flink挂钩。




为Flink创建Atlas实体类型定义
在提交Flink作业以收集其元数据之前,需要为Flink创建Atlas实体类型定义。在命令行中,需要连接到Atlas服务器并添加预定义的类型定义。还需要在Cloudera Manager中为Flink启用Atlas。

默认情况下,Atlas不包括Flink的元数据源。管理员必须手动将实体类型定义上载到群集,才能启动Flink元数据收集。

注意:
启用或禁用TLS时,Atlas管理服务器的默认端口分别为31433和31000。

步骤
1.使用Atlas REST API将设计的实体类型定义上载到集群。

curl -k -u <atlas_admin>:<atlas_admin_pwd> --location --request POST 'https://<atlas_server_host>:<atlas_server_port>/api/atlas/v2/types/typedefs' \

--header 'Content-Type: application/json' \

--data-raw '{

    "enumDefs": [],

    "structDefs": [],

    "classificationDefs": [],

    "entityDefs": [

        {

            "name": "flink_application",

            "superTypes": [

                "Process"

            ],

            "serviceType": "flink",

            "typeVersion": "1.0",

            "attributeDefs": [

                {

                    "name": "id",

                    "typeName": "string",

                    "cardinality": "SINGLE",

                    "isIndexable": true,

                    "isOptional": false,

                    "isUnique": true

                },

                {

                    "name": "startTime",

                    "typeName": "date",

                    "cardinality": "SINGLE",

                    "isIndexable": false,

                    "isOptional": true,

                    "isUnique": false

                },

                {

                    "name": "endTime",

                    "typeName": "date",

                    "cardinality": "SINGLE",

                    "isIndexable": false,

                    "isOptional": true,

                    "isUnique": false

                },

                {

                    "name": "conf",

                    "typeName": "map<string,string>",

                    "cardinality": "SINGLE",

                    "isIndexable": false,

                    "isOptional": true,

                    "isUnique": false

                },

                {

                    "name": "inputs",

                    "typeName": "array<string>",

                    "cardinality": "LIST",

                    "isIndexable": false,

                    "isOptional": false,

                    "isUnique": false

                },

                {

                    "name": "outputs",

                    "typeName": "array<string>",

                    "cardinality": "LIST",

                    "isIndexable": false,

                    "isOptional": false,

                    "isUnique": false

                }

            ]

        }

    ],

    "relationshipDefs": []

}'
复制代码

2.登录到Cloudera Manager。
3.转到Flink>配置。
4.在搜索栏中搜索“启用图集”。
5.启用Atlas元数据收集。





成功提交后,Flink客户端会通知Atlas有关作业的元数据。

验证元数据收集
启用Atlas元数据收集后,群集上新提交的Flink作业也将其元数据提交给Atlas。可以通过请求有关Atlas挂钩的信息来在命令行中使用消息验证元数据收集。

要验证元数据集合,可以从“运行Flink作业”中运行“流式WordCount”示例。

在日志中,出现以下新行:

...

20/05/13 06:28:12 INFO hook.FlinkAtlasHook: Collecting metadata for a new Flink Application: Streaming WordCount

...

20/05/13 06:30:35 INFO hook.AtlasHook: <== Shutdown of Atlas Hook
复制代码

Flink通过Kafka主题与Atlas通信,默认情况下,该主题名为ATLAS_HOOK。


转载注明本文链接

https://www.aboutyun.com/forum.php?mod=viewthread&tid=30521

----------------------------END----------------------------

如果有更多问题,可以加微信w3aboutyun交流。

如果你也是大数据、人工智能爱好者,加微信领书100本大数据、人工智能、区块链等精选书籍,还可以加讨论群交流。

找工作就找About云VIP,不止提升我们技术,更提升我们能力,详细扫码了解

 本公众号精彩文章推荐:

【1】数据中台到底如何落地实现含架构图及代码

【2】基于Flink商品实时推荐系统项目大数据及算法

【3】ES学习精品系列文章汇总及下载

【4】About云VIP黄金会员

【5】Shell大全:可以应用于工作及面试

【6】About云 VIP总结【2019年】

【7】大数据实用组件Hudi

【8】数据治理:白话打通对Atlas的理解

  • 0
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值