博客
记录技术探索与思考 · 共 655 篇
大数据-119 Flink 窗口(Window)全解析:Tumbling、Sliding、Session
Flink的Window窗口机制是流处理与批处理统一架构的核心桥梁。Flink将批处理视为流处理的特例,通过时间窗口(Tumbling、Sliding、Session)和计数窗口将无限流切分为有限数据集。
大数据-120 Flink滑动窗口(Sliding Window)详解:原理、应用场景与实现示例
滑动窗口(Sliding Window)是Apache Flink流处理中的核心机制之一,比固定窗口更灵活,广泛应用于实时监控、异常检测、趋势分析和用户行为统计等场景。滑动窗口由两个关键参数组成:窗口大小(window size)与滑动步长(slide interval)。
大数据-117 Flink JDBC Sink 详细解析:MySQL 实时写入、批处理优化与最佳实践
JDBC Sink 是最常用的数据输出组件之一,常用于将流处理与批处理结果写入 MySQL、PostgreSQL、Oracle 等关系型数据库。通过 JdbcSink.sink() 方法,开发者可以方便地实现 INSERT/UPDATE/UPSERT 等操作,并支持批量写入、事务一致性、自动重试机制,保证数据高效可靠落库。
大数据-118 Flink 批处理 DataSet API 全面解析:应用场景、代码示例与优化机制
Flink 的 DataSet API 是批处理的核心编程接口,专为处理静态、有限数据集设计,支持 TB 级甚至 PB 级大数据分析。相比 DataStream API 的流处理,DataSet API 聚焦于离线批处理,具备延迟执行、内存管理、丰富算子和容错机制等优势。常见应用场景包括 ETL 数据清洗与加载、批量报表分析、大规模图计算、机器学习特征工程与数据预处理。
大数据-47 Redis 内存管理:过期键删除与内存淘汰策略详解
全面解析 Redis 的内存控制机制,包括 maxmemory 配置、键过期的三种删除策略(惰性/主动/定时),以及 8 种内存淘汰策略的适用场景与选型建议。本文深入分析原理与实践应用,帮助读者全面理解核心技术要点。
大数据-48 Redis 通信原理:RESP 协议与 Reactor 事件驱动模型
深入解析 Redis 的通信底层:RESP 序列化协议的五种数据类型、Pipeline 批处理模式,以及基于 epoll 的 Reactor 单线程事件驱动架构如何支撑 Redis 的高并发处理能力。
大数据-115 Flink DataStream Transformation:Map、FlatMap、Filte...
Flink 针对 DataStream 提供了丰富的算子,支持数据流在不同场景下的灵活处理。常见的算子包括 Map、FlatMap 和 Filter,用于元素转换、拆分与条件筛选;KeyBy 和 Reduce/Fold/Aggregations,可实现基于键的分区、滚动归约与聚合操作;Window 系列算子,能按照时间或事件对流进行窗口化计算,便于实现实时统计与累计功能。
大数据-116 Flink Sink 使用指南:类型、容错语义与应用场景
Flink 的 Sink 是数据流处理的最终输出端,用于将处理结果写入外部系统或存储介质。它是流式应用的终点,决定数据如何被保存、传输或消费。本文深入分析原理与实践应用,帮助读者全面理解核心技术要点。
大数据-113 Flink 源算子详解:非并行源(Non-Parallel Source)的原理与应用场景
非并行源(Non-Parallel Source)是Flink中并行度固定为1的源操作,无论集群规模如何,只能在单一实例中运行,确保任务按顺序处理。本文深入分析原理与实践应用,帮助读者全面理解核心技术要点。
大数据-114 Flink DataStreamAPI 从 SourceFunction 到 RichSource...
RichSourceFunction 和 RichParallelSourceFunction 是功能增强型的源函数,适用于需要复杂逻辑和资源管理的场景。相比基础的 SourceFunction,它们提供了更完整的生命周期方法(open、close、run、cancel),支持在作业开始和结束时进行初始化和清理操作。
大数据-111 Flink 安装部署 On YARN 部署全流程详解:环境变量、配置与资源申请
在 YARN 模式下部署 Flink 需要完成一系列环境配置和集群管理操作。首先,在各节点配置环境变量,包括 HADOOP_CONF_DIR、YARN_CONF_DIR 和 HADOOP_CLASSPATH,并在 profile 中加入 Hadoop 与 Flink 的路径。随后修改 yarn-site.xml,指定 ResourceManager 地址,并关闭虚拟内存与物理内存检测以避免资...
大数据-112 Flink DataStream API:数据源、转换与输出 文件、Socket 到 Kafka ...
DataSource、Transformation 和 Sink。DataSource 提供多样化的数据输入方式,包括文件系统、消息队列、数据库及自定义数据源;Transformation 是计算的核心环节,支持 Map、FlatMap、Filter、KeyBy、Window 等操作,并能以链式调用构建完整的数据流处理管道;Sink 负责结果输出,可将数据写入消息系统、数据库或文件系统,并支...
大数据-45 Redis 持久化机制详解:RDB 与 AOF 对比
系统对比 Redis 两种持久化方案:RDB 快照与 AOF 日志的配置方式、触发机制、优缺点,以及 AOF 重写机制和生产环境的推荐策略。本文深入分析原理与实践应用,帮助读者全面理解核心技术要点。
大数据-46 Redis 持久化之 RDB:快照原理、配置与优缺点
深入解析 Redis RDB 持久化机制,涵盖触发方式、BGSAVE 执行流程、配置参数、文件结构及与 AOF 的对比,帮助你在生产环境中做出合理的持久化选型。
大数据-109 Flink 架构深度解析:JobManager、TaskManager 与核心角色全景图
Flink 的运行架构采用典型的 Master/Slave 模式,各核心组件分工明确。JobManager 作为 Master,负责作业的解析、调度、检查点协调以及故障恢复,同时支持高可用设计和多种作业提交方式。TaskManager 是执行单元,提供 Task Slot 资源,执行具体的子任务,并通过网络通信与心跳机制维持集群稳定性。ResourceManager 负责全局资源的分配与回收...
大数据-110 Flink 安装与部署指南 支持 Local/Standalone/YARN 的多种模式
Flink 提供多种安装模式以适应不同场景需求。Local 模式适合个人学习与小规模调试,配置简单,可直接在本地 IDE 中运行。Standalone 模式是 Flink 内置的集群管理方式,包含 JobManager 和 TaskManager,用户需手动配置资源,优点是部署独立、简洁易用,适合中小规模生产环境或边缘计算场景,但缺乏动态扩展能力。YARN 模式依托 Hadoop YARN ...
大数据-107 Flink Apache Flink 入门全解:流批一体的实时计算引擎 从起源到技术特点的全面解析
Apache Flink 是一个开源的大数据流处理框架,支持无界流和有界批数据的高效计算,以"流批一体"为核心理念,将批处理视为流处理的特例。其具备高性能、分布式执行和弹性扩展能力,能够在 YARN、Kubernetes 等集群环境中运行,广泛应用于实时 ETL、复杂事件处理、在线分析与监控预警等场景。
大数据-108 Flink 流批一体化入门:概念解析与WordCount代码实践 批数据+流数据
Apache Flink 既支持流处理(Stream Processing),也支持批处理(Batch Processing)。流处理适用于实时数据,如传感器、日志或交易流,特点是处理无界数据流、支持事件时间、窗口操作和状态管理,能够保证乱序与延迟情况下的精确计算。批处理则针对静态、有界数据集,常用于大规模分析或ETL任务,依赖任务并行化和 DataSet API 实现高效处理。文中以"单...
大数据-43 Redis Lua 脚本:EVAL、redis.call 与原子操作实战
系统讲解 Redis Lua 脚本的 EVAL 命令语法、redis.call 与 redis.pcall 的区别,以及原子计数器、CAS、批量操作等四个典型实战案例。
大数据-44 Redis 慢查询日志与性能调优实践
详解 Redis 慢查询日志的配置参数(slowlog-log-slower-than、slowlog-max-len)、核心命令,以及数据结构优化、Pipeline、监控体系等生产级性能调优策略。