基于spark的数据采集平台

基于spark的数据采集平台数据采集平台管理端https://github.com/zhaoyachao/zdh_web数据采集平台服务https://github.com/zhaoyachao/zdh_server平台介绍数据采集,处理,监控,调度,管理一体化平台具体介绍请看github连接中的readme文档

大家好,又见面了,我是你们的朋友全栈君。

数据采集平台管理端

https://github.com/zhaoyachao/zdh_web

数据采集平台服务

https://github.com/zhaoyachao/zdh_server

web端在线查看

http://zycblog.cn:8081/login

用户名:zyc
密码:123456

界面只是为了参考功能,底层的数据采集服务 需要自己下载zdh_server 部署,服务器资源有限,请手下留情

如果觉得项目不错记得分享给同伴和点star!!!

 

平台介绍

数据采集,处理,监控,调度,管理一体化平台具体介绍请看github连接中的readme 文档

# 数据采集,处理,监控,调度,管理一体化平台

# 提示
   
    zdh 分2部分,前端配置+后端数据ETL处理,此部分只包含前端配置
    后端数据etl 请参见项目 https://github.com/zhaoyachao/zdh_server.git
    zdh_web 和zdh_server 保持同步 大版本会同步兼容 如果zdh_web 选择版本1.0 ,zdh_server 使用1.x 都可兼容

# 特色
    开箱即用
    支持多数据源
    高性能数据采集
    单独的调度器,调度也可和三方调度器对接airflow,azkaban
    二次开发
    
   
# 使用场景
  + 数据采集(本地上传数据,hdfs,jdbc,http,cassandra,mongodb,redis,kafka,hbase,es,sftp,hive)
  + 数据加密
  + 数据转换,数据离线同步,实时数据同步
  + 质量检测
  + 元数据,指标管理
  + drools灵活动态的数据清洗
  
  
  
# 主要功能
 zdh 主要的作用 是从hdfs,hive,jdbc,http-json接口 等数据源拉取数据,并转存到hdfs,hive,jdbc等其他数据源
 支持集群式部署
 
 
  + 支持sql标准函数
  + 支持界面选择配置
  + 支持快速复制已有任务
  + 支持外部调度工具(需要修改,新增特定接口)
  + 弹性扩展(可单机,可集群)
  + 支持客户级权限
  + 简单易用支持二次开发
  + 自带简单调度工具,可配置定时任务,时间序列任务,设定次数
  + 调度依赖
  + SQL数据仓库数据处理(单一数仓)
  + 质量检测,及对应报告
  + 支持SHELL 命令,SHELL 脚本,JDBC查询调度,HDFS查询调度
  + 支持本地上传,下载文件
  + 支持多源ETL
  + 任务监控
  + 灵活动态drools规则清理
  
# 功能图
![功能图](img/zdh_web.jpg)  
  
# 版本更新说明
  + v1.0 支持常用数据jdbc,hive,kafka,http,flume,redis,es,kudu,mongodb,hbase,cassandra,hdfs(csv,json,orc,parquet,xml,excel...),本地上传数据(csv)
  + v1.0 调度支持任务依赖等
 
  + v1.1 支持clickhouse-jdbc
  
  + v1.2 支持外部jar etl任务(任务状态需要外部jar 自己跟踪)
  
  + v1.3 支持drools 数据清理
  
  
# FAQ
    shell 脚本格式
    
    window:
    @echo off
    ping -c 4 www.baidu.com1
    :throw
    if %ERRORLEVEL% EQU 1 exit 1 goto end //此处捕获不可少,异常 输出exit 1
    :end
    echo "success"
    exit 0 //此处不可少 正常输出 exit 0
    
    linux
    ping -c 4 www.baidu.com1
    if [ $? -eq 0 ];then
    exit 0
    else
    exit 1
    fi
 
 # 支持的数据源
   + 本地文件
   + hive(单集群使用多个远程hive,以及内外部表)
   + hdfs(csv,txt,json,orc,parquet,avro)
   + jdbc (所有的jdbc,包含特殊jdbc如hbase-phoenix,spark-jdbc,click-house)
   + hbase
   + mongodb
   + es
   + kafka
   + http
   + sftp
   + cassandra
   + redis
   + flume

