DataCleaner

在github介绍中描述为“首屈一指的开放源码数据质量解决方案。”,由Neopost和Human Inference提供支持的开源软件,协议为LGPL3.0,目前由68个发行版本。最新版为5.5.0,社区下载版为5.1.5。windows、linux、mac有分别的安装包。

概览

  

描述

  DataCleaner 是一个数据质量分析,比较,验证和监督的软件.DataCleaner包括一个独立的图形用户界面分析,比较和验证,并进行监测web应用。

功能模块

  源码包主要的模块描述:

  • api:DataCleaner的公共API。 主要是为了构建自己的扩展而提供的接口和注解。
  • resources:DataCleaner的静态资源
  • oss-branding:图标和颜色
  • test-ware:用于DataCleaner的单元测试的类和扩展代码
  • engine
  • core:核心引擎部分,它允许根据API执行作业和组件。
  • xml-config:包含读写任务文件和配置文件清理工具。
  • env:DataCleaner可以运行的不同/替代环境,例如Apache Spark或webapp-cluster
  • components
     - 许多子模块包含内置以及与DataCleaner一起使用的其他组件/扩展。
     - 标准组件:一个容器项目,它依赖于通常捆绑在DataCleaner社区版中的所有组件。
  • desktop
     - api DataCleaner桌面应用程序的公共API。
     - ui 适用于桌面用户的基于Swing的用户界面。
  • monitor
     - api DataCleaner监控模块的API类和接口

安装方式

环境要求

  1. 一台有图形界面的计算机(命令行模式除外)
  2. java7 或以上
  3. DataCleaner 的软件许可文件

启动命令

社区5.5.0版zip下载后直接解压使用 datacleaner.sh 或 datacleaner.cmd启动。

以上为DataCleaner基本情况,以及采用图形界面运行方式。 并不太符合B/S方式的修改过程
因为需要了解desktop-api和desktop-ui的结合方式,并据此开发一套完整B/S应用。


通过调研,DataCleaner提供了一种和Kettle类似的运行模式。及在图形界面通过数据源选择, 组件拖动,参数配置,结果输出等一系列拖动操作过程,最终保存为一个任务文件(*.xml)。
imagepng

其中:
- job-metadata 为任务的元信息,包含描述、作者、时间、属性等。
- source 为数据源信息
- transformation 转换过程块
- transformer 单个转换过程块
- analysis 数据分析块
- analyzer 分析相关模块,包括文件的输出。

其对应的是客户端中的:
image2png

对应的列表有:

完整的DataCleaner组件列表

  • Transform 转换

  • Composition 合并

  • Conversion 转换

  • Data structures 数据结构

  • Date and time 日期和时间

  • Encoding 编码

  • Filter 过滤器

  • Network tools 网络工具

  • Numbers 数值

  • Scripting 脚本

  • Text 文本

  • Improve 改善

  • Location 本地

  • Reference data 参考数据

  • Analyze 分析

  • Date and time 日期和时间

  • Visualization 可视化

  • Write 写入