![](https://img-blog.csdnimg.cn/b74ff5e43de444aa8ee8b78880f77fed.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
数据仓库项目
文章平均质量分 74
对数据仓库有一个完整的认识,实现需求思路可以直接嫁接到工作当中,可以为你在大数据开发过程中遇到的难题提供更多的解决思路吧,
Alienware^
喜欢专研Java,Scala,Python,数据库,以及大数据框架系列知识。希望通过不断的学习,记录自己的点点滴滴。
展开
-
数仓 元数据管理 Atlas 的使用
文章目录Atlas的简介Solr的安装Atlas的安装和配置Kerberos相关配置Atlas的登录和启动Atlas 的使用(案例)Atlas的项目实战Hive元数据增量同步全流程调度查看血缘依赖扩展内容Atlas的简介简介Solr的安装Solr的安装Atlas的安装和配置Atlas的安装和配置Kerberos相关配置若Hadoop集群开启了Kerberos认证,Atlas与Hadoop集群交互之前就需要先进行Kerberos认证。若Hadoop集群未开启Kerberos认证,则本节可跳过。原创 2022-02-06 11:56:40 · 1666 阅读 · 0 评论 -
数仓 用户认证 Kerberos Hive用户认证配置
文章目录前置要求Hadoop集群启动Kerberos认证创建Hive系统用户和Kerberos主体启动hiveserver2Hive Kerberos认证使用说明beeline客户端DataGrip客户端新建Driver新建连接前置要求Hadoop集群启动Kerberos认证按照上述步骤为Hadoop集群开启Kerberos安全认证。创建Hive系统用户和Kerberos主体1,创建系统用户[root@hadoop102 ~]# useradd hive -g hadoop[root@hado原创 2022-02-01 21:25:59 · 2426 阅读 · 3 评论 -
数仓 用户认证 Kerberos 安全集群使用说明
文章目录用户要求访问HDFS集群文件Shell命令web页面提交MapReduce任务用户要求1,具体要求以下使用说明均基于普通用户,安全集群对用户有以下要求:1)集群中的每个节点都需要创建该用户2)该用户需要属于hadoop用户组3)需要创建该用户对应的Kerberos主体2,实操此处以 luanhao 用户为例,具体操作如下1)创建用户(存在可跳过),须在所有节点执行[root@hadoop102 ~]# useradd luanhao [root@hadoop102 ~]# ec原创 2022-02-01 16:50:52 · 3401 阅读 · 0 评论 -
数仓 用户认证 安全模式下启动Hadoop集群
文章目录修改特定本地路径权限修改特定本地路径权限local$HADOOP_LOG_DIRhdfs:hadoopdrwxrwxr-xlocaldfs.namenode.name.dirhdfs:hadoopdrwx------localdfs.datanode.data.dirhdfs:hadoopdrwx------localdfs.namenode.checkpoint.dirhdfs:hadoopdrwx------localyarn.n原创 2022-01-31 17:08:17 · 3647 阅读 · 0 评论 -
数仓 用户认证 Hadoop Kerberos配置
文章目录创建Hadoop系统用户Hadoop Kerberos配置为Hadoop各服务创建Kerberos主体(Principal)修改Hadoop配置文件配置HDFS使用HTTPS安全传输协议配置Yarn使用LinuxContainerExecutor创建Hadoop系统用户为Hadoop开启Kerberos,需为不同服务准备不同的用户,启动服务时需要使用相应的用户。须在所有节点创建以下用户和用户组。User:GroupDaemonshdfs:hadoopNameNode, S原创 2022-01-31 16:23:29 · 2256 阅读 · 0 评论 -
数仓 用户认证 Kerberos 的部署
文章目录Kerberos概述什么是KerberosKerberos术语Kerberos认证原理Kerberos安装安装Kerberos相关服务初始化KDC数据库修改管理员权限配置文件启动Kerberos相关服务创建Kerberos管理员用户Kerberos使用概述Kerberos数据库操作Kerberos认证操作Kerberos概述什么是KerberosKerberos是一种计算机网络认证协议,用来在非安全网络中,对个人通信以安全的手段进行身份认证。这个词又指麻省理工学院为这个协议开发的一套计算机软件原创 2022-01-31 14:50:03 · 4892 阅读 · 0 评论 -
数仓 Zabbix 集成 Grafana
文章目录集成Grafana部署Grafana快速入门集成Zabbix配置数据源集成案例集成Grafana部署Grafana1.下载Grafana安装包官方仓库:https://dl.grafana.com/oss/release/grafana-7.4.3-1.x86_64.rpm国内镜像:https://repo.huaweicloud.com/grafana/7.4.3/grafana-7.4.3-1.x86_64.rpm2.将安装包上传到hadoop102主机的/opt/software路原创 2022-01-29 22:58:29 · 1644 阅读 · 0 评论 -
数仓 Zabbix 创建模板
文章目录创建模板创建模板1)点击配置/模板/创建模板2)配置模板名称/群组3)配置监控项4)配置触发器5)配置动作6)为hadoop103应用模板7)为hadoop104应用模板同上8)测试(1)启动hadoop集群[root@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh(2)停止hadoop集群[root@hadoop102 hadoop-3.1.3]$ sbin/stop-dfs.sh(3)查看报警邮件...原创 2022-01-29 20:02:52 · 1442 阅读 · 0 评论 -
数仓 Zabbix 的使用
文章目录Zabbix的安装Zabbix的使用Zabbix术语主机(Host)监控项(Item)触发器(Trigger)动作(Action)Zabbix实战创建Host创建监控项(Items)创建触发器(Trigger)申请邮箱创建报警媒介类型(Media type)创建动作(Action)测试Zabbix的安装https://blog.csdn.net/weixin_45417821/article/detailsZabbix的使用Zabbix术语主机(Host)一台你想监控的网络设备,用IP或原创 2022-01-29 17:55:43 · 2896 阅读 · 0 评论 -
数仓 即席查询 之 Persto
文章目录Presto简介Presto概念Presto架构Presto优缺点Presto、Impala性能比较Presto安装Presto Server安装Presto命令行Client安装部署LZO说明Presto可视化Client安装Presto优化之查询SQL只选择使用的字段过滤条件必须加上分区字段Group By语句优化Order by时使用Limit使用Join语句时将大表放在左边注意事项字段名引用时间函数不支持INSERT OVERWRITE语法PARQUET格式Presto简介Presto概原创 2022-01-27 23:59:20 · 1734 阅读 · 0 评论 -
数仓 即席查询 之 Kylin 查询
文章目录需求:BI工具集成JDBC代码:Zepplin需求:不同地区下的订单金额数select bp.region_name,sum(sku_num) from dwd_order_detailod join dim_base_province bp on od.province_id=bp.idgroup by bp.region_name;实现每日构建Cube:https://blog.csdn.net/weixin_45417821/article/detailsBI工具集成ht原创 2022-01-27 17:35:11 · 294 阅读 · 0 评论 -
数仓 即席查询 之 Kylin 安装与预计算
文章目录什么是即席查询Kylin简介Kylin 安装和启动Kylin使用创建工程获取数据源创建model构建cube使用进阶什么是即席查询即席查询(Ad Hoc)是用户根据自己的需求,灵活的选择查询条件,系统能够根据用户的选择生成相应的统计报表。即席查询与普通应用查询最大的不同是普通的应用查询是定制开发的,而即席查询是由用户自定义查询条件的。Kylin简介https://blog.csdn.net/weixin_45417821/article/detailsKylin 安装和启动https:/原创 2022-01-27 14:33:05 · 700 阅读 · 0 评论 -
数仓 可视化 (Superset)
文章目录Superset 安装对接 数据源重启Superset数据源配置制作仪表盘创建空白仪表盘创建图表编辑仪表盘Superset实战制作桑基图配置Table配置Chart制作地图配置Table三个需求的可视化结果Superset 安装https://blog.csdn.net/weixin_45417821/article/details/119908752对接 数据源安装依赖(superset) [root@hadoop102 ~]$ conda install mysqlclient说明原创 2022-01-25 16:26:48 · 984 阅读 · 0 评论 -
数仓资源调度 Azkaban 全调度流程
文章目录数据准备编写Azkaban工作流程配置文件Azkaban多Executor模式下注意事项数据准备1)用户行为数据准备(1)修改/opt/module/applog下的application.properties#业务日期mock.date=2020-06-15注意:分发至其他需要生成数据的节点[root@hadoop102 applog]$ xsync application.properties(2)生成数据[root@hadoop102 bin]$ lg.sh注意:生成原创 2022-01-24 21:35:44 · 1748 阅读 · 1 评论 -
数仓资源调度 Azkaban 的 安装 和 测试
文章目录Azkaban准备工作Azkaban 部署Azkaban 安装HelloWold 测试依赖测试和重试测试Java 作业测试条件工作流测试定时执行测试邮件报警测试电话报警测试Azkaban多Executor模式注意事项创建MySQL数据库和表Sqoop导出脚本Azkaban准备工作Azkaban 部署WebExecutorhadoop102√√hadoop103√hadoop104√Azkaban 安装https://blog.csdn.ne原创 2022-01-24 13:35:40 · 552 阅读 · 0 评论 -
数仓搭建 ADS层(二)
文章目录订单主题订单统计各地区订单统计优惠券主题优惠券统计活动主题活动统计ADS层业务数据导入脚本订单主题订单统计该需求包含订单总数,订单总金额和下单总人数。1.建表语句DROP TABLE IF EXISTS ads_order_total;CREATE EXTERNAL TABLE `ads_order_total` ( `dt` STRING COMMENT '统计日期', `recent_days` BIGINT COMMENT '最近天数,1:最近1天,7:最近7天,30:最近原创 2021-11-02 23:19:44 · 240 阅读 · 0 评论 -
数仓搭建 ADS层(一)
文章目录建表说明访客主题访客统计路径分析用户主题用户统计用户变动统计用户行为漏斗分析用户留存率商品主题商品统计品牌复购率建表说明ADS层不涉及建模,建表根据具体需求而定。访客主题访客统计该需求为访客综合统计,其中包含若干指标,以下为对每个指标的解释说明。指标说明对应字段访客数统计访问人数uv_count页面停留时长统计所有页面访问记录总时长,以秒为单位duration_sec平均页面停留时长统计每个会话平均停留时长,以秒为单位avg_duration原创 2021-11-02 20:26:48 · 2144 阅读 · 0 评论 -
数仓搭建 DWT 层
文章目录访客主题用户主题商品主题优惠券主题活动主题地区主题DWT层首日数据导入脚本DWT层每日数据导入脚本访客主题1)建表语句DROP TABLE IF EXISTS dwt_visitor_topic;CREATE EXTERNAL TABLE dwt_visitor_topic( `mid_id` STRING COMMENT '设备id', `brand` STRING COMMENT '手机品牌', `model` STRING COMMENT '手机型号',原创 2021-11-02 14:10:36 · 324 阅读 · 0 评论 -
DWS层 (五)其他主题
文章目录访客主题活动主题地区主题访客主题1)建表语句DROP TABLE IF EXISTS dws_visitor_action_daycount;CREATE EXTERNAL TABLE dws_visitor_action_daycount( `mid_id` STRING COMMENT '设备id', `brand` STRING COMMENT '设备品牌', `model` STRING COMMENT '设备型号', `is_new` STRING原创 2021-11-01 19:02:50 · 149 阅读 · 0 评论 -
DWS层 (四)优惠券主题
文章目录优惠券主题优惠券主题1)建表语句DROP TABLE IF EXISTS dws_coupon_info_daycount;CREATE EXTERNAL TABLE dws_coupon_info_daycount( `coupon_id` STRING COMMENT '优惠券ID', `get_count` BIGINT COMMENT '被领取次数', `order_count` BIGINT COMMENT '被使用(下单)次数', `order_原创 2021-11-01 18:57:12 · 142 阅读 · 0 评论 -
DWS层 (三)商品主题
文章目录商品主题商品主题1)建表语句DROP TABLE IF EXISTS dws_sku_action_daycount;CREATE EXTERNAL TABLE dws_sku_action_daycount( `sku_id` STRING COMMENT 'sku_id', `order_count` BIGINT COMMENT '被下单次数', `order_num` BIGINT COMMENT '被下单件数', `order_activity_c原创 2021-11-01 18:52:16 · 197 阅读 · 0 评论 -
DWS层 (二)用户主题
文章目录访客主题用户主题DWS层分区DWS层表装载访客主题1)建表语句DROP TABLE IF EXISTS dws_visitor_action_daycount;CREATE EXTERNAL TABLE dws_visitor_action_daycount( `mid_id` STRING COMMENT '设备id', `brand` STRING COMMENT '设备品牌', `model` STRING COMMENT '设备型号', `原创 2021-11-01 18:48:14 · 343 阅读 · 0 评论 -
DWS层 (一)函数相关
文章目录nvl函数日期处理函数复杂数据类型定义nvl函数1)基本语法NVL(表达式1,表达式2)如果表达式1为空值,NVL返回值为表达式2的值,否则返回表达式1的值。该函数的目的是把一个空值(null)转换成一个实际的值。其表达式的值可以是数字型、字符型和日期型。但是表达式1和表达式2的数据类型必须为同一个类型。2)案例实操hive (gmall)> select nvl(1,0);1hive (gmall)> select nvl(null,"hello");hello原创 2021-11-01 18:38:28 · 560 阅读 · 0 评论 -
DWD层 (业务数据 三)
文章目录DWD层业务数据首日装载脚本DWD层业务数据每日装载脚本DWD层业务数据首日装载脚本1)编写脚本(1)在/root/bin目录下创建脚本ods_to_dwd_db_init.sh[root@hadoop102 bin]$ vim ods_to_dwd_db_init.sh在脚本中填写如下内容#!/bin/bashAPP=gmallif [ -n "$2" ] ;then do_date=$2else echo "请传入日期参数" exitfi dwd_原创 2021-11-01 15:16:22 · 163 阅读 · 0 评论 -
DWD层 (业务数据 二)
文章目录退款事实表(累积型快照事实表)订单事实表(累积型快照事实表)DWD层业务数据首日装载脚本DWD层业务数据每日装载脚本退款事实表(累积型快照事实表)1)建表语句DROP TABLE IF EXISTS dwd_refund_payment;CREATE EXTERNAL TABLE dwd_refund_payment ( `id` STRING COMMENT '编号', `user_id` STRING COMMENT '用户ID', `order_id` STRI原创 2021-11-01 15:12:20 · 266 阅读 · 0 评论 -
DWD层 (业务数据 一)
业务数据方面DWD层的搭建主要注意点在于维度建模。文章目录评价事实表(事务型事实表)订单明细事实表(事务型事实表)退单事实表(事务型事实表)加购事实表(周期型快照事实表,每日快照)收藏事实表(周期型快照事实表,每日快照)优惠券领用事实表(累积型快照事实表)支付事实表(累积型快照事实表)退款事实表(累积型快照事实表)订单事实表(累积型快照事实表)DWD层业务数据首日装载脚本DWD层业务数据每日装载脚本评价事实表(事务型事实表)1)建表语句DROP TABLE IF EXISTS dwd_comment原创 2021-11-01 15:09:49 · 481 阅读 · 0 评论 -
DWD层 (用户行为日志)
数仓搭建-DWD层1)对用户行为数据解析。2)对业务数据采用维度模型重新建模。文章目录日志解析思路get_json_object函数使用启动日志表页面日志表动作日志表曝光日志表错误日志表DWD层用户行为数据加载脚本日志解析思路1)日志结构回顾(1)页面埋点日志(2)启动日志2)日志解析思路get_json_object函数使用1)数据[{"name":"大郎","sex":"男","age":"25"},{"name":"西门庆","sex":"男","age":"47"}]原创 2021-11-01 13:24:08 · 1697 阅读 · 2 评论 -
数仓搭建 DIM 层
文章目录商品维度表(全量)1,建表语句2,分区规划3,数据装载异常问题优惠券维度表(全量)1,建表语句2,分区规划3,数据装载活动维度表(全量)1,建表语句2,分区规划3,数据装载地区维度表(特殊)1,建表语句时间维度表(特殊)1, 建表语句2,数据装载用户维度表(拉链表)1,拉链表概述制作拉链表1,建表语句2,分区规划3,数据装载DIM层首日数据装载脚本1,编写脚本2,脚本使用DIM层每日数据装载脚本1,编写脚本商品维度表(全量)1,建表语句DROP TABLE IF EXISTS dim_sku_原创 2021-10-23 19:23:19 · 713 阅读 · 0 评论 -
数仓搭建 ODS 层
1q原创 2021-10-22 19:41:34 · 902 阅读 · 7 评论 -
数仓环境搭建
文章目录Hive环境搭建Hive引擎简介Hive on Spark配置Yarn配置增加ApplicationMaster资源比例数仓开发环境启动HiveServer2配置DataGrip连接测试使用数据准备用户行为日志业务数据Hive环境搭建Hive引擎简介Hive引擎包括:默认MR、tez、sparkHive on Spark:Hive既作为存储元数据又负责SQL的解析优化,语法是HQL语法,执行引擎变成了Spark,Spark负责采用RDD执行。Spark on Hive : Hive只作为存原创 2021-10-22 11:27:15 · 481 阅读 · 0 评论 -
数据仓库建模 ★★★
文章目录ODS层DIM层和DWD层DWS层与DWT层ADS层ODS层1)HDFS用户行为数据2)HDFS业务数据3)针对HDFS上的用户行为数据和业务数据,我们如何规划处理?(1)保持数据原貌不做任何修改,起到备份数据的作用。(2)数据采用压缩,减少磁盘存储空间(例如:原始数据100G,可以压缩到10G左右)(3)创建分区表,防止后续的全表扫描DIM层和DWD层DIM层DWD层需构建维度模型,一般采用星型模型,呈现的状态一般为星座模型。维度建模一般按照以下四个步骤:选择业务过程→声原创 2021-10-21 21:39:40 · 193 阅读 · 0 评论 -
数据仓库理论
文章目录范式理论范式概念函数依赖三范式区分关系建模与维度建模关系建模维度建模维度表和事实表(重点)维度表事实表维度模型分类范式理论范式概念1)定义数据建模必须遵循一定的规则,在关系建模中,这种规则就是范式。2)目的采用范式,可以降低数据的冗余性。为什么要降低数据冗余性?(1)十几年前,磁盘很贵,为了减少磁盘存储。(2)以前没有分布式系统,都是单机,只能增加磁盘,磁盘个数也是有限的(3)一次修改,需要修改多个表,很难保证数据一致性3)缺点范式的缺点是获取数据时,需要通过Join拼接出最原创 2021-10-21 19:56:57 · 159 阅读 · 0 评论 -
数据仓库分层
文章目录为什么要分层数据集市与数据仓库概念数仓命名规范表命名脚本命名表字段类型为什么要分层https://blog.csdn.net/weixin_45417821/article/details/120370199数据集市与数据仓库概念数仓命名规范表命名1,ODS层命名为ods_表名2,DIM层命名为dim_表名3,DWD层命名为dwd_表名4,DWS层命名为dws_表名5,DWT层命名为dwt_表名6,ADS层命名为ads_表名7,临时表命名为tmp_表名脚本命名1,数据原创 2021-10-21 16:23:06 · 165 阅读 · 0 评论 -
数据环境准备
文章目录Hive安装部署Hive元数据配置到MySQL拷贝驱动启动Hive初始化元数据库启动Hive客户端Hive安装部署(1)把apache-hive-3.1.2-bin.tar.gz上传到Linux的/opt/software目录下(2)解压apache-hive-3.1.2-bin.tar.gz到/opt/module/目录下面[root@hadoop102 software]$ tar -zxvf /opt/software/apache-hive-3.1.2-bin.tar.gz -C /原创 2021-10-21 12:48:24 · 243 阅读 · 0 评论 -
数仓业务数据采集模块
文章目录MySQL安装安装包准备安装MySQL配置MySQL业务数据生成连接MySQL建表语句生成业务数据Sqoop安装下载并解压修改配置文件拷贝JDBC驱动Sqoop基本使用同步策略全量同步策略增量同步策略新增及变化策略特殊策略业务数据导入HDFS分析表同步策略业务数据首日同步脚本业务数据每日同步脚本项目经验MySQL安装安装包准备1)将安装包和JDBC驱动上传到/opt/software,共计6个01_mysql-community-common-5.7.16-1.el7.x86_64.rpm原创 2021-10-20 23:20:28 · 587 阅读 · 1 评论 -
电商业务简介
文章目录电商业务流程电商常识SKU和SPU平台属性和销售属性电商系统表结构1,活动信息表(activity_info)2,活动规则表(activity_rule)3,活动商品关联表(activity_sku)4,平台属性表(base_attr_info)5,平台属性值表(base_attr_value)6,一级分类表(base_category1)7,二级分类表(base_category2)8,三级分类表(base_category3)9,字典表(base_dic)10,省份表(base_province原创 2021-10-20 19:16:04 · 1733 阅读 · 0 评论 -
数仓组件Flume
文章目录采集日志FlumeFlume安装部署项目经验之Flume组件选型日志采集Flume配置Flume拦截器测试Flume-Kafka通道日志采集Flume启动停止脚本消费Kafka数据Flume项目经验之Flume组件选型消费者Flume配置Flume时间戳拦截器消费者Flume启动停止脚本项目经验之Flume内存优化采集通道启动/停止脚本采集日志FlumeFlume安装部署安装地址(1) Flume官网地址:http://flume.apache.org/(2)文档查看地址:http://f原创 2021-10-20 18:20:26 · 215 阅读 · 0 评论 -
数仓中常规组件安装
包含Hadoop ,Zookeeper,Kafka组件安装文章目录HadoopHadoop部署配置集群配置历史服务器分发Hadoop群起集群Hadoop群起脚本项目经验之HDFS存储多目录集群数据均衡项目经验之支持LZO压缩配置项目经验之LZO创建索引项目经验之基准测试项目经验之Hadoop参数调优Zookeeper安装与启停脚本Kafka安装启停脚本Kafka常用命令项目经验之Kafka机器数量计算项目经验之Kafka压力测试项目经验值Kafka分区数计算常见问题及解决方案HadoopHadoop.原创 2021-10-20 13:19:07 · 883 阅读 · 0 评论 -
数仓 模拟数据
前言,数据文件在尚硅谷公众号找数仓4.0文章目录使用说明集群日志生成脚本使用说明1)将application.yml、gmall2020-mock-log-2021-01-22.jar、path.json、logback.xml上传到hadoop102的/opt/module/applog目录下(1)创建applog路径[root@hadoop102 module]$ mkdir /opt/module/applog(2)上传文件application.yml到/opt/module/app.原创 2021-10-20 06:55:20 · 792 阅读 · 1 评论 -
数仓 服务器和JDK准备
文章目录编写集群分发脚本xsyncSSH无密登录配置JDK准备编写集群分发脚本xsynchttps://blog.csdn.net/weixin_45417821/article/details/119893893SSH无密登录配置https://blog.csdn.net/weixin_45417821/article/details/117390745JDK准备1)卸载现有JDK(3台节点)[root@hadoop102 opt]# sudo rpm -qa | grep -i java原创 2021-10-19 23:07:24 · 162 阅读 · 0 评论