首页 > 其他分享 >Flin(二):DataStream API_算子

Flin(二):DataStream API_算子

时间:2023-11-09 14:33:53浏览次数:33  
标签:DataStream StreamExecutionEnvironment Flin 元素 指定 API 算子

一、流元素

  Flink的DataStream Api 支持的流元素:

    1、基本类型:例如字符串、整型、布尔型、数组等;

    2、Java元组和POJO类型

    3、Scala元素组和case类;

二、执行环境

  每个Flink应用需要一个执行环境,流处理应用需要StreamExecutionEnvironment,例如:

treamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment();

           DataStream API调用构成一个数据流附加到执行环境,当调用env.execute()时,数据流将被打包并发送到作业管理器(JobManager),JobManager将作业并行化切片并分发到任务管理器(TaskManager)执行。作业的每个并行切片将在一个任务槽(task slot)中执行。

         注意:调用execute()时应用才真正开始运行。

三、算子

source算子(StreamExecutionEnvironment类的方法)

  • fromElements():从指定元素创建流
  • fromCollection():从指定集合创建流
  • fromSequence():从整数区间创建流
  • readTextFile():读取文本文件,每行作为一个元素
  • socketTextStream():从套接字读取数据,使用指定的分隔符
  • addSource():使用自定义source函数,见DataStream Connectors

转换算子(DataStream及其子类的方法)

  • map():元素一对一映射
  • flatMap():元素一对n映射
  • filter():按指定的条件过滤元素
  • keyBy():按指定的key分组
  • reduce():对已分组的流进行聚合
  • union():合并多个流

sink算子(DataStream及其子类的方法)

  • print():将每个元素打印到标准输出流
  • writeAsText():写入文本文件,每个元素占一行
  • writeAsCsv():写入CSV文件
  • writeToSocket():写入套接字
  • addSink():使用自定义sink函数

                                 

 

标签:DataStream,StreamExecutionEnvironment,Flin,元素,指定,API,算子
From: https://www.cnblogs.com/renxiaoren/p/17819667.html

相关文章

  • Flink CDC 同步 demo
    运行docker-compose.yml搭建数据库源,官方mysql样例数据源无法启动,改用其他mysql镜像version:'2.1'services:postgres:image:debezium/example-postgres:1.1ports:-"5432:5432"environment:-POSTGRES_PASSWORD=1234-POSTGR......
  • Flink(一):flink源码&&导入到IDE
    一、获取源码1、从Git克隆代码gitclonehttps://github.com/apache/flink.git2、maven运行编译mvncleaninstall-DskipTests注:为了加速构建,可以执行如下命令,以跳过测试,QA的插件和JavaDocs的生成:mvncleaninstall-DskipTests-Dfast 二、环境......
  • 打工笔记------------------------记录C#调用Windows API函数
    一,windowsAPI助手类usingNLog;usingSystem;usingSystem.Collections.Generic;usingSystem.Drawing;usingSystem.Linq;usingSystem.Runtime.InteropServices;usingSystem.Text;usingSystem.Threading;namespaceGateway{publicclassWindowAPI{......
  • API低代码开发应用场景​
    什么是API低代码开发平台API低代码开发平台是一种基于低代码开发的技术平台,它可以帮助企业快速构建和部署API应用程序。该平台通过提供可视化的开发工具、预定义的组件和模板、自动化的代码生成等功能,使得开发者可以在不需要编写大量代码的情况下,快速构建出高质量稳定可靠的API应用......
  • .net 温故知新【13】:Asp.Net Core WebAPI 使用依赖注入DI
    一、使用DI注入在之前的文章中已经讲过DI的概念(.net温故知新:【7】IOC控制反转,DI依赖注入),基于控制台程序演示了DI依赖注入的使用,基于Microsoft.Extensions.DependencyInjection完成。那在WebAPI中如何使用依赖注入呢?首先新建一个WebAPI项目WebAPI_DI,框架.net7,其实webapi项目......
  • 接口开放太麻烦?试试阿里云API网关吧
    前言我在多方合作时,系统间的交互是怎么做的?这篇文章中写过一些多方合作时接口的调用规则和例子,然而,接口开放所涉及的安全、权限、监控、流量控制等问题,可不是简简单单就可以解决的,这一般需要专业的开放平台来支撑。但为了开放几个接口就要做一个开放平台,实在是不合算。为此阿里云......
  • Kubernetes: kube-apiserver 之认证
    kubernetes:kube-apiserver系列文章:Kubernetes:kube-apiserver之scheme(一)Kubernetes:kube-apiserver之scheme(二)Kubernetes:kube-apiserver之启动流程(一)Kubernetes:kube-apiserver之启动流程(二)Kubernetes:kube-apiserver和etcd的交互0.前言kube-apis......
  • 19、Flink 的Table API 和 SQL 中的自定义函数及示例(3)
    (文章目录)本文介绍了标量聚合函数和表值聚合函数的自定义实现,分别以具体的示例进行展示。特别需要提醒的是表值聚合函数自定义实现时针对emitValue和emitUpdateWithRetract方法的不同版本实现要求,该处在其官网上没有特别的说明,会导致运行异常,具体原因及解决办法在示例2emitUpdat......
  • 单节点flink部署
    单节点flink推荐作用于测试环境,最好不要使用到线上环境一、环境配置:1、安装Java至少1.8版本https://www.cnblogs.com/xiaoyou2018/p/9945272.html2、系统环境变量vi-b/etc/profileexportFLINK_HOME=/opt/flink-1.18.0exportPATH=$PATH:$FLINK_HOME/bin 二、安装f......
  • Apipost-Helper:IDEA中的类postman工具
    今天给大家推荐一款IDEA插件:Apipost-Helper-2.0,写完代码IDEA内一键生成API文档,无需安装、打开任何其他软件;写完代码IDEA内一键调试,无需安装、打开任何其他软件;生成API目录树,双击即可快速定位API定义的代码…非常好用!主要包含以下功能:1、无侵入生成API文档编写完代码后,只需右键uploa......