| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 大数据 -> 电商数仓个人简总结 -> 正文阅读 |
|
[大数据]电商数仓个人简总结 |
1. 为什么做电商数仓 ? ? ? ? 数据越来越多,我们把各部门的数据收集到一起,通过分析,计算等转化成对我们公司有价值的数据,为我们公司做决策提供一个数据支持. 2. 技术架构 ? ? ? ? (1). 日志数据:我们通过flume采集埋点的日志数据,然后拉取到kafka,再使用flume从kafka中拉取数据存到hdfs上. ? ? ? ? (2). 业务数据:对业务数据,我们使用sqoop进行数据迁移,把业务数据从业务数据库中迁移到我们的大数据平台上,也就是hdfs上. ? ? ? ? (3). 数仓工具:我们选取的是hive,因为hive是基于hdfs存储的,hive可以把数据转成结构化存储为表,还会提供类SQL的查询语句,类SQL完成指标时跟传统数据库mysql的查询语句相识,类SQL的学习相对容易,简单易学,能让我们新的技术人员快速上手,参与到项目开发中. ? ? ? ? (4). 我们采用superset来进行数据可视化展示. 3. 数仓建模 ? ? ? ? (1). 我们选择的是维度建模,我们也是通过业务部们选择了这样的几条电商核心业务线,设备,商品,订单,地区,为了后期的指标扩展,我们声明的粒度都是最细的. ? ? ? ? (2). 然后根据我们要做的指标结合我们的数据,确定了维度表和事实表. 4. 数仓分层 ? ? ? ? (1). 我们以前实现指标呢,是直接从数据库里进行分析计算,一条SQL直接干到底,就是这样的一个开发模式,我们中间出现了很多的问题,很多的重复开发步骤,所以初步考虑分为天元层,中间层,以及应用层. ? ? ? ? (2). 结合指标我们开发小组讨论最终确定了分为5层. ? ? ? ? ? ? ? ? ①. ods层?数据原始层 存储我们的原始数据,不用做任何的操作,起到一个隔离原始数据的一个作用. ? ? ? ? ? ? ? ? ②.?dwd层 对原始数据做一个简单的ETL清洗,完成维度建模 ? ? ? ? ? ? ? ? ③.?dws层 根据指标来建宽表,进行一个轻度的汇总,如按天汇总 ? ? ? ? ? ? ? ? ④.?dwt层 以dws层为基础,累积汇总,如按周按月汇总 ? ? ? ? ? ? ? ? ⑤.?ads层 为各种统计报表,可视化展示关联的mysql提供数据 ? ? ? ? (3). 分层的好处 ? ? ? ? ? ? ? ? ①. 减少重复开发: 分为多层,可以重复使用我们的指标,重复使用各层的数据,主要体现在中间层. ? ? ? ? ? ? ? ? ②. 隔离原始数据:?把我们操作的数据和原始数据隔离,就算操作数据是发生问题,我们的原始数据还在,天元层. ? ? ? ? ? ? ? ? ③. 复杂问题简单化:?把大问题分解成多个小问题来完成,小问题实现起来就比较简单,每一层都处理一些简单的问题. ? ? ? ? ? ? ? ? 提高了开发项目过程中的效率和项目质量. ? ? ? ? ? ? ? ? ?方便后期维护以及扩展 ???????????????? |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/24 2:43:44- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |