随笔分类 -  大数据开发

1
摘要:开发环境 创建项目 创建 Maven 项目 gmallrealtime 删除当前项目的 src 目录并创建 subgmallrealtime 模块 在主 pom 文件中导入依赖 <properties> <java.version>1.8</java.version> <m 阅读全文
posted @ 2023-02-18 12:30 FireOnFire 阅读(124) 评论(0) 推荐(0) 编辑
摘要:数仓建模理论 范数理论 函数依赖 完全函数依赖 设 X,Y 是关系 R 的两个属性集合,XX 的真子集,存在 XY,但是对每一个 X 都有 X!Y,则称 Y 完全函数依赖于 X。 例如:学号和课程可以推断 阅读全文
posted @ 2023-02-15 19:37 FireOnFire 阅读(106) 评论(0) 推荐(0) 编辑
摘要:数据来源层 ODS(Operation Data Store):数据基本上从源表中拉过来,经过抽取、洗净、传输(ETL)后装入本层,大体上按源业务的分类方式而分类的。 数据仓库层 DW(Data Warehouse):从 ODS 层中获得的数据按照主题建立各种数据模型。 明细层 DWD(Data W 阅读全文
posted @ 2023-02-11 21:30 FireOnFire 阅读(61) 评论(0) 推荐(0) 编辑
摘要:MySQL 安装 安装包准备 上传安装包和 JDBC 驱动。 (base) quanjunyi@Tys-MacBook-Pro ~ % docker cp 01_mysql-community-common-5.7.16-1.el7.x86_64.rpm cluster-master:/opt/ ( 阅读全文
posted @ 2023-01-18 20:55 FireOnFire 阅读(116) 评论(0) 推荐(1) 编辑
摘要:集群规划 | | cluster-master | cluster-slave1 | cluster-slave2 | cluster-slave3 | | | | | | | | IP | 172.20.0.2 | 172.20.0.3 | 172.20.0.4 | 172.20.0.5 | | 阅读全文
posted @ 2023-01-13 20:25 FireOnFire 阅读(364) 评论(0) 推荐(0) 编辑
摘要:基本概念 CEP CEP 就是复杂事件处理(Complex Event Processing)的缩写。而 Flink CEP 就是 Flink 实现的一个用于复杂事件处理的库。 具体的处理过程是,把事件流中的一个个简单事件,通过一定的规则匹配组合起来,这就是复杂事件,然后基于这些满足规则的一组组复杂 阅读全文
posted @ 2023-01-05 00:03 FireOnFire 阅读(238) 评论(0) 推荐(0) 编辑
摘要:快速上手 引入依赖 要在代码中使用 TableAPI,必须引入相关的依赖。 这里的依赖是一个 Java 的“桥接器”,主要就是负责 TableAPI 和下层 DataStream API的连接支持,按照不同的语言分为 Java 版和 Scala 版。 <dependency> <groupId>or 阅读全文
posted @ 2023-01-04 00:11 FireOnFire 阅读(121) 评论(0) 推荐(0) 编辑
摘要:检查点 检查点的保存 最理想的情况是,每处理完一个数据就保存一下当前的状态,但是这样处理效率不高。 周期性的触发保存:每隔一段时间去做一次存档,间隔时间可以进行设置。 保存的时间点:当所有任务都恰好处理完一个相同的输入数据的时候,将它们的状态保存下来。如果出现故障,我们恢复到之前保存的状态,故障时正 阅读全文
posted @ 2023-01-03 15:22 FireOnFire 阅读(97) 评论(0) 推荐(0) 编辑
摘要:Flink 中的状态 在流处理中,数据是连续不断到来的。每个任务进行计算处理时,可以基于当前数据直接转换得到输出结果,也可以依赖一些其他数据。这些由一个任务维护,并且用来计算输出结果的所有数据,就叫作这个任务的状态。 有状态算子 算子任务可以分为无状态和有状态。 无状态的算子任务只需要观察每个独立事 阅读全文
posted @ 2023-01-01 21:30 FireOnFire 阅读(118) 评论(0) 推荐(0) 编辑
摘要:分流 将一条数据流拆分成完全独立的两条、甚至多条流。基于一个 DataStream,得到完全平等的多个子 DataStream。 SingleOutputStreamOperator<Event> stream = env.addSource(new ClickSource()) .assignTi 阅读全文
posted @ 2022-12-31 00:34 FireOnFire 阅读(140) 评论(0) 推荐(0) 编辑
摘要:基本处理函数 函数功能 处理函数主要是定义数据流的转换工作。 处理函数提供了一个“定时服务”,可以通过它访问流中的事件、时间戳、水位线,甚至可以注册“定时事件”。继承了 AbstractRichFunction 抽象类, 所以拥有富函数类的所有特性,同样可以访问状态和其他运行时信息。处理函数还可以直 阅读全文
posted @ 2022-12-30 20:54 FireOnFire 阅读(110) 评论(0) 推荐(0) 编辑
摘要:时间语义 在事件发生之后,生成的数据被收集起来,首先进入分布式消息队列,然后被 Flink 系统中的 Source 算子读取,进而向下游的转换算子(窗口算子)传递,最终由窗口算子进行计算处理。 处理时间(Processing Time):执行处理操作的机器系统时间,是最简单的时间语义。 事件时间(E 阅读全文
posted @ 2022-12-23 15:02 FireOnFire 阅读(199) 评论(0) 推荐(0) 编辑
摘要:执行环境 获取的执行环境是 StreamExecutionEnvironment 类的对象。在代码中创建执行环境的方法,就是调用这个类的静态方法。 getExecutionEnvironment 根据上下文直接得到正确的结果: 如果程序是独立运行的,返回一个本地执行环境。 如果创建了 jar 包,从 阅读全文
posted @ 2022-12-21 20:47 FireOnFire 阅读(63) 评论(0) 推荐(0) 编辑
摘要:概述 SparkStreaming 是用于流式数据的处理。数据输入后可以用高级抽象原语(就是 SparkCore 中的算子,这里只是为了区分),如 map、reduce、window 等进行计算。 SparkStreaming 使用离散化流(discretized stream)作为抽象表示(DSt 阅读全文
posted @ 2022-10-23 22:35 FireOnFire 阅读(84) 评论(0) 推荐(0) 编辑
摘要:DataFrame DataFrame 是一种以 RDD 为基础的分布式数据集,类似于二维表格。与 RDD 的区别在于,前者带有 schema 元信息,即 DataFrame。 DataFrame 也是懒执行的,但性能上比 RDD 要高。因为优化了执行计划,查询计划通过 Spark catalyst 阅读全文
posted @ 2022-10-22 12:48 FireOnFire 阅读(53) 评论(0) 推荐(0) 编辑
摘要:数据说明 用户有四种行为:搜索、点击、下单、支付。 每行数据用下划线分割不同含义的数据。 每行数据表示用户的一种行为。 如果搜索关键字为 null,这行数据就不是搜索数据。 如果点击的品类 ID 和产品 ID 为-1,这行数据就不是点击数据。 一次可以下单多个商品,所以品类 ID 和产品 ID 可以 阅读全文
posted @ 2022-10-08 22:42 FireOnFire 阅读(78) 评论(0) 推荐(0) 编辑
摘要:累加器 累加器(分布式共享只写变量):用来把 Executor 端变量信息聚合到 Driver 端。在 Driver 程序中定义的变量,在 Executor 端的每个 Task 都会得到这个变量的一份新的副本,每个 Task 更新这些副本的值之后,会传回 Driver 端进行 merge。 对 li 阅读全文
posted @ 2022-10-05 15:00 FireOnFire 阅读(66) 评论(0) 推荐(0) 编辑
摘要:概念与特性 RDD (Resilient Distributed Dataset)弹性分布式数据集,是 Spark 中最基本的数据处理模型。 弹性 存储:内存和磁盘的自动切换 容错:数据丢失可以自动恢复 计算:计算出错重试机制 分片:可根据需要重新分片 分布式:数据存储在大数据集群的不同节点上 数据 阅读全文
posted @ 2022-10-02 22:26 FireOnFire 阅读(87) 评论(0) 推荐(0) 编辑
摘要:IO 原理 IO 流主要分为字节流和字符流。 字节流可以处理任何类型的数据,如图片,视频等。 字符流只能处理字符类型的数据。 字节文件操作流 InputStream inputStream = new FileInputStream("path"); int i = 0; // 一次读取一个字节 w 阅读全文
posted @ 2022-09-28 18:34 FireOnFire 阅读(52) 评论(0) 推荐(0) 编辑
摘要:Scala 特性 基于 JVM:可以与 Java 混合编程,且可相互调包。 类型推测:不需要显式定义数据类型,var 表示变量,val 表示常量。 并发和分布式(Actor,类似 Java 中的多线程 Thread)。 Trait 特性:类似于 Java 中的 interfaces 和 ab 阅读全文
posted @ 2022-09-24 18:57 FireOnFire 阅读(60) 评论(0) 推荐(0) 编辑

1
点击右上角即可分享
微信分享提示