【数仓从1到n】意向客户主题看板
金典七步
step1: 需求分析(知道有哪些主题,哪些指标,哪些维度
step2: 建模分析(是否要压缩,行/列存储,索引,分区,分桶
step3: 建模操作,建库建表
step4: 数据采集(MySQL业务数据库 -> Hive(ODS层 如何验真: 总量校验,条件校验,抽样校验
step5: 数据清洗转换(空值过滤,空值转换,列值裁剪,切割
step6: 数据分析操作,结合主题,维度指标完成各种需求
step7: 数据导出操作,导出分析后的结果数据到mysql中,之后对接FineBI进行可视化展示
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354ODS层(建模规则为: edu_ods.表名-- 表有: 前两张事实表,中间6张维度表,最后1张访问咨询表(这里没写web_chat_ems是访问咨询主题中的表) 客户关系表 customer_relationship 客户线索表 customer_clue 客户表 c ...
SVN Tools Git tutorial
This guide is about Collaborative coding.
Correspondingly, this process can be divided into many stages.Steps are as follows.
If you wanna to quickstart, you should know your collaborator’s Public Key and add your SSH KEY profile.
And make sure this SSH KEY is not be used on this github account.
Create Repository
To put your project up on GitHub, you will need to create a repository for it to live in.
Learn to use and manage the repositories that allow you to store and collaborate on your proj ...
【数仓从1到n】访问咨询主题看板
项目流程
step1: 需求分析(知道有哪些主题,哪些指标,哪些维度step2: 建模分析(是否要压缩,行/列存储,索引,分区,分桶step3: 建模操作,建库建表step4: 数据采集(MySQL业务数据库 -> Hive(ODS层step5: 数据清洗转换(空值过滤,空值转换,列值裁剪,切割step6: 数据分析操作,结合主题,维度指标完成各种需求step7: 数据导出操作,导出分析后的结果数据到mysql中,之后对接FineBI进行可视化展示
需求分析提出需求
这一步就是根据需求把涉及到的表, 维度, 指标, 以及具体的维度字段, 维度字段提取出来
需求1- 总访问客户量
统计指定时间段内,访问客户的总数量。能够下钻到小时数据。
123456789101112131415维度: 时间维度: 年 季度 月 天 小时 指标: 总访问客户量 涉及到表: web_chat_ems_年_月 (事实表)涉及到字段: 时间维度: create_time 特点: 一个字段中涵盖了多个字段的数据 转换操作: 需要将 create_time 转换为 yearin ...
【数仓从1到n】Lecture
我们做的项目涉及到的软件架构: clouderaManager + HDFS + YARN + SQOOP + HIVE + HUE + OOZIE + FINEBI
架构流程:当前项目是基于clouderaManager构建CDH的大数据分析平台, 在此平台之上,我们搭建有HDFS YARN HIVE SQOOP OOZIE HUE Presto 等相关的大数据组件我们首先使用SQOOP从业务数据库中将数据导入到HIVE中, 在HIVE中构建数仓分层, 对数据进行ETL相关操作, 对数据进行了统计分析处理, 最后将统计分析的结果导出到Mysql数据库中, 然后通过FINEBI实现图表展示操作, 同时整个项目需要周期化运行的, 所以这里引入了OOZIE完成工作流定时调度操作, 当然采用OOZIE原因是因为我们基于HUE进行数据统计, 同时可以直接基于HUE对接oozie完成调度配置的
我将从项目的整个流程划分为4步
MySQL - ods - dwd - dwb - dm
Step1通过sqoop将业务数据库中的数据采集同步到在线教育数仓的ODS层中
Sqoop导入数据又四种方式 ...
INTERVIEW
b9a2f359a78cc900c6b7b98b312f9de9a44c2641dcc13ec609326ed238aca4e53bf05f11eef5584228a9b5b79b60d5491d9b4dd0740dfce2ab85f1eca195bc0306ca42ab974f670e80126916a543d2dff4c795284d02d2756b2d870874ad6e894e2550f8caefbc1ae525d745ae9026fbef1e9f78a39be16d7149f490ac8899f4f5b1b62b60160b81e9500d813e3971adf99d6b3eab9ed58af9ec1a4d992b4b2a413735db7390783f4369ec47b2e38c4e678a73cb0e1d6a6716018ffd308fa19a90fd7a845dc35170e7a6042531d5a1ce59862b719724e07b44dab2dc4a166078b5026e8dfb42629e2ba7ba4b2439a72672bfe0109d0c7cac3 ...
Git及数仓Interview补充
Github是什么我就不多说了,全国最大的同性交友平台(狗头!),用过的都懂!
其实本来是不想做这种教程的,网上的教程多得是.但是以后可能会用到吧.
博客园直达: https://www.cnblogs.com/liam-sliversucks/p/17464416.html
Git下载链接:https://git-scm.com/downloads
Git小乌龟下载链接:https://tortoisegit.org/download/
语言包下载链接:https://tortoisegit.org/download/
版本控制:
Git-2.13.0-64-bit.exe:Windows版本的Git工具安装包
TortoiseGit-2.4.0.2-64bit.msi:Git的可视化工具安装包
TortoiseGit-LanguagePack-2.4.0.0-64bit-zh_CN.msi:TortoiseGit工具的汉化包
本地仓库构建
构建本地仓库构建有三种方式:
方式一:通过Git自带的图形化界面进行构建
鼠标右键,Git GUI Here,然后点第一个Create ...
【数仓】数仓项目总结
Operational Data Store
知道ODS层的作用
掌握ODS层的四种数据导入方式Master the four data import methods of ODS layer
清晰流利地说出Sqoop的几个常用参数
ODS层作用负责临时存储数据,和源数据基本保持一致,从而采用orc+zlib
四种数据导入方式①全量同步 – 每天新增一个日期分区,同步并存储当天的全量数据,历史数据定期删除②全量覆盖 – 不需要分区,每次同步都是先删后写,直接覆盖③增量导入 – 每天新增一个日期分区,同步并存储当天的新增数据④新增及更新同步 – 每天新增一个日期分区,同步并存储当天的新增和更新数据
注意2,3,4咱们使用的比较多
Demo案例这里connect 后面是单引号,里面直接写jdbc:mysql://192.168.88.80:3306/yipin也是可以的
12345678/user/bin/sqoop import "-Dorg.apache.sqoop.splitter.allow_text_splitter=tru ...
【数仓】RPT层搭建
Pseudocode
手撸RPT层代码.
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176-- RPT 层搭建Step1:销售主题统计宽表需求一:门店月销售单量排行, 按月统计,各个门店的 月销售单量tim ...
【数仓】数仓DM层搭建
Data Market销售主题统计宽表手撕代码PseudocodeTips:Please follow these steps before you start your project !Code12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394-- 基于DWS层销售主题日统计宽表的值,上卷出年月周日的销售主题统计宽表(年月周日)-- 动作一:求八种维度组合情况step1:梳理表关系(指标和DWS一致,需要与dwd.dim_date 时间维表相关联)-- 整个表和DWS层销售主题统计宽表dws_sale_daycount的区别就在于多了开头的时间粒度字段-- 改造1,dim_date日期维度表字段太多,抽取出要用的字段,放到CTE表达式中, 最后join.with dd as ( ...
【数仓】数仓DWS层搭建(续)及索引
本次主要是干DWS层的另外两个宽表,商品主题日统计宽表和用户主题日统计宽表。因为是销售商品给用户,而且销售主题日统计宽表在上次已经干完了,这另外两个宽表基本换汤不换药。还有MySQL的索引之类的一些东西,让我认识到SQL也是有性能(效率)的评级的,网上可以搜到MySQL的评级分类,以后基本将自己的SQL优化到const这种效率的SQL就很牛了。
Hive相关配置参数12345678910111213141516171819202122232425262728293031323334353637--分区SET hive.exec.dynamic.partition=true;SET hive.exec.dynamic.partition.mode=nonstrict;set hive.exec.max.dynamic.partitions.pernode=10000;set hive.exec.max.dynamic.partitions=100000;set hive.exec.max.created.files=150000;--hive压缩set hive.exec.compr ...
