大数据开发之数据仓库

引言

最近工作中引入了模型策略,所以在平时会在数仓上进行一些作业开发,分析数据,今天就基础性的了解下数仓的架构。

什么是数仓?

数仓(数据仓库,Data Warehouse),就是一种数据库,不过它被专门设计用于支持企业决策分析和报告操作;

通常用于存储和管理来自多个业务系统的数据,使企业能够进行深入的数据分析和挖掘,从而改进业务决策。

数仓的架构

数据源

数仓一般会支持多种数据源接入,如MySQL、Spark、Flink、硬盘文件等。

ETL数据清洗

即**(Extract, Transform, Load)过程**:包括数据的清洗、转换和加载;以确保数据质量和数据准确性。

数据存储

考虑到企业级业务的数据量大,存储成本较高;一般用Hadoop存储原始数据;

不过清洗后的内容,数据量通常会越来越少,可以根据查询性能、写入导出频率选择不同的存储方案。

数据层 存储方案 存储格式 应用场景
ODS(原始数据层) Hadoop HDFS Parquet 存储原始订单、用户行为数据
DW(数据仓库层) Amazon Redshift 列式存储 存储清洗后的订单、用户数据
DM(数据集市层) MySQL 行式存储 存储销售部门的销售分析数据
归档层 Amazon S3 Glacier - 存储历史订单数据(5年以上)

查询分析

数据处理:使用 Spark SQL 进行数据清洗、转换和分析。

结果存储:将分析结果写回 MySQL 或其他数据库,供业务系统使用。

其中SQL执行过程,还涉及到资源调度、批处理等核心提效手段,具体的资源调度策略与批处理方式需要结合hadoop食用。

维度 批处理 资源调度
核心目标 高效执行批量任务 动态分配和管理计算资源
技术实现 Hadoop、Spark、Flink YARN、Kubernetes、Mesos
优化方向 数据本地性、任务拆分、弹性伸缩 公平调度、抢占式调度、资源预留
相关推荐
小树苗1931 小时前
Berachain稳定币使用指南:HONEY与跨链稳定币的协同之道
大数据·人工智能·区块链
电商API_180079052472 小时前
电商数据分析之自动获取数据的技术手段分享
大数据·数据库·数据挖掘·数据分析
Elastic 中国社区官方博客7 小时前
AutoOps:简单的 Elasticsearch 集群监控与管理现已支持本地部署
大数据·人工智能·elasticsearch·搜索引擎·云计算·全文检索
云手机掌柜9 小时前
技术深度解析:指纹云手机如何通过设备指纹隔离技术重塑多账号安全管理
大数据·服务器·安全·智能手机·矩阵·云计算
计算机毕设残哥12 小时前
基于Hadoop+Spark的人体体能数据分析与可视化系统开源实现
大数据·hadoop·python·scrapy·数据分析·spark·dash
eve杭13 小时前
网络安全细则[特殊字符]
大数据·人工智能·5g·网络安全
AI悦创|编程1v116 小时前
00-1-正则表达式学习心得:从入门到上瘾,再到克制
数据仓库·正则表达式·数据挖掘·ai悦创编程一对一教学·python一对一辅导·python一对一教学
Elastic 中国社区官方博客17 小时前
AutoOps:简化自管理 Elasticsearch 的旅程
大数据·人工智能·elasticsearch·搜索引擎·全文检索
chatexcel17 小时前
ChatExcel将发布数据分析Mini AI 工作站
大数据·人工智能·数据分析
IT研究室17 小时前
大数据毕业设计选题推荐-基于大数据的全球产品库存数据分析与可视化系统-大数据-Spark-Hadoop-Bigdata
大数据·hadoop·数据分析·spark·毕业设计·源码·bigdata