| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> hadoop数仓建设之离线数据开发 -> 正文阅读 |
|
[大数据]hadoop数仓建设之离线数据开发 |
🌸最近在学python的基础数据结构,主要原因是面试的算法题都是数据结构,想努力打打基础,但是作为一个人工智能与大数据领域的博主,还是要继续学习大数据的,今天我们就来介绍一下数据仓库的离线数据开发的过程吧,往期数仓的介绍在下面👇:
🍡大数据之路任重道远,借着公司有大数据的平台赶紧把大数据好好学习一下,今天要介绍的离线数据开发和我目前的工作简直如出一辙,我知道在平台上该怎么操作,但我也希望知道这个平台实现的原理是什么,以及与传统的数据仓库的开发有什么样的不同。 1. 离线数据开发上一章节我们讲述了数据同步,从采集系统中收集了大量的原始数据后,数据只有被整合和计算,才能被用于洞察商业规律,挖掘潜在信息,从而实现大数据价值,达到赋能于商业和创造价值的目的。面对海量的数据和复杂的计算,数据计算层包括两大体系:数据存储及计算平台 (离线计算平台 MaxCompute 和 实时计算平台 StreamCompute) 、数据整合及管理体系 ( OneData ) 。 2. 数据计算平台我们公司的数据研发岗位的工作大致可以概括为:了解需求→模型设计→ ETL 开发→测试→发布上线→日常运维→任务下线。与传统的数据仓库开发( ETL)相比,我们的数据研发有如下几个特点:
通过统一的计算平台(MaxCompute)、统一的开发平台(D2 等相关平台和工具)、统一的数据模型规范和统一的数据研发规范,可以在一定程度上解决数据研发的痛点。 2.1 统一计算平台离线数仓的存储和计算都是在MaxCompute上完成的。大数据计算服务 MaxCompute 是自主研发的海量数据处理平台,主要服务于海量数据的存储和计算 ,提供完善的数据导入方案, 以及多种经典的分布式计算模型,提供海量数据仓库 的解决方案,能够更快速地解决用户的海量数据计算问题,有效降低企业成本,并保障数据安全。 2.1.1 MaxCompute 的结构MaxCompute 采用抽象的作业处理框架 ,将不同场景的各种计算任务统一在同一个平台之上,共享安全、存储 、数据管理和资源调度,为来自不同用户需求的各种数据处理任务提供统一的编程接口和界面。它提供数据上传/下载通道、 SQL、 MapReduce、机器学习算法 、 图编程模型和流式计算模型多种计算分析服务,并且提供完善的安全解决方案。 Max Compute 客户端有以下几种形式:
接人层提供 HTTP 服务、 Cache、负载均衡,实现用户认证和服务 Max Compute 逻辑层又称作控制层,是 MaxCompute. 的核心部分,实现用户空间和对象的管理、命令的解析与执行逻辑、数据对象的访问控制与授权等功能。在逻辑层有 Worker 、 Scheduler 和 Executor 三个角色 :
计算层就是飞天内核( Apsara Core),运行在和控制层相互独立的 2.1.2 MaxCompute 的特点
3.数据开发平台数据开发平台集成了多个子系统来解决实际生产中的各种痛点。围绕 MaxCompute 计算平台,从任务开发、调试、测试、发布、监 控、 报警到运维管理,形成了整套工具和产品,既提高了开发效率,又保证了数据质量,并且在确保数据产出时效的同时,能对数据进行有效管理。 数据研发人员完成需求了解和模型设计之后,进入开发环节,开发 工作流如图: 3.1 在云端(D2)D2 是集成任务开发、调试及发布,生产任务调度及大数据运维,数据权限申请及管理等功能的一站式数据开发平台 , 并能承担数据分析工作台的功能。
3.2 SQLSCANSQLSCAN 将在任务开发中遇到的各种问题,如用户编写的 SQL质量差、性能低、不遵守规范等,总结后形成规则,并通过系统及研发流程保障,事前解决故障隐患,避免事后处理。
SQLSCAN 主要有如下三类规则校验:
SQLSCAN 规则有强规则和弱规则两类。触发强规则后,任务的提交会被阻断,必须修复代码后才能再次提交 ; 而触发弱规则,则只会显示违反规则的提示,用户可以继续提交任务。 3.3 DQCDQC (Data Quality Center ,数据质量中心)主要关注数据质量,通过配置数据质量校验规则,自动在数据处理任务过程中进行数据质量方面的监控。 DQC的运行流程如下: 3.4 在彼案数据测试的典型测试方法是功能测试,主要验证目标数据是否符合预期。其主要有如下场景 :
新增产品经理、运营、 BI 等的报表、应用或产品需求 , 需要开发
由于数据仓库系统迁移、源系统业务变化、业务需求变更或重构等,需要对现有的代码逻辑进行修改,为保证数据质量需要对修改前后的数据进行对比,包括数据量差异、宇段值差异对比等,保证逻辑变更正确。为了严格保证数据质量,对于优先级(优先级的定义见“数据质量”章节)大于某个阔值的任务,强制要求必须使用在彼岸进行回归测试,在彼岸回归测试通过之后,才允许进入发布流程。 在彼岸主要包含如下组件,除满足数据测试的数据对比组件之外,
使用在彼岸进行回归测试的流程如图: 参考资料《大数据之路 某某公司大数据平台建设》 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 | -2025/1/20 3:49:24- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |