- 博客(13)
- 收藏
- 关注
原创 数仓搭建(四)
数仓搭建(四)文章目录数仓搭建(四)一、数仓理论1.1 表的分类1.1.1 实体表1.1.2 维度表1.1.3 事务型事实表1.1.4 周期型事实表1.2 同步策略1.2.1 实体表同步策略1.2.2 维度表同步策略1.2.3 事务型事实表同步策略1.2.4 周期型事实表同步策略1.3 范式理论1.3.1 范式概念1.3.2 函数依赖1.3.3 三范式第一范式:属性不可分割第二范式:不能存在部分函数依赖第三范式: 不能存在传递函数依赖1.4 关系建模和维度建模1.5 雪花模型、星型模型和星座模型二、Sqo
2021-07-25 22:16:34
450
原创 数仓搭建(三)
数仓搭建(三)文章目录数仓搭建(三)一、业务知识准备1.1 业务术语1.2 系统函数1.2.1 collect_set函数1.2.2 日期处理函数(datediff)1.3 需求实施流程二、需求分析2.1 需求一:用户活跃主题2.1.1 DWS层2.1.2 ADS层2.2 需求二:用户新增主题2.2.1 DWS层(每日新增设备明细表)2.2.2 ADS层(每日新增设备表)2.3 需求三:用户留存主题2.3.1 需求目标2.3.2 DWS层2.3.3 ADS层2.4 新数据准备2.5 需求四:沉默用户数2.
2021-07-18 12:33:56
1415
原创 数仓搭建(二)
文章目录数仓搭建一、第一层采集通道二、第二层采集通道三、MySql的安装1.检查是否已经安装了mysql的一些软件防止冲突2.安装3.配置root用户密码四、双向主从的MySQL搭建1.到/usr/share/mysql下找mysql服务端配置的模版2.配置3.重启4.在主机上使用root@localhost登录5.查看主机binlog文件的最新位置6.在从机上执行以下语句7.在从机上开启同步线程五、hive安装配置六、Tez的安装1.解压2.在Hive的/opt/module/hive/conf下面创建一
2021-07-12 11:31:54
675
原创 数仓搭建(一)
数仓搭建(一)文章目录数仓搭建(一)一、准备1.安装hadoop2.在hadoop103的bin目录中添加2个脚本二、hadoop LZO压缩1.解压2.同步3.修改配置4.同步二、Zookeeper安装1.传输2.解压3.创建datas目录4.改名5.编辑zoo.cfg6.创建myid文件7.分发8.编写zookeeper的启动脚本三、Flume安装1.解压2.分发四、Kafka安装1.解压2.修改配置文件3.分发4.编写启动脚本kf四、拦截器,第一层采集通道1.创建目录myagents2.在myage
2021-07-03 18:07:52
772
1
原创 完全分布式运行模式
完全分布式运行模式文章目录完全分布式运行模式一、虚拟机准备1.1模板虚拟机环境准备1.2 克隆三台虚拟机1.3 在 **hadoop102** 安装 **JDK**1.4 在 hadoop102 安装 Hadoop二、编写集群分发脚本 xsync2.1 scp(secure copy)安全拷贝2.2 **rsync** 远程同步工具2.3 xsync 集群分发脚本三、SSH 无密登录配置3.1 配置 ssh3.2 无密钥配置四、集群配置4.1 集群部署规划4.2 配置文件说明4.3 配置集群4.4 在集
2021-05-24 13:56:56
732
1
原创 Linux
Linux文章目录Linux一、文件和目录结构1.1文件1.2目录结构二、VI/VIM编辑器2.1是什么2.2三种模式2.2.1一般模式2.2.2编辑模式2.2.3命令模式三、系统管理操作3.1服务管理3.1.1临时后台服务管理3.1.2设置后台服务的自启配置3.2关机重启命令四、常用基本命令4.1帮助命令4.1.1man 获得帮助信息4.1.2help获得shell内置命令的帮助信息4.1.3常用快捷键4.2文件目录类4.2.1 pwd命令:显示当前工作目录的绝对路径4.2.2 ls命令:列出目录的内容
2021-05-16 21:25:35
326
原创 2021-05-15
文章目录scala day07偏函数异常泛型泛型类和泛型函数泛型的上下界上下文界定scala day07偏函数package com.gc.scala.day07/** * Author guochao * Date 2021/5/15 */object Pattern2 { def main(args: Array[String]): Unit = { val list = List(10, 20, 1, "aa", false) /*val r = list.fi
2021-05-15 15:31:31
135
原创 2021-05-09
文章目录Scala day06sortsortedsortBysortWith模式匹配基本语法模式守卫模式匹配的值模式匹配类型匹配变量和常量匹配类型匹配数组匹配元组List匹配匹配对象样例类Scala day06sortsortedpackage com.gc.scala.day06/** * Author guochao * Date 2021/5/9 */class User(val age: Int, val name: String) extends Ordered[User]
2021-05-09 12:03:59
441
原创 2021-05-08
文章目录Scala day05集合数组不可变数组可变数组不可变数组与可变数组的转换多维数组List不可变List可变ListSet不可变Set可变Set(mutable.Set)Map不可变Map可变Map元组集合基本属性和常用操作衍生集合集合计算初级函数集合计算高级函数队列Scala day05集合数组不可变数组val arr: Array[Int] = new Array[Int](10)import scala.collection.mutable.ArrayBufferobject
2021-05-08 17:47:45
380
原创 2021-05-08
Scala day04伴生类和伴生对象的用法:静态工厂package com.gc.scala1015day04/** * Author guochao * Date 2021/5/8 */object Factory1 { def main(args: Array[String]): Unit = { println(Human.getHuman("黑色")) println(Human.getHuman("黑色")) }}object Human{
2021-05-08 14:58:36
122
原创 2021-05-02
文章目录day03递归和尾递归惰性求值面对对象定义类属性构造器构造器参数导包权限修饰符继承抽象类单例对象及伴生对象day03递归和尾递归一个函数/方法在函数/方法体内又调用了本身,我们称之为递归调用在递归的时候,只有递归,没有任何运算,这就是尾递归阶乘递归算法1) 方法调用自身2) 方法必须要有跳出的逻辑3) 方法调用自身时,传递的参数应该有规律4) scala中的递归必须声明函数返回值类型object TestFunction { def main(args: Arra
2021-05-02 13:33:48
120
原创 2021-04-25
文章目录Scala day02流程控制(While,For)While循环For循环范围数据循环方式1(to)范围数据循环方式2(until)循环守卫循环步长引入变量循环返回值函数函数定义方法定义函数和方法的区别方法转换成函数(_)函数声明函数参数高阶函数匿名函数闭包Scala day02流程控制(While,For)While循环与if语句不同,while语句没有返回值,即整个while语句的结果是Unit类型()任何的语法结构都有值赋值语句的值也是Unitpackage com.gc.
2021-04-25 11:52:14
143
原创 2021-04-18
文章目录Scala day01注释变量和常量标识符的命名字符串的输出和字符串插值多行字符串从键盘输入数据数据类型数据类型转换运算符分支结构while循环Scala day01注释package com.gc.scala.day01/** * 文档注释 */object HelloWord { def main(args: Array[String]): Unit = { System.out.println("hello") println("hello world")
2021-04-18 17:14:08
197
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