沈阳创新网站建设报价,如何欣赏网站,网站建设特效素材,360应用市场通过前面大数据开发相关知识的学习#xff0c;准备做一个项目进行练习---我给他起了一个响亮的名字#xff1a;基于HadoopHA的智慧社区服务平台 设计规范#xff1a;
做一个项目之前肯定要先规定一些开发过程中的设计规范
#xff08;一#xff09;数据埋点规范#xf… 通过前面大数据开发相关知识的学习准备做一个项目进行练习---我给他起了一个响亮的名字基于HadoopHA的智慧社区服务平台 设计规范
做一个项目之前肯定要先规定一些开发过程中的设计规范
一数据埋点规范
数据埋点是一种在软件、应用程序或网站中插入代码的技术用于收集和跟踪用户行为和事件的数据。通过在关键位置插入代码片段埋点可以记录用户在应用程序中的操作和交互以及其他有关系统和用户行为的信息。
1确保灵活、高可扩展
2兼顾后续的处理、分析的方便性
3确保可跟踪、数据正确性
4业务数据打通
5考虑不同C端产品特性与用户体验
6确保性能、敏感数据安全性
二数仓层次设计规范 ODS层是原始数据层是最接近数据源的一层将数据源中的数据经过ETL之后装入ODS层ODS的数据结构一般与数据来源保持一致便于减少ETL工作的复杂性。
DWD层是明细数据层进行维度建模该层的表结构和粒度与原始表保持一致不过对ODS层数据进行清洗、维度退化、脱敏等最终得到的数据是干净的完整的一致的数据。一般采用星型模型呈现的状态一般为星座模型。 维度建模一般分为四步 选择业务过程先选择容易实现的、 声明粒度以最低的原子粒度处理数据、 确认维度考虑其他维度是否可以被属性化、 确认事实确认将那些事实---指的是度量值一些具体数据放入事实表中。
DWS层服务数据层基于DWD层的明细数据按天轻度汇总成某一个主题域的服务数据一般是宽表。DWS层统计各个主题对象的当天行为以及一些业务明细数据服务于DM数据集市层的某个主题。
三表命名规范
英文在不是原意的情况下采用缩写避免数字开头
能够合理的区分出表所描述的数据域、数据周期等。 命名规范设定
层次_数据域_修饰/描述_范围/周期
订单相关数据表
dwd层 d_ord_info_d
dws层 s_ord_st_d
维度表dimension
用户维度 dim_user_d
商品缓慢渐变维表: dim_product_l
ods层
对于ods层表最好能够区分数据来源包括在来自什么系统、源数据名称。
eg 从业务系统全量采集订单(loan_order)数据到ods层 业务系统编码 buss 业务系统订单表 loan_order ods层表命名 o_buss_loan_order_d
四脚本命名规范
•ETL脚本名称尽可能和所产出的表同名 •数据采集、 数据推送脚本尽可能标识数据去向
•ETL脚本若产生多个表 采用对应的数据域和语义描述命名
•Jar包命名以实际的业务处理逻辑语义描述为主调度任务命名同样尽量以产出表名命名。
eg:
订单ETL过程 从表o_buss_loan_order_d整理数据并且装载到dwd层表d_ord_info_d中。
ETL脚本命名 d_ord_info_d.sh
ETL任务命名 d_ord_info_d 一个ETL脚本产出多个表比如从商品表中分离出商品维度、厂家维度。
ETL脚本命名 dim_product_mfrs_d.sh
ETL任务名称 dim_product_mfrs_d 采集数据到ods层的表o_buss_loan_order_d imp_o_buss_loan_order_d.sh
数据表dm_ord_trsfm_d推送到BI系统 exp_bi_dm_ord_trsm_d.sh
五开发规范
数仓中MR程序尽可能统一输入参数、输出参数单个jar程序的功能模块清晰避免多种处理逻辑写入一个jar包。
每个ETL脚本尽可能产出一张数仓表方便任务排查同时也减少数仓表的耦合性。
ETL脚本格式、备注清晰避免大范围、格式杂乱的脚本合理利用临时表。
字段列对齐 关键字列对齐
禁止使用Tab 全部使用4个空格代替