当前位置: 首页 > news >正文

【开源项目】轻量元数据管理解决方案——Marquez

f4c0f2e5acf88cef050b927f2755e9d3.png

大家好,我是独孤风。

又到了本周的开源项目推荐。最近推荐的元数据管理项目很多,但是很多元数据管理平台的功能复杂难用。 那么有没有轻量一点的元数据管理项目呢? 今天为大家推荐的开源项目,就是一个轻量级的元数据管理工具。虽然轻量,但是元数据的收集、展示、数据血缘等功能都是支持的。 让我们一起来看看吧~

49cee93b904f7ec0d72ab944ea59d51d.jpeg

Marquez概述

今天为大家推荐的开源项目名为Marquez。这是WeWork开源的元数据管理工具,可以对元数据进行收集,聚合和可视化。 Marquez提供了开源的元数据服务,用于数据生态系统元数据的收集、聚合和可视化。通过它可以对数据集整体的产生和消费情况进行把控。 并提供数据处理全过程的数据可视化,并可以对数据集的生命周期进行集中管理。

e95eaf16721ffd56f61f74783244887f.jpeg

该项目还在蓬勃发展中,目前标星数为1.5K,最新版本为三周前发布的0.43.1。主要开发语言为Java和TS。 Marquez的部署与Java项目类似,只要启动对应的Web端服务和API服务就可以了。 特别强调一下Marquez的血缘API非常的简洁,可以轻松建立数据血缘依赖关系,这可以为数据质量等原因分析提供保证。

可在大数据流动后台回复“Marquez”获取安装包,源代码与学习资料。

功能演示

请参考大数据流动视频号的功能演示:

如何安装?

可以docker快速安装,需要至少满足如下版本。

  • Docker 17.05+

  • Docker Compose

拉取项目

$ git clone https://github.com/MarquezProject/marquez && cd marquez

可以用下面的命令启动

$ ./docker/up.sh --seed

请通过访问http://localhost:3000浏览到 UI 。然后,使用页面右上角的搜索栏搜索该职位etl_delivery_7_days。要查看 的沿袭元数据etl_delivery_7_days,请从下拉列表中单击该作业:

7a572aa9cdc30b44b6a1900c8815c741.png

您应该看到作业namespacename和数据集,input并且output作业运行标记为COMPLETED

3ef828746d0b2257bd96e6fff013c4c1.png

最后,单击 的输出数据public.delivery_7_daysetl_delivery_7_days。您应该看到数据集nameschemadescription

dea338b680d048fa604396c27ab5deb3.png

API的使用

项目启动后就可以调用API了。

下面是一个简单的例子,首先我们要启动一个血缘事件。

$ curl -X POST http://localhost:5000/api/v1/lineage \-i -H 'Content-Type: application/json' \-d '{"eventType": "START","eventTime": "2020-12-28T19:52:00.001+10:00","run": {"runId": "d46e465b-d358-4d32-83d4-df660ff614dd"},"job": {"namespace": "my-namespace","name": "my-job"},"inputs": [{"namespace": "my-namespace","name": "my-input"}],  "producer": "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/client","schemaURL": "https://openlineage.io/spec/1-0-5/OpenLineage.json#/definitions/RunEvent"}'

随后完成该任务。

$ curl -X POST http://localhost:5000/api/v1/lineage \-i -H 'Content-Type: application/json' \-d '{"eventType": "COMPLETE","eventTime": "2020-12-28T20:52:00.001+10:00","run": {"runId": "d46e465b-d358-4d32-83d4-df660ff614dd"},"job": {"namespace": "my-namespace","name": "my-job"},"outputs": [{"namespace": "my-namespace","name": "my-output","facets": {"schema": {"_producer": "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/client","_schemaURL": "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/spec/OpenLineage.json#/definitions/SchemaDatasetFacet","fields": [{ "name": "a", "type": "VARCHAR"},{ "name": "b", "type": "VARCHAR"}]}}}],     "producer": "https://github.com/OpenLineage/OpenLineage/blob/v1-0-0/client","schemaURL": "https://openlineage.io/spec/1-0-5/OpenLineage.json#/definitions/RunEvent"}'

注意运行正常的话我们应该接到201 CREATED的响应。

在页面搜索,将得到血缘展示。

8c04830ca1f54bcf9f2a25b4b9c64290.png

这只是Marquez的基本用法。

Marquez提供元数据采集的一个标准方案,目前支持Spark,Airflow的表级别和列级别的数据血缘收集。 而Flink暂时只支持表级别的血缘收集。 相信Marquez未来会支持越来越多的数据源,让我们一起期待一下吧~

相关文章:

