草庐IT

12款开源数据资产(元数据)管理平台选型分析(一)

DawsonSally 2023-05-30 原文


两年前,在文章最全大数据开源组件思维导图中,整理了大数据生态的开源技术组件思维导图,至今有4K的下载量。

尽管数据行业的新词热度,由大数据平台->数据治理->数据中台->数字化转型(现代数据技术栈)转换,做为这些新词的基础组成部分,数据资产管理平台/元数据管理平台/数据目录管理平台等技术方案,依旧处于Gartner曲线的爬升恢复期,相关平台百花齐放,一统江湖的开源平台或者商用产品还没出现,在推进企业数字化转型落地过程中,实现数据治理、数据资产管理平台/元数据管理平台/数据目录管理平台的选型,依旧是一项考验人能力的活。

计划分三篇文章详细介绍12款优秀的开源数据资产/元数据管理平台,在第三篇文章中,将通过一张选型二维表,全面对比12款开源软件的功能特性。

本文整理了其中Apache atlas、Datahub、Marquez、Amundsen四款产品,并简单分析其优缺点,供选项参考:

Apache Atlas


开源地址:https://github.com/apache/atlas 1.5K star

Atlas最早由大数据平台三驾马车(Cloudera,Hortonworks,MapR)之一HortonWorks公司开发,用来管理Hadoop项目里面的元数据,进而设计为数据治理的框架,它为Hadoop集群提供了包括数据分类、集中策略引擎、数据血缘、安全和生命周期管理在内的元数据治理核心能力。后来开源出来给Apache社区进行孵化,得到Aetna,Merck,Target,SAS,IBM等公司的支持进行发展演进。因其支持横向海量扩展、良好的集成能力和开源的特点,国内大部分厂家选择使用Atlas或对其进行二次开发。
目前,Cloudera,Hortonworks已经并购,MapR也鲜有新品。大数据技术领域,相较于Hadoop技术平台风头正盛的2016年,已经发生了巨大的变化,Hadoop体系正在逐步淡出舞台中央。MPP、现代技术栈、云原生数据库等登上舞台,例如Clickhouse、Doris、StarRocks、Databend、Materialize、Ringswave。

Atlas的优点:

  • 大厂开源,深度集成Hadoop生态中的Hive,支持表级、字段级血缘
  • 与HDP原生集成,支持对接Ranger实现行列级数据权限管控,安装便捷省心
  • 强大的元数据元模型,支持元数据定制及扩展
  • 源代码不复杂,国内有大量平台基于Atlas定制修改为商用产品

Atlas的不足:

  • 其优势也是劣势,母开源公司已被并购,历史悠久,不再是一种优势,反而是一种负担
  • Hadoop体系已经走向衰退,如何只是完美支持Hive和Hadoop体系,已经无法满足现在快速发展的技术要求
  • 其设计界面复杂,体验老旧、数据目录及数据检索都不够便捷
  • 使用体验复杂及产品功能更聚焦于解决技术人员的问题,而非数据的最终用户,比如业务人员
  • 生态渐渐失去新鲜感、新的类似平台不断发展

相关介绍:https://mp.weixin.qq.com/s/MvaxSF74NE0E43i4rQEb3g
选型建议:1)如果您只有Hadoop生态,可以试试。2)如果您的数据资产是面向数据团队的技术人员,可以试试。

Datahub


开源地址:https://github.com/datahub-project/datahub 7.2K star
DataHub是由Linkedin开源的,官方Slogan:The Metadata Platform for the Modern Data Stack - 为现代数据栈而生的元数据平台。目的就是为了解决多种多样数据生态系统的元数据管理问题,它提供元数据检索、数据发现、数据监测和数据监管能力,帮助大家解决数据管理的复杂性。

DataHub基于Apache License 2开源,采用基于推送的数据收集架构(当然也支持pull拉取的方式),能够持续收集变化的元数据。当前版本已经集成了大部分流行数据生态系统接入能力,包括但不限于:Kafka, Airflow, MySQL, SQL Server, Postgres, LDAP, Snowflake, Hive, BigQuery。

Datahub的优点:

  • 名门开源,与Kafka同家庭。社区活跃,发展势头迅猛,版本更新迭代迅速。
  • 定位清晰且宏远,Slogan可以看出团队的雄心壮志及后期投入,且不断迭代更新的版本也应证了这一点。
  • 底层架构灵活先进,未扩展集成而生,支持推送和拉去模式,详见:https://datahubproject.io/docs/architecture/architecture/
  • UI界面简单易用,技术人员及业务人员友好
  • 接口丰富,功能全面

Datahub的不足:

  • 前端界面不支持国际化,界面的构建和使用逻辑不够中国化
  • 版更更新迭代快,使用后升级是个难题
  • 较多功能在建设中,例如Hive列级血缘
  • 部分功能性能还需要优化,例如SQL Profile
  • 中文资料不多,中文交流社群也不多

相关介绍
https://mp.weixin.qq.com/s/74gK3hTt7-j1lTbKFagbTQ
https://mp.weixin.qq.com/s/iP6sc2DzPaeAKpSWNmf8hQ
选型建议
1)如果有至少半个前端开发人员+后台开发人员;
2)如果需要用户体验较好的数据资产管理平台;
3)如果有需要扩展支持各种平台、系统的元数据。请把Datahub列为最高选择。
尽管列举了一些不足,但是开源产品中Datahub目前是相对最好的选择。笔者也在生产中使用,有问题的可以随时沟通交流。
商用版本: Metaphor(https://metaphor.io/)是Datahub的SaaS版本。

Marquez


开源地址:https://github.com/MarquezProject/marquez 1.3K star
Marquez的优点:

  • 界面美观,操作细节设计比较棒
  • 部署简单,代码简洁
  • 依靠底层OpenLineage协议,结构较好

Marquez的不足:

  • 聚焦数据资产/血缘的可视化,数据资产管理的一些功能,需要较多开发工作

相关介绍:https://mp.weixin.qq.com/s/OMm6QEk9-1bFdYKuimdxCw
选型建议
1)如果您有功能强大的元数据及数据资产管理平台后端,仅需要数据资产的可视化及血缘展示,可以考虑使用体验。
2)界面展示比较棒,支持选择依赖线路高亮及隐藏支线依赖。要做到数据资产管理、元数据采集有较多的工作要做。

