大数据平台数据仓库ETL基本思路

ETL工具

开源工具:

Sqoop:Hadoop(hive)和关系型数据库之间传输数据的开源ETL工具。

Beeline:hive客户端工具,基于SQLline的JDBC客户端

Azkaban:任务调度开源工具。

自开发工具:

  1. 脚本生成工具:jar包,基于系统调研时产生的表级调研文档,自动检索数据源并生成整体ETL工具中拥有较高规范的脚本文件的脚手架:ods层建表语句、sqoop脚本、sync脚本、flow脚本。必要时依据实际情况对脚本进行人工调整。
  2. 脚本执行工具:python程序,读取参数文件数据并替换脚本中的对应参数,执行脚本。
  3. SQL执行工具:python程序,读取参数文件数据并替换脚本中的对应参数,执行脚本。
  4. CTL参数生成工具:python程序,基于TDH-mysql库ctl控制表生成对应的参数文件。
  5. 互斥锁:依据azkaban中并发project的操作表情况,设计互斥锁避免并发操作同一张表的情况发生。
  6. 数据源检查:jar包,基于TDH-mysql库ctl表信息和数据源实际情况,检查数据源表结构变更情况,判断是否需人工介入,记录变更情况。
  7. 稽核工具:oracle-ods层数据抽取完整性、ods-dw层数据映射正确性稽核。人工开发脚本。

ETL开发过程

大数据平台新数据源加入,ETL开发过程:

  1. 数据调研:

    1. 对数据源系统进行调研,输出系统调研文档、表级调研文档、字段级调研文档、数据字典等调研资料
  2. 脚本脚手架生成:
    1. 确定大数据平台抽取范围(表+时间)、抽取方式(增量/全量)、抽取周期等。信息补充到表级调研文档
    2. 脚本生成工具+表级调研文档—>生成各脚本程序的脚手架。细节及特殊情况进行人工调整。包括:ods层建表语句、sqoop脚本、sync脚本、azkaban调度脚本
    3. Waterdrop下使用ods层建语句创建数据源ods层表结构:txtfile和orc表
    4. Sqoop脚本及sync脚本拷贝到指定路径,调整或检查azkaban脚本
    5. 上传azkaban脚本,检查任务逻辑
  3. 参数文件生成:
    1. 配置TDH-mysql的ctl库相关表信息
    2. 执行CTL参数生成工具生成对应数据源的参数文件
  4. 数据初始化:
    1. 调整参数文件,使数据同步范围为全部时间(全量)
    2. 执行azkaban任务,初始化数据到ods层
  5. DW层脚本开发:
    1. DW层表结构设计、关联关系设计、映射关系设计,形成dw层设计文档
    2. DW层映射mapp脚本开发,形成sql脚本文件,拷贝到执行路径
    3. DW层建表语句及TMP表建表语句存档
  6. DW层部署:
    1. 对DW层脚本进行血缘分析,生成依赖关系文档
    2. 调整azkaban脚本文件,补充DW层任务调度
    3. 按需设计互斥锁、调整相关代码补充锁机制
  7. 数据稽核:
    1. 数据源检查程序初始化
    2. 数据稽核脚本配置
    3. 启动运行(调整azkaban脚本)

