当Atlas遇见Flink——Apache Atlas 2.2.0发布!
2024-10-08 03:27:25
距离上次atlas发布新版本已经有一年的时间了,但是这一年元数据管理平台的发展一直没有停止。Datahub,Amundsen等等,都在不断的更新着自己的版本。但是似乎Atlas在元数据管理,数据血缘领域的地位一直没有动摇。
最近Atlas终于迎来又一次大的更新,发布了全新的2.2.0版本。
首先来了解一下这个版本。
Apache Atlas 2.2 有哪些新功能?
- 分类传播任务 : 分类传播将作为后台任务处理 (AtlasTask)
- 重新索引:添加重新索引作为 JAVA_PATCH 的一部分
- 模型更改:创建 JAVA_PATCH 以向现有实体添加新的父类型
- 导出服务:在 Atlas 导出 API 中添加了对业务元数据的支持
- Admin/AtlasTask API : 添加了对 admin/task API 的 HA 支持
- 实体定义:提供了向已存在实体定义添加强制性属性
增强功能
- DSL 搜索:添加了对词汇表术语和关系的支持,添加了对空属性值的支持,现在使用 Tinkerpop GraphTraversal 而不是 GremlinScriptEngine 来提高性能,添加了缓存机制来支持 DSL
- Atlas Python 客户端:重构和增强的 Atlas Python 客户端,支持 Python 2.7
- 搜索:更新了自由文本搜索处理器以支持 Elasticsearch,支持带有特殊字符的搜索文本,优化分页
- 批量词汇表导入:改进和增强的批量词汇表导入支持使用关系导入
- 性能:提高了 GraphHelper 的 guid 和 status getter 方法的性能
- 授权:增强 Atlas 授权,用于添加/更新/删除实体分类,“admin-audits”用于 Atlas Admin Audits 授权
- 通知:改进了 NotificationHookConsumer, 用于大消息的处理
- 导出/导入服务:增强的导出/导入服务以有条件地支持同步操作和导出条款
- Hive Hook:添加了对 HiveServer2 Hook 的支持
- Apache Flink:引入模型来捕获 Apache Flink 实体和关系
- GCP:引入模型来捕获 GCP 实体和关系
- 依赖升级:JanusGraph、elasticsearch、JQuery、Http core、Http Client、slf4j、log4j、ant、gremlin、Solr、groovy、netty、Kafka
- UI:修复了 Atlas Web UI 的一些问题,提高了大量分类和实体的情况下的加载速度
- Docker 镜像:增强了对 Docker 的支持
遇见Flink
Apache Flink:引入模型来捕获 Apache Flink 实体和关系
也就是说目前Atlas已经默认增加Flink可以接受Flink的元数据了,但是Flink并没有公布对atlas的支持,捕获并发送元数据这部分还是需要做一些的工作。
Atlas定义的Flink实体:
{
"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": "flink_process",
"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": "flink_application_processes",
"serviceType": "flink",
"typeVersion": "1.0",
"relationshipCategory": "AGGREGATION",
"endDef1": {
"type": "flink_application",
"name": "processes",
"cardinality": "SET",
"isContainer": true
},
"endDef2": {
"type": "flink_process",
"name": "application",
"cardinality": "SINGLE"
},
"propagateTags": "NONE"
}
]
}'
当然Apache也在持续的推进:
感兴趣的同学可以关注 Flink-6757 关注最新的进展,相信很快就会有新的消息了。
Apache的一些计划
最新文章
- 跳转Activity两种方法
- 拼接字符串去掉最后多余的串,JSON的遍历
- 详解应对平台高并发的分布式调度框架TBSchedule
- 布局文件中fill_parent、match_parent和wrap_content有什么区别?
- cocos2d-x ClippingNode
- 利用 Apache Synapse 模拟 Web 服务
- DataSet中取值(转)
- poj 2594 Treasure Exploration(最小路径覆盖,可重点)
- JS显示动态的系统时间--JavaScript基础
- JavaScript正则表达式模式匹配(1)——基本字符匹配
- JVM 性能调优 -Xmx、-Xms、-Xss
- phpmailer SMTP connect() failed的解决方法
- spark核心原理
- 【Java】JavaWeb 登录检查及界面跳转
- windows下 jemalloc编译
- Spring MVC 学习笔记1 - First Helloworld by Eclipse【&; - java web 开发Tips集锦】
- notepad++上搭建gtk+2.0/3.x开发环境
- 解析Excel----ExcelHelper
- Scala数据类型中的Symbol(符号文本)
- Quest *nix Xwindows