【开源项目】轻量元数据管理解决方案——Marquez

大家好,我是独孤风。 又到了本周的开源项目推荐。最近推荐的元数据管理项目很多,但是很多元数据管理平台的功能复杂难用。 那么有没有轻量一点的元数据管理项目呢? 今天为大家推荐的开源项目,就是一个轻量级的元数据管理工具。虽然…...

dirty file page

转自:https://www.cnblogs.com/zhiminyu/p/17330763.html 0.前言 Linux 内核Page Cache 和Buffer Cache 关系及演化历史 一文中讲过Linux 2.4之后将Page Cache和Buffer Cache 进行了融合,在buffer_head 中添加了b_page,很容易就能找到缓存的…...

HTAP(Hybrid Transactional/Analytical Processing)系统之统一存储的实时之道

文章目录 HTAP与时俱进LASER中的存储关键知识LSM(Log-Structured Merge Tree)SkipList(跳表)CDC(Changed Data Capture)SST(Sorted Sequence Table) 特性列组(Column Gro…...

【linux】tcpdump 使用

tcpdump 是一个强大的网络分析工具,可以在 UNIX 和类 UNIX 系统上使用,用于捕获和分析网络流量。它允许用户截取和显示发送或接收过网络的 TCP/IP 和其他数据包。 一、安装 tcpdump 通常是默认安装在大多数 Linux 发行版中的。如果未安装,可…...

数字图像处理常用算法的原理和代码实现详解

本专栏详细地分析了常用图像处理算法的数学原理、实现步骤。配有matlab或C实现代码,并对代码进行了详细的注释。最后,对算法的效果进行了测试。相信通过这个专栏,你可以对这些算法的原理及实现有深入的理解!   如有疑问&#xf…...

Pandas实战100例 | 案例 26: 检测异常值

案例 26: 检测异常值 知识点讲解 在数据分析中,检测和处理异常值(或离群值)是一个重要的步骤。异常值可能会影响数据的整体分析。一种常用的方法是使用四分位数和四分位数间距(IQR)来识别异常值。 四分位数和 IQR: …...

C语言学习NO.11-字符函数strlen,strlen函数的使用,与三种strlen函数的模拟实现

&#xff08;一&#xff09;strlen函数的使用 strlen函数的演示 #include <stdio.h> #include <string.h>int main() {char arr1[] "abcdef";char arr2[] "good";printf("arr1 %d,arr2 %d",strlen(arr1),strlen(arr2));return …...

Vue3+ts获取props的值并且定义props值的类型的方法。

1.引入withDefaults模块&#xff0c;给defineProps绑定默认值。 import { withDefaults } from vue2.定义Props传输值的类型。 interface Props {// 类型type: string;name: string;id: number; }3.给props的值设置默认值。 const props withDefaults(defineProps<Prop…...

EasyExcel 不使用科学计数发并以千分位展示

EasyExcel 不使用科学计数发并以千分位展示 不使用科学计数法 不使用科学计数法 BigDecimalStringConverter 将 BigDecimal 类型的数值转换为字符串类型&#xff0c;并将其导出到 Excel 文件中。在 convertToExcelData 方法中&#xff0c;我们将 BigDecimal 转换为字符串&…...

【Python机器学习】SVM——调参

下面是支持向量机一个二维二分类数据集的训练结果&#xff1a; import mglearn import matplotlib.pyplot as plt from sklearn.svm import SVCplt.rcParams[font.sans-serif] [SimHei] plt.rcParams[axes.unicode_minus] False X,ymglearn.tools.make_handcrafted_dataset()…...

网络传输(TCP)

前言 我们tcpdump抓包时会看到除报文数据外&#xff0c;前面还有一段其他的数据&#xff0c;这段数据分为两部分&#xff0c;ip包头&#xff08;一般20字节&#xff09;和tcp包头&#xff08;一般20字节&#xff09;&#xff0c;一般这两个头长度和为40&#xff0c;我们直接跳…...

MFC模拟消息发送,自定义以及系统消息

在MFC框架下&#xff0c;有很多系统已经定义好的消息&#xff0c;例如ON_WM_LBUTTONDOWN()、ON_WM_MBUTTONDOWN()等等。我们在使用的时候只需要声明并调用就可以了&#xff0c;最简单的用法。 提升了一点难度的用法就是自己设置自定义消息&#xff0c;再提升一点难度的就是如何…...

并发,并行,线程与UI操作

并行和并发是计算机领域中两个相关但不同的概念。 并行&#xff08;Parallel&#xff09;指的是同时执行多个任务或操作&#xff0c;它依赖于具有多个处理单元的系统。在并行计算中&#xff0c;任务被分成多个子任务&#xff0c;并且这些子任务可以同时在不同的处理单元上执行…...

react 6种方式编写样式

在React中&#xff0c;编写样式主要有以下几种方式&#xff1a; 1. 内联样式&#xff1a; 直接在React组件中使用style属性来定义样式。这种方式比较适合定义动态的样式&#xff0c;因为它允许你将JavaScript表达式作为样式的值。 2. 外部样式表 &#xff1a;通过创建外部的…...

计算机找不到msvcr100.dll的多种解决方法分享,轻松解决dll问题

msvcr100.dll作为系统运行过程中不可或缺的一部分&#xff0c;它的主要功能在于提供必要的运行时支持&#xff0c;确保相关应用程序能够顺利完成编译和执行。因此&#xff0c;当操作系统或应用程序在运行阶段搜索不到该文件时&#xff0c;自然会导致各类依赖于它的代码无法正常…...

系分笔记数据库反规范化、SQL语句和大数据

文章目录 1、概要2、反规范化3、大数据4、SQL语句5、总结 1、概要 数据库设计是考试重点&#xff0c;常考和必考内容&#xff0c;本篇主要记录了知识点&#xff1a;反规范化、SQL语句及大数据。 2、反规范化 数据库遵循范式的设计&#xff0c;使得多表查询和连接表查询较多的时…...

php实现支付宝商户转账

目录 一&#xff1a;背景介绍 一&#xff1a;准备工作 三&#xff1a;代码实现 一&#xff1a;背景介绍 最近工作中&#xff0c;要用到支付宝的商家转账功能&#xff0c;用php代码实现&#xff0c;网上找的内容&#xff0c;有些是老版本的实现&#xff0c;有些是调用sdk&am…...

并发编程(十一)

性能测试的常用命令 1、Netstat是在内核中访问网络连接状态及其相关信息的程序&#xff0c;它能够显示协议统计和当前TCP/IP的网络连接。 Netstat命令的常用格式如下&#xff1a; netstat -a&#xff1a;显示所有网络连接和侦听端口。 netstat -b&#xff1a;显示在创建网络…...

vue3 指令详解

系列文章目录 TypeScript 从入门到进阶专栏 文章目录 系列文章目录前言一、v-model &#xff08;双向绑定功能&#xff09;二、v-bind(用于将一个或多个属性绑定到元素的属性或组件的 prop)三、v-if、v-else、v-else-if(用于根据条件选择性地渲染元素)四、v-show&#xff08;根…...

数据科学竞赛平台推荐

✅作者简介&#xff1a;人工智能专业本科在读&#xff0c;喜欢计算机与编程&#xff0c;写博客记录自己的学习历程。 &#x1f34e;个人主页&#xff1a;小嗷犬的个人主页 &#x1f34a;个人网站&#xff1a;小嗷犬的技术小站 &#x1f96d;个人信条&#xff1a;为天地立心&…...

安全防御之安全审计技术

安全防御中的安全审计技术是保障信息系统安全的重要手段之一。其主要目标是对信息系统及其活动进行记录、审查和评估&#xff0c;以确保系统符合安全策略、法规要求&#xff0c;并能够及时发现潜在的安全风险和异常行为。通过安全审计&#xff0c;可以对系统中的各种活动进行记…...

C#多窗口那些事儿

目录 1、调用窗体与被调用窗体 2、窗体的本质 3、调用窗体访问被调用窗体内部对象 4、被调用窗体访问调用窗体 (1)被动方式,也就是调用窗体主动给被调用窗体一个“接口” i.调用窗体定义“静态”变量,并将开放的变量复制 ii.在被调用窗体中,使用:调用窗体名.静态变…...

记一次 Redis 数据库迁移

笔者通过一个 Redis 数据库迁移的例子&#xff0c;介绍了迁移脚本的执行思路。 作者&#xff1a;马文斌&#xff0c;MySQL/Redis 爱好者~ 爱可生开源社区出品&#xff0c;原创内容未经授权不得随意使用&#xff0c;转载请联系小编并注明来源。 本文约 500 字&#xff0c;预计阅…...

小学信息科技Python课程第2课:坐标与画笔

一、turtle画布与坐标系 在同一平面互相垂直且有公共原点的两条数轴构成平面直角坐标系。在坐标系中&#xff0c;水平方向的轴都称为x轴&#xff0c;垂直方向的轴都称为y轴 它们相交于O点&#xff0c;在这一个点里&#xff0c;x轴的值为0&#xff0c;y轴的值也为0&#xff0c;所…...

BP神经网络(公式推导+举例应用)

文章目录 引言M-P神经元模型激活函数多层前馈神经网络误差逆传播算法缓解过拟合化结论实验分析 引言 人工神经网络&#xff08;Artificial Neural Networks&#xff0c;ANNs&#xff09;作为一种模拟生物神经系统的计算模型&#xff0c;在模式识别、数据挖掘、图像处理等领域取…...

Word不同部分(分节)设置页眉和页码的使用指南——附案例操作

Word页眉和页码分节设置的使用指南 目录 Word页眉和页码分节设置的使用指南摘要1. 插入分节符2. 设置不同的页眉3. 设置不同的页码4. 调整页码的起始值5. 删除或更改分节6. 预览和调整 摘要 在撰写word文档时&#xff0c;我们经常需要在不同的部分应用不同的页眉和页码格式。在…...

Ubuntu按转发HDF5

源码编译流程 下载源代码 wget https://hdf-wordpress-1.s3.amazonaws.com/wp-content/uploads/manual/HDF5/HDF5_1_14_3/src/hdf5-1.14.3.zip 解压 unzip hdf5-1.14.3.zip 进入解压后的目录 cd hdf5-1.14.3 编译 依次执行下面的命令 ./configure --prefix/usr/local/hdf5…...

HCIP OSPF实验

任务&#xff1a; 1.使用三种解决ospf不规则区域的方法 2.路由器5、6、7、8、15使用mgre 3.使用各种优化 4.全网可达 5.保证更新安全 6.使用地址为172.16.0.0/16合理划分 7.每个路由器都有环回 拓扑图&IP划分如下&#xff1a; 第一步&#xff0c;配置IP&环回地址…...

Linux上如何一键安装软件?yum源是什么?Linux如何配置yum源?

这几个问题是Linux操作的入门问题&#xff0c;但是确实也会让刚上手Linux小伙伴头疼一阵&#xff0c;故特有此文&#xff0c;希望能对刚入门的小伙伴有一些帮助~ 众所周知 在linux上在线安装软件需要用到yum命令&#xff0c;经常下述命令来安装 yum install [-y] 包名 #-y的…...

Egg框架搭建后台服务【1】

需求 博客系统升级&#xff0c;本来是用 express 写的&#xff0c;最近发现 Egg 不错&#xff0c;正好学习升级一下。边学边写。 Ps&#xff1a;相同的功能&#xff0c;迭代的写法&#xff0c;由浅入深&#xff0c;做个记录。 开发 初始化 安装 node版本需要 >14.20.0…...

益阳市 网站建设/企业营销策略分析论文

那是我处理GD东西的第一个方法.我正在尝试使用jcrop jquery插件实现调整大小和裁剪的功能.我仍然不知道如何保存裁剪后的图像.在jcrop网站上没有太多关于它的内容.这是我的代码&#xff1a;if ($_SERVER[REQUEST_METHOD] POST) {$targ_w $targ_h 150;$jpeg_quality 90;$src…...

网络班级网站建设/杭州优化公司多少钱

Eclipse 安装(Neon 版本) Eclipse 最新版本 Eclipse Neon&#xff0c;这个首次鼓励用户使用 Eclipse Installer 来做安装&#xff0c;这是一种由Eclipse Oomph提供的新技术&#xff0c;它通过提供一个很小的安装器来使得各种工具可以按需下载和安装。 需要框架源码的朋友可以…...

模板网站建设哪家好/厦门seo关键词优化培训

我刚开始学习Java.在我关注的在线课程中,我被要求尝试以下代码&#xff1a;String email1 "mememe.coh";String email2 "mememe.com";Boolean isMatch false;isMatch email1.equals (email2);if (isMatch true){System.out.println("Emails matc…...

wordpress媒体库制作文件夹/网络培训学校

随着近几年IT信息化技术应用变化快速发展&#xff0c;全国各高校的信息化系统也日趋完善&#xff0c;各种学习平台、教学、办公、管理平台都运行在数据中心&#xff0c;一旦数据中心发生故障&#xff0c;将影响到全校信息化系统的正常运转&#xff0c;近年来报道的个别企业已经…...

优设计网站/站长之家网站模板

给定一个所有节点为非负值的二叉搜索树&#xff0c;求树中任意两节点的差的绝对值的最小值。 示例 : 输入: 1 \ 3 / 2 输出:1 解释:最小绝对差为1&#xff0c;其中 2 和 1 的差的绝对值为 1&#xff08;或者 2 和 3&#xff09;。 来源&#xff1a;力扣&#xff08;LeetCode&am…...

番禺网站开发哪家好/抖音搜索关键词排名

综述 Ubuntu分辨率只有一个分辨率 当然xrandr也没法修改 看上去很难受 解决方法 sudo apt install nvidia-cuda-tookit...