大数据学习——基于大数据平台的数据仓库ETL基本思路相关推荐

  1. 大数据学习笔记—大数据概论

    大数据概论 一. 大数据的概念 二.大数据的特点(4V) 三. 大数据的应用场景 四.大数据的发展前景 五.大数据部门的业务流程/组织结构 一. 大数据的概念 大数据(big data),指无法在一定 ...

  2. 02云计算与大数据学习之大数据关键技术与应用

    文章目录 1.应知应会 2.大数据总体框架 架构设计原则 总体架构特点 3.大数据存储技术 4.大数据处理技术 大数据处理模式 大数据处理Storm平台 5.大数据分析技术 大数据分析特点 大数据分析 ...

  3. 大数据学习系列----大数据项目的思考

    2019独角兽企业重金招聘Python工程师标准>>> 最近做了一个大数据可视化的项目,目前阶段还仅仅对我们关心的指标做一些年度,季度,月度维度的汇总和展示,提供了简单的纵向横向的指 ...

  4. 大数据学习:大数据就业前景和就业方向

    对于想要学习数据分析的同学来说,最重要的应该就是学完之后的就业吧.那么,大数据的就业前景和就业方向是怎样的呢? 大数据的就业领域是很宽广的,不管是科技领域,还是食品产业,零售业等等,都是需要大数据人才 ...

  5. 大数据学习1——大数据概述

    一.三次信息化浪潮的标志 第一次:PC 第二次:互联网 第三次:大数据.云计算.物联网 二.大数据关键技术 大数据特点:4V,数据量大(Volume).数据类型多(Variety).处理速度快(Vel ...

  6. lyuyou消费大数据_基于大数据技术的电力用户行为分析及应用现状

    &Automation 基于大数据技术的电力用户行为分析及应用现状 沈玉玲,吕燕,陈瑞峰 ( 上海电气集团股份有限公司中央研究院, 上海 200070 ) 摘 要: 电力行业是大数据技术应用的 ...

  7. 大可乐推出基于大数据 而研发的4G手机

    大可乐公司日前发布了一款基于大数据研究用户需求而开发的4G手机--"大可乐·春".根据数据魔方的统计显示,近一年来有70%的用户选择5.0-5.5吋屏幕的手机,34%的购机用户最关 ...

  8. (一)大数据学习引言——大数据概述

    一.大数据的概念 概念 大数据是指:无法在现有的常规软件工具对其内容进行抓取.管理和处理的数据集合. 特征 Volume:数据量足够大 Variety:数据的种类多样 Velocity:数据的增长速度 ...

  9. 浪潮商用机器携手长亮科技和南大通用 打造基于GBase国产高端数据仓库方案

    日前,长亮科技数据仓库解决方案与浪潮K1 Power国产高端服务器基于国产化数据库南大通用GBase 8a,通过24项基础功能测试和业务场景性能测试,完美兼容且性能强劲,可实现顺利部署.平稳运行及高效 ...

最新文章

  1. 【Android游戏开发二十五】在Android上的使用《贝赛尔曲线》!
  2. python爬虫代码房-Python爬虫一步步抓取房产信息
  3. 利用存储函数,查询某个员工的年薪
  4. Python模块之XlsxWriter
  5. zabbix中mysql连不上的排错_zabbix 安装及简单排错
  6. 美国体验圣帕特里克节(St.Patrick's Day)
  7. Excel使用技巧,补充中。。。
  8. 今年阿里双十一提升广告点击率居然用的是这种算法?!
  9. TreeView控件 1202
  10. 洛谷 3784(bzoj 4913) [SDOI2017]遗忘的集合——多项式求ln+MTT
  11. 理解点击屏幕的事件响应---对UIView的hitTest: withEvent: 方法的理解
  12. 前端人员必须掌握哪些技术?常见缓存种类有什么?
  13. asp.net mysql数据库连接字符串_如何让您的ASP.NET数据库连接字符串是安全的
  14. 电商数据应用体系建设总结(二)—— 数据应用层架构介绍和规范总结
  15. 【人脸关键点】——PFLD人脸关键点检测解读
  16. Java反射机制在工厂模式中的应用
  17. linux删除网卡网卡驱动命令,Linux系统如何查看网卡驱动
  18. 海康IVMS-8300平台国标对接
  19. 计算机视觉(东北大学)慕课参考答案
  20. 快手如何搭建一个好的数据指标体系?

热门文章

  1. PyTorch日积月累_1-Tensor
  2. 特殊符号网 http://www.teshufuhao.net/
  3. 前端学习笔记——Ajax
  4. 2345安全卫士卸载不了怎么办?
  5. 十连胜!实在智能×浙江省十家农商行,数字科技赋能普惠金融
  6. 【Linux】SSH远程终端连接工具(SSH基本用法、ssh服务认证类型、ssh服务常见配置、常见配置总结、远程拷贝scp命令)
  7. IC设计- 浅谈各种验证 - 功能验证,形式验证,原型验证
  8. 【PNN分类】基于灰狼鹰算法优化pnn神经网络实现数据分附matlab代码
  9. 互联网晚报 |12.5号起,北京公交地铁不得拒绝无48小时核酸阴性乘客;知情人士否认恒大汽车总部解散传闻;92号汽油或将重回7元...
  10. mysql设计规范3nf_数据库1NF-3NF范式深入理解