# 支持的调度对象
   + shell 命令
   + 数据库查询
   + 特色开发jar
   
# 支持的调度器模式
   + 时间序列(时间限制,次数限制)
   + 单次执行
   + 重复执行(次数限制,时间限制)
   
# 支持调度动态日期参数   
   详见说明文档
 
# 用到的技术体系

    前端:Bootstrap
    后端:Springboot+shiro+redis+mybatis
    数据ETL引擎:Spark(hadoop,hive 可选择部署)
    
# 下载修改基础配置

    打开resources/application-dev.properties
     1 修改服务器端口默认8081
     2 修改数据源连接(默认支持mysql8),外部数据库必须引入
     3 修改redis配置

    创建需要的数据库配置
     1 执行sql脚本db.sql
     
    依赖
     1 必须提前安装redis 

# 下载编译好的包

    1 找到项目目录下的release 目录 直接将release 目录拷贝
    2 到relase的bin 目录下执行start 脚本(启动脚本必须到bin 目录下执行)
    3 执行编译好的包需要提前安装mysql8,redis

# 源码自定义打包
    
    清理命令 mvn clean
    打包命令 mvn package -Dmaven.test.skip=true

# 运行
    在target 目录下找到zdh.jar
    执行 java  -Dfile.encoding=utf-8 -jar zdh.jar

 

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/132626.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • cocos2D-x 3.5 引擎解析之–引用计数(Ref),自己主动释放池(PoolManager),自己主动释放池管理器( AutoreleasePool)

    cocos2D-x 3.5 引擎解析之–引用计数(Ref),自己主动释放池(PoolManager),自己主动释放池管理器( AutoreleasePool)

    2022年1月19日
    74
  • oracle定义游标例子_sqlserver游标实例

    oracle定义游标例子_sqlserver游标实例大佬教程收集整理的这篇文章主要介绍了Oracle游标的使用实例详解,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。什么是游标?①从表中检索出结果集,从中每次指向一条记录进行交互的机制。②关系数据库中的操作是在完整的行集合上执行的。由SELECT语句返回的行集合包括满足该语句的WHERE子句所列条件的所有行。由该语句返回完整的行集合叫做结果集。应用程序,尤其是互动和在线应用程序…

    2025年6月30日
    3
  • linux下显卡信息的查看

    linux下显卡信息的查看

    2022年3月12日
    100
  • php layer弹出层更改背景,详解Layer弹出层样式[通俗易懂]

    php layer弹出层更改背景,详解Layer弹出层样式[通俗易懂]前言:学习layer弹出框,之前项目是用bootstrap模态框,后来改用layer弹出框,在文章的后面,我会分享项目的一些代码(我自己写的)。layer至今仍作为layui的代表作,她的受众广泛并非偶然,而是这五年多的坚持,不断完善和维护、不断建设和提升社区服务,使得猿们纷纷自发传播,乃至于成为今天的Layui最强劲的源动力。目前,layer已成为国内最多人使用的web弹层组件,GitHub自然…

    2022年7月13日
    15
  • 详解 ManualResetEvent

    详解 ManualResetEvent今天详细说一下ManualResetEvent它可以通知一个或多个正在等待的线程已发生事件,允许线程通过发信号互相通信,来控制线程是否可心访问资源当一个线程开始一个活动(此活动必须完成后,其他线程才能

    2022年7月3日
    27
  • 图论(十三)——平面图和对偶图

    图论(十三)——平面图和对偶图一、平面图概念\quad如果能把图G画在平面上,使得除顶点外,边与边之间没有交叉,称G可以嵌入平面,或称G是可平面图。可平面图G的边不交叉的一种画法,称为G的一种平面嵌入,G的平面嵌入表示的图称为平面图。\quad简单平面图G=(n,m)G=(n,m)G=(n,m)满足m≤3n−6m\le3n-6m≤3n−6,也满足δ≤5\delta\le5δ≤5…

    2022年5月9日
    353

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号