2024-04-13 13:57:37    19    0    0
使用Table API处理无界数据流 Written by 黄俊仁,2024/04/13 如下示例代码从自定义数据源 NBUSource 接收实时字符串流,并将这个流转换成表(Table)。它使用 Table API 执行一个查询,筛选出包含字母 't' 的所有字符串。最后,筛选后的结果被转换回 DataStream<Row> 。 package org.nbubigdata.flink;import org.apache.flink.streaming.api.datastream.DataStream;import org.apache.flink.s
2024-04-13 13:58:35    22    0    0
使用Table API处理有界数据流 Written by 黄俊仁,2024/04/13 首先创建一个Java的POJO类NBUOrder,如下所示: package org.nbubigdata.flink.Pojo;public class NBUOrder { //定义类的属性 public Long id; public String product; public int amount; //无参构造方法 public NBUOrder() { } //有参构造方法 public NBUOrder(Lon
2024-04-13 13:59:17    32    0    0
使用WindowAll定义全局窗口 Written by 黄俊仁,2024/04/13 如下示例代码在一个全局窗口(不分组)的基础上计算每个窗口内接收到的单词总数。它首先从自定义数据源 NBUSource 中接收字符串流,然后利用 Tokenizer 类将每条字符串拆分成单词,并生成包含单词和计数(初始化为1)的元组。这些元组随后通过 windowAll 方法被收集进一个固定时间长度(5秒)的滚动窗口中,窗口内的所有元素计数被累加起来,以计算出该时间段内的单词总数。 package org.nbubigdata.flink;import org.apache.flin
2024-04-13 14:00:04    35    0    0
使用Window对无界数据流进行时间分窗 Written by 黄俊仁,2024/04/13 如下示例用于统计从自定义数据源 NBUSource 中接收到的单词出现的次数。通过使用 Splitter 类实现的 flatMap 方法,程序将接收到的字符串拆分成单词,并为每个单词创建一个包含单词和计数 1 的元组。接着,它通过 keyBy 方法按单词分组,并应用了一个基于时间的窗口(每 5 秒一个窗口),在这个窗口内对每个单词的出现次数进行累加。 package org.nbubigdata.flink;import org.apache.flink.api.common
2024-04-13 13:53:04    33    0    0
使用keyBy对无界数据流进行分区 Written by 黄俊仁,2024/04/13 如下示例实现了一个动态单词计数功能。程序从自定义数据源 NBUSource 接收一个连续的字符串流,然后通过实现的 Tokenizer 类将每个字符串拆分成单词,并为每个单词生成一个包含单词本身和初始计数 1 的元组。这些元组随后根据单词(元组的第一个元素)进行分组,对每个组内的计数(元组的第二个元素)进行累加,以此计算出每个单词在流中出现的总次数。 package org.nbubigdata.flink;import org.apache.flink.api.common.fu
2024-04-13 14:01:29    31    0    0
多流处理 Written by 黄俊仁,2024/04/13 这个程序展示了如何在 Apache Flink 中使用 connect 操作符将两个不同的数据流连接起来,并通过 CoMapFunction 分别对这两个流的元素进行处理。每个流的数据通过 NBUSource 产生,并分别加上前缀 "Stream1: " 和 "Stream2: " 来区分来源,最后将处理过的数据统一输出到控制台。这个示例演示了 Flink 处理多源数据流并在单个作业中应用不同逻辑的能力。 package org.nbubigdata.flink;import org.apache.flin
2022-10-13 22:47:22    204    0    0
实验1、数据定义 1.1 实验目的 熟悉SQL的数据定义语言,能够理解并熟练地使用SQL语句来创建、修改和删除数据库、模式和基本表,创建和取消索引,特别是各种参数的具体含义和使用方法。掌握SQL 语句常见语法错误的调试方法。 1.2 实验内容 在DataStudio的SQL终端中使用CREATE语句创建数据库Db_Uni,该数据库为nbuuser所属。 在DataStudio的SQL终端中使用SQL语句创建SCHEMA并授权给用户nbuuser。 在DataStudio的SQL终端中使用CREATE语句创建基本表。 更改基本表的定义: 增加列,删除列,修改列的
2022-10-13 22:47:22    142    0    0
实验2、SQL的数据查询 2.1 实验目的 熟悉SQL语句的数据查询语言,能够SQL语句对数据库进行单表查询、连接查询、嵌套查询、集合查询和分组统计查询。 2.2 实验内容 实验内容主要是对数据库的数据进行查询操作,包括如下四类查询方式: 1. 单表查询 * 查询的目标表达式为所有列、指定的列或指定的列的运算三种不同。 * 使用DISTINCT保留字消除重复行。 * 对查询结果排序和分组。 * 集合分组使用集函数进行各项统计。 2. 连接查询 * 笛卡儿连接和等值连接。 * 自连接。 * 外连接 * 复合条件连接。 * 多表连接。 3.
2022-10-13 23:41:42    99    0    0
实验3、数据更新 3.1 实验目的 熟悉数据库的数据更新操作,能够使用SQL语句对数据库进行数据的插入、修改与删除操作。 3.2 实验内容 在本实验中,主要内容是如何用SQL语句对数据进行更新。 使用INSERT INTO语句插入数据,包括插入一个元组或将子查询的结果插入到数据库中两种方式。 使用SELECT INTO语句,产生一个新表并插入数据。 使用UPDATE语句可以修改指定表中满足WHERE子句条件的元组,有三种修改的方式:修改某一个元组的值;修改多个元组的值;带子查询地修改语句。 使用DELETE语句删除数据:删除某一个元组的值;删除多个元组的值;带子
2022-10-13 23:42:08    118    0    0
实验4、SQL的视图 4.1 实验目的 熟悉SQL支持的有关视图的操作,能够熟练使用SQL语句来创建需要的视图,对视图进行查询和删除视图。定义数据库外模式,并能使用所创建的视图实现数据管理。理解和掌握视图消解执行原理,掌握可更新视图和不可更新视图的区别。理解物化视图。 4.2 实验内容 定义常见的视图形式,包括: 行列子集视图 WITH CHECK OPTION的视图 基于多个基表的视图 基于视图的视图 带表达式的视图 分组视图 全量物化视图 通过实验考察WITH CHECK OPTION这一语句在视图定义后产生的影响,包括对修改操作、删除操作、插入操作的影响