首页 > 编程知识 正文

小爱语音引擎,大数据技术原理与应用实验一

时间:2023-05-05 18:28:27 阅读:53026 作者:1751

批处理和流处理背景:

批处理进行批量处理

从图中可以看出,有调度延迟和处理延迟。

流处理是进行流处理

可以满足低延迟的需求。

场景的批处理帧包括:贴图、空格键核心、插入器(nucleon )和Flink Dataset。

流计算框架包括事件驱动的Storm Core、Flink DataStream、Slipstream和微批处理

Slipstream概述Slipstream是一个实时流计算引擎和分布式流SQL引擎,它融合了事件驱动和微批处理。

SlipStream基本概念stream (数据流) :从Kafka等获取的数据。

流任务(stream job )计算一个或多个流并将结果写入一个表的任务。 需要落盘的过程。

APP :与业务逻辑相关的流作业的集合。

数据流为Input Stream(输入流)Derived Stream(衍生流)

首先,输入流是直接接收数据源发送来的数据而形成的流。

在微批处理模式下,Input Stream按时间分为几个小块进行处理。 也就是说,以由几个单位时间构成的时间间隔,将接收到的数据存储在一个块中。 块的时间长度称为Batch Duration。

在事件驱动模式下,将Input Stream接收到一个数据作为事件,一个接一个地读取来进行处理。

衍生流是流SQL语句对现有流的变形。 流的变形通常通过CsAs(createstreamasselect )语句进行。

在微批处理模式下,从现有Batch计算中获得新Batch的过程。

对单个batch的变形(单个batch变形)是计算流的单个batch以获得新batch的过程,如下图所示。

计算窗口变形(多Batch变形) :一个时间窗口)中的多个Batch以获得新Batch的过程。

例如,对于双11的销售场景,想取得店铺的产品的点击数据。 店铺向平台请求数据,平台每分钟向店铺传达3分钟前的点击和销售数据。 这是典型的窗口计算。 实际使用场景非常多。

衍生流的事件驱动模式下

每次获得数据时对其进行变形以获得删除流,还可以划分为计算单个数据变形和窗口变形(多数据变形)单个数据变形(Stream )中单个数据以获得新数据的过程

计算窗口变形(多数据变形)一个时间窗口)中的多个数据以获得新数据的过程

Streamjob「streamSQL”中的stream是静态的,它只说明如何接收和变形数据源发送的数据,而不执行这些计划。 要在StreamSQL中运行调度,必须执行相应的操作以启动StreamJob。 我真的把stream变成了流水线。

如上图所示,当StreamJob启动时,StreamSQL在每个输入流中启动一系列称为Receiver的任务来接收数据,接收到的数据经过一系列Derived Stream的变形最终可以由用户查询

“APP”是与业务逻辑相关的流作业的集合。

通过使用应用程序适当地划分流作业,可以共享和隔离资源。

资源共享—在应用程序中使用同一输入流的流作业共享一组接收方资源隔离。 如果不同应用程序中的流作业使用相同的输入流,则每个应用程序都是此输入流

可以联想到在kafka的Consumer Group,Group中共享这个数据。 StreamSQL vs .常规SQL DML语句的执行机制如下:

常规SQL :在块中运行并发送SQL后,用户必须等待SQL执行完成。 在此期间,命令将继续被阻止,不能执行其他命令。

StreamSQL :在后台运行,计算任务继续在后台运行,执行StreamSQL的DML语句时会立即返回结果。 查询结果的输出不同:

常规SQL :查询结果显示在控制台中或由JDBC读取

流SQL :用户必须明确指定将查询结果输出到何处。 流SQL :用户必须明确指定将查询结果输出到何处。 查询结果通常插入到表中。 例如,插入到结果_表选择…复习事件驱动模式与微批处理模式有何不同?

两种处理模式下窗口的变形有什么不同?

简要说明SteamJob的主要作用。

流SQL和常规SQL有什么区别?

参考课程内容来自南京大学星环科技课程、大数据大数据理论与实践课程

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。