项目简介:
元数据管理工具wherehows,包含各种元数据的采集、转换、存储、分析等完整的元数据管理项目,
元数据是什么?
元数据就是定义数据的数据,比如数据库的表、字段,HDFS的文件目录结构、文件属性等
wherehows是如何获取元数据的?
主要的方式有如下几种:
1.通过远程sftp上传采集jar文件,远程执行jar文件采集生成采集结果文件,在将生成文件拿回本地
2.通过JDBC连接相关数据库进行查询
3.通过HTTP接口进行数据获取
wherehows相关技术栈(相关内容具体百度学习):
项目实现语言:JAVA+SCALE + PYTHON
相关框架:PlayFramework、Jpython
自动化构建:gradle
前端:NodeJs+Yarn+Ember
数据存储:Mysql
数据检索:elasticsearch
其他:docker
项目模块划分
wherehows-backend ----核心采集转换分析存储模块
依赖 wherehows-etl、wherehows-dao模块
wherehows-frontend ----前端展示模块
依赖wherehows-web、wherehows-dao
wherehows-common ----底层模块
所有模块的基础,定义job执行器、数据模型、工具类等相关基础内容
wherehows-dao ----数据库相关操作模块
提供所有数据库表与数据模型的转换及各种查询功能实现,供Backend与Frontend依赖,需要依赖Commons
wherehows-etl ----es任务相关模块及各种python脚本
所有elasticsearch相关Jobs的采集、转换、分析,供backend依赖,依赖commons模块及采集模块hadoop
wherehows-hadoop
wherehows的hadoop相关的采集方式jar文件源码
wherehows-kafka
暂时未知,应该是定时任务的替代方式,使用kafka消息队列发起采集任务
wherehows-data-model
相关数据模型:初始化sql脚本、初始化ES脚本、ES查询模板、ARVC(JSON与ARVO相互转换的模型)
wherehows-docs
---相关文档
wherehows-docker
---docker方式启动的相关脚本、命令