NIFI使用(三)Data Provenance 的重要应用

前言

NIFI是一个强大的数据处理工具,APACHE的顶级项目,什么叫顶级?我也不知道,有兴趣的自己了解下。开始主要是如何使用NIFI,会用了再谈原理。
工具的作用在于减少人的劳作,增加劳动力,工具同时也是使大多数人变的不愿意思考的元凶。我们应该怀着超越该工具的思想去学习,站在巨人的肩膀上。

这章节主要粗略讲下在Data Provenance(数据出处)的应用,开发阶段如果我们需要确认数据流通方式,数据流通过程中都是用什么样的形式传输,就需要用到Data Provenance。这里只对应用进行说明,对它的存储原理,数据加密处理等等不做说明。


右键一个Processor,下面以ConvertAvroToJSON的为例:

点击View data provenance 调出页面

左边感叹号点击后面再说,是详细信息,先说下列表,关于Type网关有说明http://nifi.apache.org/docs/nifi-docs/html/user-guide.html#provenance_events

FlowFileUuid,当流程启动时,第一个节点产生一个uuid会伴随这个数据一直走下去。size,数据块大小。最后是3个连着的圈指关系图谱,就是该条数据做过哪些事情,有一个流程图一样的东西。

点击感叹号!

Details : 包含执行时间,执行时长,类型,还有一些组件的信息。

Attributes:这里是数据传输过程中,一些组件固有属性,重要的有mime.tyep:第一行是当前输出的数据类型,后面灰色的是指输入的数据类型。

Content:
InputClaim :输入。点击View

可以看到右边有contentType,是不是很熟悉。这是个ajax的请求。由于这是avro格式的数据,左边可以切换为格式化显示,它可以输出一个json格式的字符串。

OutputClaim :输出。点击View,由于ConetntType是json,就直接展示了。

到此我们可以看到,data provence在调试过程中的重要性,要学会查看输入输出数据,通过对数据的对比校验,检查自己的组件是否存在bug。并且分析传输类型可以堆组件之间的关系更加了解。

发表评论

电子邮件地址不会被公开。