• 阅读: 306 回复: 0
    数据仓库

    Apache Atlas | 元数据管理框架

    楼主 发表于 2021-10-14 19:17:56

    正文

    一、定位

    Apache Atlas:Apache Atlas是Hadoop社区为解决Hadoop生态系统的元数据治理问题而产生的开源项目,它为Hadoop集群提供了包括数据分类、集中策略引擎、数据血缘、安全和生命周期管理在内的元数据治理核心能力。

    Linkedin WhereHows:WhereHows是LinkedIn公司为了方便员工发现公司内部数据、跟踪数据集移动、查看各种内部工具和服务的动向,而开发的用于大数据发现和管理的工具。它从不同的源系统中采集元数据,并进行标准化和建模,从而作为元数据仓库完成血缘分析。

    Linkedin DataHub:WhereHows项目已于2018年重新被LinkedIn公司设计为DataHub项目。

    二、厂商

    Apache Atlas:Atlas最早由HortonWorks公司开发,用来管理Hadoop项目里面的元数据,进而设计为数据治理的框架。后来开源出来给Apache社区进行孵化,目前得到Aetna,Merck,Target,SAS,IBM等公司的支持进行发展演进。因其支持横向海量扩展、良好的集成能力和开源的特点,国内大部分厂家选择使用Atlas或对其进行二次开发。

    Linkedin WhereHows&DataHub:由LinkedIn开源,并主要在LinkedIn内部使用。外部应用比较少,暂时没有看到相关应用案例。

    三、功能概览

    Apache Atlas

    1)查看数据仓库中表与表之间的血缘依赖

    2)查看数据仓库表中字段与字段之间的血缘依赖

      

    Linkedin WhereHows

    1)查看数据仓库中表与表之间的血缘依赖

    2)查看数据集和作业流血缘依赖

      

    3)查询元数据

    图片

    Linkedin DataHub

    1)搜索元数据

    2)查看元数据

    3)编辑元数据

    4)查看数据集和作业流血缘依赖

    图片

    四、架构

    Apache Atlas

    MetaSource Sources:目前,Atlas支持从以下来源提取和管理元数据:Hbase、Hive、Sqoop、Storm、Kafka

    Messaging:除了API之外,用户还可以选择使用基于Kafka的消息传递接口与Atlas集成

    采集/导出(Ingest/Export):采集组件允许将元数据添加到Atlas。同样,“导出”组件将Atlas检测到的元数据更改公开为事件。

    类型系统(Type System):用户为他们想要管理的元数据对象定义模型。Type System称为“实体”的“类型”实例,表示受管理的实际元数据对象。

    图形引擎(Graph Engine):Atlas 通过使用图形模型管理元数据对象。

    Titan:目前,Atlas 使用 Titan 图数据库来存储元数据对象

    Metadata Store<Hbase>:采用Hbase来存储元数据

    IndexStore<Solr>:采用Solr来建索引

    API:Atlas的所有功能都可以通过REST API提供给最终用户,允许创建、更新和删除类型和实体。它也是查询和发现通过Atlas管理的类型和实体的主要方法。

    Atlas Admin UI:该组件是一个基于Web的应用程序,允许数据管理员和科学家发现和注释元数据。Admin UI提供了搜索界面和类SQL的查询语言,可以用来查询由Atlas管理的元数据类型和对象。

    Tag Based Policies:权限管理模块。

    Business Taxonomy:业务分类

    Linkedin WhereHows

    WhereHows支持从HDFS、Teradata、Oracle、HIve、Elastic Search、Druid的数据集和Azkaban、Oozie的作业中将元数据的抽取、加载(ETL)至自身的Repo库。源系统可分为数据集类源系统和作业类源系统。

    数据集类源系统:以Hive为例,WhereHows从Hive的元数据库MySQL中抽取元数据并存储在自身的元数据仓库中,从而最终可以从WhereHows中查看Hive中的元数据信息,如Hive中有哪些Database、Database下有哪些表等。WhereHows不能直接得到数据集的血缘,WhereHows中数据集的血缘是从相关作业的分析中得到的。

    作业类源系统:以Azkaban为例,假设运行hive任务,则WhereHows可以从Azkaban的元数据库中获取作业信息、并从JobHistory获取实际运行的Hive或pig的日志,并对这些元数据以及日志数据解析形成血缘。

    Web UI即前端Web组件,提供可视化查询功能。提供展示元数据的UI,包括Datasets和Flows两个功能视图。

    REST Endpoint作为服务后端,主要提供API接口和执行ETL作业两个功能。

    DataHub

    DataHub提供通过直接API调用或Kafka流的形式来摄取元数据。

    元数据从Kafka获取,元数据的生成者要生产一个标准化的元数据改变事件(MCE)。

    DataHub通过一组通用数据访问对象(DAO)进一步抽象底层数据系统,例如键值DAO、查询DAO和搜索DAO。通过键值DAO的任何更新操作都将自动发出元数据审计事件(MAE)。

     

    五、对比

    1)Atlas比WhereHows血缘分析粒度较细,支持字段级血缘依赖的跟踪。WhereHows仅支持表级。

    2)Atlas与Apache Ranger集成,可根据与Atlas中实体相关的分类对数据访问进行授权/数据屏蔽。而WhereHows缺乏有效的用户、权限管理能力。

    3)WhereHows比Atlas支持的源系统多。

    4)DataHub刚立项不久,数据管理方面与WhereHows的特性差不多,侧重于元数据的发现(搜索、查询)。

    5)Atlas在同行业中逐渐普及,社区活跃度远高于WhereHows和DataHub。


     

    Reference:

    使用Atlas进行元数据管理之Atlas简介

    https://www.cnblogs.com/mantoudev/p/9986408.html

    元数据治理 Apache Atlas

    https://my.oschina.net/sunmin/blog/3064462

    Apache Atlas2.0 第二节 架构理解

    https://blog.csdn.net/czq850114000/article/details/95463364

    Apache atlas 的入门教程

    https://blog.csdn.net/cafebar123/article/details/79944247

    [Atlas]拥抱开源 - 云上元数据管理

    https://www.jianshu.com/p/c65f54dd5e7d

    使用 Apache Atlas 进行数据治理

    https://www.jianshu.com/p/8c07974111dd

    Wherehows调研总结

    https://blog.csdn.net/wiborgite/article/details/82467963

    WhereHows解读

    https://blog.csdn.net/lyly630/article/details/88192250

    Wherehows项目简介

    https://blog.csdn.net/u011077231/article/details/80994996

    LinkedIn 开源其数据中心工具 WhereHows

    https://www.jianshu.com/p/604395b49999

    DataPipeline丨LinkedIn元数据之旅的最新进展—Data Hub

    https://blog.csdn.net/DataPipeline/article/details/100155781

    DataHub:通用的元数据搜索和发现工具

     

    https://engineering.linkedin.com/blog/2019/>  

    本文内容转载自“数据仓库与Python大数据”(ID:edw_bigdata),作者 張較痩  。

热门文章

一篇搞懂TCP、HTTP、Socket、Socket连接池

澜学院|Mock工具wiremock-py

Giraph源码分析(七)—— 添加消息统计功能

Giraph源码分析(八)—— 统计每个SuperStep中参与计算的顶点数目

最新文章

我DW

央视新闻《玩大小单双最厉害的回血老师》央视网

央视新闻《回血上岸最快的方法》央视网

央视新闻《大发最有实力带人回血的导师》央视网

  • 未登录

    回复楼主

    登录后可回复
    /1000