微光实验室 · 博客归档
博客 第33页
记录技术探索与工程思考,共 731 篇文章。
大数据-47 Redis 内存管理:过期键删除与内存淘汰策略详解
全面解析 Redis 的内存控制机制,包括 maxmemory 配置、键过期的三种删除策略(惰性/主动/定时),以及 8 种内存淘汰策略的适用场景与选型建议。
大数据-48 Redis 通信原理:RESP 协议与 Reactor 事件驱动模型
深入解析 Redis 的通信底层:RESP 序列化协议的五种数据类型、Pipeline 批处理模式,以及基于 epoll 的 Reactor 单线程事件驱动架构如何支撑 Redis 的高并发处理能力。
大数据-115 Flink DataStream Transformation:Map、FlatMap、Filter 与聚合算子
Flink 针对 DataStream 提供了丰富的算子,支持数据流在不同场景下的灵活处理。常见的算子包括 Map、FlatMap 和 Filter,用于元素转换、拆分与条件筛选;KeyBy 和 Reduce/Fold/Aggregatio...
大数据-116 Flink Sink 使用指南:类型、容错语义与应用场景
Flink 的 Sink 是数据流处理的最终输出端,用于将处理结果写入外部系统或存储介质。它是流式应用的终点,决定数据如何被保存、传输或消费。
大数据-113 Flink 源算子详解:非并行源(Non-Parallel Source)的原理与应用场景
非并行源(Non-Parallel Source)是Flink中并行度固定为1的源操作,无论集群规模如何,只能在单一实例中运行,确保任务按顺序处理。
大数据-114 Flink DataStreamAPI 从 SourceFunction 到 RichSourceFunction
RichSourceFunction 和 RichParallelSourceFunction 是功能增强型的源函数,适用于需要复杂逻辑和资源管理的场景。相比基础的 SourceFunction,它们提供了更完整的生命周期方法(open...
大数据-111 Flink 安装部署 On YARN 部署全流程详解:环境变量、配置与资源申请
在 YARN 模式下部署 Flink 需要完成一系列环境配置和集群管理操作。首先,在各节点配置环境变量,包括 HADOOPCONFDIR、YARNCONFDIR 和 HADOOP_CLASSPATH,并在 profile 中加入 Hadoo...
大数据-112 Flink DataStream API:数据源、转换与输出 文件、Socket 到 Kafka 实战
DataSource、Transformation 和 Sink。DataSource 提供多样化的数据输入方式,包括文件系统、消息队列、数据库及自定义数据源;Transformation 是计算的核心环节,支持 Map、FlatMap...
大数据-45 Redis 持久化机制详解:RDB 与 AOF 对比
系统对比 Redis 两种持久化方案:RDB 快照与 AOF 日志的配置方式、触发机制、优缺点,以及 AOF 重写机制和生产环境的推荐策略。
大数据-46 Redis 持久化之 RDB:快照原理、配置与优缺点
深入解析 Redis RDB 持久化机制,涵盖触发方式、BGSAVE 执行流程、配置参数、文件结构及与 AOF 的对比,帮助你在生产环境中做出合理的持久化选型。
大数据-109 Flink 架构深度解析:JobManager、TaskManager 与核心角色全景图
Flink 的运行架构采用典型的 Master/Slave 模式,各核心组件分工明确。JobManager 作为 Master,负责作业的解析、调度、检查点协调以及故障恢复,同时支持高可用设计和多种作业提交方式。
大数据-110 Flink 安装与部署指南 支持 Local/Standalone/YARN 的多种模式
Flink 提供多种安装模式以适应不同场景需求。Local 模式适合个人学习与小规模调试,配置简单,可直接在本地 IDE 中运行。Standalone 模式是 Flink 内置的集群管理方式,包含 JobManager 和 TaskMana...
大数据-107 Flink Apache Flink 入门全解:流批一体的实时计算引擎 从起源到技术特点的全面解析
Apache Flink 是一个开源的大数据流处理框架,支持无界流和有界批数据的高效计算,以"流批一体"为核心理念,将批处理视为流处理的特例。其具备高性能、分布式执行和弹性扩展能力,能够在 YARN、Kubernetes 等集群环境中运行...
大数据-108 Flink 流批一体化入门:概念解析与WordCount代码实践 批数据+流数据
Apache Flink 既支持流处理(Stream Processing),也支持批处理(Batch Processing)。流处理适用于实时数据,如传感器、日志或交易流,特点是处理无界数据流、支持事件时间、窗口操作和状态管理...
大数据-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、监控体系等生产级性能调优策略。
大数据-103 Spark Streaming 消费 Kafka:Offset 获取、存储与恢复详解
Spark Streaming 集成 Kafka 时,Offset 管理是保证数据处理连续性与一致性的关键环节。Offset 用于标记消息在分区中的位置,应用可通过它来控制消费进度。若在程序异常退出前未持久化保存 Offset...
大数据-104 Spark Streaming 与 Kafka 集成:Offset 管理机制详解与最佳实践 Scala版
Offset用于标记Kafka分区内消息的位置,正确管理能够实现"至少一次"甚至"仅一次"的数据处理语义。通过持久化Offset,应用在故障恢复时可从上次处理的位置继续消费,避免消息丢失或重复。
大数据-101 Spark Streaming 有状态转换详解:窗口操作与状态跟踪实战 附多案例代码
窗口操作通过设置窗口长度(windowDuration)和滑动间隔(slideDuration),在比 batchDuration 更长的时间范围内整合多个批次的数据,实现动态的流式计算。典型案例展示了如何通过 reduceByWindow...
大数据-102 Spark Streaming 与 Kafka 集成全解析:Receiver 与 Direct 两种方案
本文介绍了 Spark Streaming 与 Kafka 的两种集成方式:Receiver Approach 和 Direct Approach。Receiver 方式通过 Executor 上的 Receiver 持续接收数据...