最近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的一些计划