商用版本:
Datakin(https://datakin.com/) 是Marquez的SaaS版本. 支持 Apache Hive, Amazon RDS, Teradata, Amazon Redshift, Amazon S3, and Cassandra.

Amundsen

开源地址:https://github.com/amundsen-io/amundsen 3.8K star
Amundsen 是来自Lyft 开源的元数据管理、数据发现平台,功能点很全,有一个比较全的前端、后端以及数据处理框架
Amundsen的优点:

  • Lyft大厂开源,社区活跃,版本更新较多
  • 定位清晰明确,与Datahub类似,致力于成为现代数据栈中的数据目录产品
  • 支持对接较多的数据平台与工具

Amundsen的不足:

  • 中规中矩的UI界面,操作便捷性不足
  • 中文文档不多
  • 血缘、标签、术语等功能方面不如Datahub使用便捷
  • 较多支持友好的组件,国内使用的不多

相关介绍
https://mp.weixin.qq.com/s/yGZ1RJs2seu943sswxYYzw
https://mp.weixin.qq.com/s/5w6euvUWzm5RWXgisB-rMg
https://mp.weixin.qq.com/s/iVocnMV8zuQN-jcID83nSg
选型建议
1)如果有人折腾,建议选择Datahub,如果没人折腾,选择Amundsen够折腾
商用版本: Stemma(https://www.stemma.ai/)是Amundsen的SaaS 版本。

总结

数据治理、数据资产管理等工作,是企业数字化转型中的底层基建,很重要,却又很难体现出效果和价值。上层数据战略、数据架构、数据流程、数据规范等问题,在组织层面没有解决;不论数据资产平台等工作规划和实现得如何好,都只能体现出杯水车薪的效果。

有关12款开源数据资产(元数据)管理平台选型分析(一)的更多相关文章

  1. ruby - i18n Assets 管理/翻译 UI - 2

    我正在使用i18n从头开始​​构建一个多语言网络应用程序,虽然我自己可以处理一大堆yml文件,但我说的语言(非常)有限,最终我想寻求外部帮助帮助。我想知道这里是否有人在使用UI插件/gem(与django上的django-rosetta不同)来处理多个翻译器,其中一些翻译器不愿意或无法处理存储库中的100多个文件,处理语言数据。谢谢&问候,安德拉斯(如果您已经在ruby​​onrails-talk上遇到了这个问题,我们深表歉意) 最佳答案 有一个rails3branchofthetolkgem在github上。您可以通过在Gemfi

  2. ruby - 解析 RDFa、微数据等的最佳方式是什么,使用统一的模式/词汇(例如 schema.org)存储和显示信息 - 2

    我主要使用Ruby来执行此操作,但到目前为止我的攻击计划如下:使用gemsrdf、rdf-rdfa和rdf-microdata或mida来解析给定任何URI的数据。我认为最好映射到像schema.org这样的统一模式,例如使用这个yaml文件,它试图描述数据词汇表和opengraph到schema.org之间的转换:#SchemaXtoschema.orgconversion#data-vocabularyDV:name:namestreet-address:streetAddressregion:addressRegionlocality:addressLocalityphoto:i

  3. ruby - Ruby 有 `Pair` 数据类型吗? - 2

    有时我需要处理键/值数据。我不喜欢使用数组,因为它们在大小上没有限制(很容易不小心添加超过2个项目,而且您最终需要稍后验证大小)。此外,0和1的索引变成了魔数(MagicNumber),并且在传达含义方面做得很差(“当我说0时,我的意思是head...”)。散列也不合适,因为可能会不小心添加额外的条目。我写了下面的类来解决这个问题:classPairattr_accessor:head,:taildefinitialize(h,t)@head,@tail=h,tendend它工作得很好并且解决了问题,但我很想知道:Ruby标准库是否已经带有这样一个类? 最佳

  4. ruby-on-rails - 获取 inf-ruby 以使用 ruby​​ 版本管理器 (rvm) - 2

    我安装了ruby​​版本管理器,并将RVM安装的ruby​​实现设置为默认值,这样'哪个ruby'显示'~/.rvm/ruby-1.8.6-p383/bin/ruby'但是当我在emacs中打开inf-ruby缓冲区时,它使用安装在/usr/bin中的ruby​​。有没有办法让emacs像shell一样尊重ruby​​的路径?谢谢! 最佳答案 我创建了一个emacs扩展来将rvm集成到emacs中。如果您有兴趣,可以在这里获取:http://github.com/senny/rvm.el

  5. ruby-on-rails - 事件管理员日期过滤器日期格式自定义 - 2

    是否有简单的方法来更改默认ISO格式(yyyy-mm-dd)的ActiveAdmin日期过滤器显示格式? 最佳答案 您可以像这样为日期选择器提供额外的选项,而不是覆盖js:=f.input:my_date,as::datepicker,datepicker_options:{dateFormat:"mm/dd/yy"} 关于ruby-on-rails-事件管理员日期过滤器日期格式自定义,我们在StackOverflow上找到一个类似的问题: https://s

  6. ruby - 我如何添加二进制数据来遏制 POST - 2

    我正在尝试使用Curbgem执行以下POST以解析云curl-XPOST\-H"X-Parse-Application-Id:PARSE_APP_ID"\-H"X-Parse-REST-API-Key:PARSE_API_KEY"\-H"Content-Type:image/jpeg"\--data-binary'@myPicture.jpg'\https://api.parse.com/1/files/pic.jpg用这个:curl=Curl::Easy.new("https://api.parse.com/1/files/lion.jpg")curl.multipart_form_

  7. 世界前沿3D开发引擎HOOPS全面讲解——集3D数据读取、3D图形渲染、3D数据发布于一体的全新3D应用开发工具 - 2

    无论您是想搭建桌面端、WEB端或者移动端APP应用,HOOPSPlatform组件都可以为您提供弹性的3D集成架构,同时,由工业领域3D技术专家组成的HOOPS技术团队也能为您提供技术支持服务。如果您的客户期望有一种在多个平台(桌面/WEB/APP,而且某些客户端是“瘦”客户端)快速、方便地将数据接入到3D应用系统的解决方案,并且当访问数据时,在各个平台上的性能和用户体验保持一致,HOOPSPlatform将帮助您完成。利用HOOPSPlatform,您可以开发在任何环境下的3D基础应用架构。HOOPSPlatform可以帮您打造3D创新型产品,HOOPSSDK包含的技术有:快速且准确的CAD

  8. FOHEART H1数据手套驱动Optitrack光学动捕双手运动(Unity3D) - 2

    本教程将在Unity3D中混合Optitrack与数据手套的数据流,在人体运动的基础上,添加双手手指部分的运动。双手手背的角度仍由Optitrack提供,数据手套提供双手手指的角度。 01  客户端软件分别安装MotiveBody与MotionVenus并校准人体与数据手套。MotiveBodyMotionVenus数据手套使用、校准流程参照:https://gitee.com/foheart_1/foheart-h1-data-summary.git02  数据转发打开MotiveBody软件的Streaming,开始向Unity3D广播数据;MotionVenus中设置->选项选择Unit

  9. 使用canal同步MySQL数据到ES - 2

    文章目录一、概述简介原理模块二、配置Mysql使用版本环境要求1.操作系统2.mysql要求三、配置canal-server离线下载在线下载上传解压修改配置单机配置集群配置分库分表配置1.修改全局配置2.实例配置垂直分库水平分库3.修改group-instance.xml4.启动监听四、配置canal-adapter1修改启动配置2配置映射文件3启动ES数据同步查询所有订阅同步数据同步开关启动4.验证五、配置canal-admin一、概述简介canal是Alibaba旗下的一款开源项目,Java开发。基于数据库增量日志解析,提供增量数据订阅&消费。Git地址:https://github.co

  10. ruby-on-rails - 创建 ruby​​ 数据库时惰性符号绑定(bind)失败 - 2

    我正在尝试在Rails上安装ruby​​,到目前为止一切都已安装,但是当我尝试使用rakedb:create创建数据库时,我收到一个奇怪的错误:dyld:lazysymbolbindingfailed:Symbolnotfound:_mysql_get_client_infoReferencedfrom:/Library/Ruby/Gems/1.8/gems/mysql2-0.3.11/lib/mysql2/mysql2.bundleExpectedin:flatnamespacedyld:Symbolnotfound:_mysql_get_client_infoReferencedf

随机推荐