大数据
文章平均质量分 54
学亮编程手记
学亮编程手记
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Doris 基础概念:Key 列(维度列) 和 Value 列(指标列)
Key 列 = 维度列:决定数据如何分组。Value 列 = 指标列:必须指定聚合方式(仅在 Aggregate 模型中)。正确设计 Key/Value 列对查询性能和存储效率至关重要。原创 2025-11-04 16:48:37 · 462 阅读 · 0 评论 -
Apache Doris 中 MySQL 外部表适用场景及性能问题分析
性能问题:查询延迟高,不适合高频、大数据量场景功能限制:复杂 SQL 支持有限,优化能力弱稳定性风险:依赖网络和 MySQL 服务稳定性运维复杂:配置管理、监控排查困难资源竞争:可能影响源端 MySQL 性能建议使用策略仅用于低频、小数据量查询维度表查询和数据探查对于分析型查询,优先考虑数据导入到 Doris 内部表建立完善的监控和降级机制。原创 2025-11-03 16:32:15 · 298 阅读 · 0 评论 -
Apache Doris 的外部表功能介绍:主要支持的外部表类型
数据源/格式连接方式主要应用场景数据湖查询,Hadoop 生态集成日志分析,全文检索与统计现代数据湖查询,流批一体数据湖查询,近实时数据流式数据湖查询,Flink 生态跨库查询,实时分析业务数据库企业级数据库联邦查询ClickHouse跨分析引擎查询Parquet/ORC/CSV 文件直接查询对象存储或 HDFS 上的文件。原创 2025-11-03 15:09:52 · 911 阅读 · 0 评论 -
Apache Doris 外部表功能:es_http_timeout_ms 参数详解
参数名含义: 设置 Doris 与 Elasticsearch 集群进行 HTTP 通信时的超时时间。单位: 毫秒默认值5000(即 5 秒)特性说明参数名功能控制 Doris 查询 Elasticsearch 外部表时的 HTTP 请求超时时间。默认值5000(5秒)常见问题查询 ES 外部表时因 ES 响应慢或网络问题而报超时错误。解决方案适当增大该参数值,例如设置为30000(30秒)。设置方式(会话级) 或(全局级)简单来说,原创 2025-11-03 14:53:25 · 510 阅读 · 0 评论 -
【实操记录】Doris 3.x 调整streaming_load_max_mb单次导入文件大小上限参数值
因为是动态参数,可以通过 SQL 命令直接修改,修改会立即生效。这条命令会显示所有 BE 节点上该参数的当前值,并确认其。原创 2025-11-03 14:29:31 · 725 阅读 · 0 评论 -
Doris 2.x Stream Load 单次导入文件大小上限参数调整(streaming_load_max_mb)
Doris的Stream Load机制默认设置了10GB的文件大小限制,这一设计考虑了系统稳定性和性能平衡。虽然可以通过修改参数调整这一限制,但不建议直接突破默认限制,更合理的做法是结合业务场景和系统资源,采取适当的文件拆分策略或选择其他导入方式。综合评估需求:在调整参数前,应评估实际数据量、导入频率和业务容忍度,避免盲目增大参数值。平衡资源分配:调整文件大小限制时,应同时考虑BE节点的内存、磁盘和网络资源,确保系统整体稳定。监控与调优:导入过程中应密切监控BE节点的资源使用情况,及时发现并处理潜在问题。原创 2025-11-03 14:24:52 · 619 阅读 · 0 评论 -
Doris使用Arrow Flight SQL协议相比MySQL协议的优势分析
特性MySQL 协议Arrow Flight SQL 协议数据传输一次搬一块砖(逐行)一次运一堵墙(批量流式)数据格式文本书信(需要翻译)标准化集装箱(直接使用)适用场景OLTP:咖啡馆点单“一杯拿铁”、“一个蛋糕”(频繁、小量、交互式)OLAP:仓库库存盘点“统计所有商品的库存和销量”(低频、海量、分析式)CPU消耗高(序列化/反序列化)极低(零拷贝/直接传输)网络效率低(往返多、体积大)高(往返少、体积小、压缩好)原创 2025-11-01 22:44:52 · 881 阅读 · 0 评论 -
Doris 基础概念详解:Tablet、Rowset、Replica
术语角色在您错误中的体现Tablet数据分片,分布式的基本单位存储初始化时,需要加载每个 Tablet 的元数据和数据文件。RowsetTablet 的数据增量版本错误直接与 Rowset 的版本管理和清理机制相关。ReplicaTablet 的副本,用于高可用错误可能只发生在某个 Tablet 的特定副本上,导致该副本不可用。当遇到和警告时,极有可能是在某个Tablet的Replica进行初始化或Rowset。原创 2025-10-31 11:00:24 · 837 阅读 · 0 评论 -
Flink JDBC SQL 连接器介绍:建立 JDBC 连接器来执行 SQL 查询
Flink 将优先查找缓存,只有当缓存未查找到时才向外部数据库发送请求,并使用返回的数据更新缓存。在 upsert 模式下,Flink 将根据主键判断插入新行或者更新已存在的行,这种方式可以确保幂等性。在 append 模式下,Flink 会把所有记录解释为 INSERT 消息,如果违反了底层数据库中主键或者唯一约束,INSERT 插入可能会失败。除了故障恢复场景外,数据源(kafka topic)也可能随着时间的推移自然地包含多个具有相同主键的记录,这使得 upsert 模式是用户期待的。原创 2025-10-22 13:57:30 · 940 阅读 · 0 评论 -
Flink Doris Connector 库使用指南:通过 Flink 来读取和写入数据到 Doris 集群
是通过 Flink 来读取和写入数据到 Doris 集群,同时集成了,可以更便捷的对上游 MySQL 等数据库进行整库同步。原创 2025-10-21 16:26:48 · 447 阅读 · 0 评论 -
Doris Stream Load导入json格式数据案例:指定 JSON 根节点导入数据
如果 JSON 数据包含了嵌套 JSON 字段,需要指定导入 JSON 的根节点。原创 2025-10-21 16:23:22 · 129 阅读 · 0 评论 -
Flink-Doris-Connector代码案例:处理 Debezium 数据格式的数据
上面的这个代码示例实现了如下功能:实时捕获 MySQL 数据库的变更数据(CDC),并将其同步到 Doris 数据仓库中。原创 2025-10-21 16:20:50 · 389 阅读 · 0 评论 -
Doris Stream Load 指定 merge_type 进行 Delete 操作
在 Stream Load 中有三种导入类型:APPEND、DELETE 与 MERGE。可以通过指定参数 merge_type 进行调整。导入后会删除原表数据,变成以下结果集。原创 2025-10-21 15:27:28 · 297 阅读 · 0 评论 -
基于Flink CDC 3.6.0构建 MySQL 到 Doris 的 Streaming ELT 作业:包含整库同步、表结构变更同步和分库分表同步的功能
这篇教程将展示如何基于 Flink CDC 快速构建 MySQL 到 Doris 的 Streaming ELT 作业,包含整库同步、表结构变更同步和分库分表同步的功能。本教程的演示都将在 Flink CDC CLI 中进行,无需一行 Java/Scala 代码,也无需安装 IDE。Flink CDC 提供了将源表的表结构/数据路由到其他表名的配置,借助这种能力,我们能够实现表名库名替换,整库同步等功能。注意,目前还不支持多表中存在相同主键数据的场景,将在后续版本支持。下面给出了一个整库同步的示例文件。原创 2025-10-21 13:45:18 · 1211 阅读 · 0 评论 -
Doris批量导入案例:将SQL脚本转换为Stream Load方式以提升批量删除操作的性能
生产环境中,若需要在Doris中批量执行DML SQL语句如delete语句,强烈建议将这些大量的DELETE语句转换为Stream Load的批量导入方式。在Doris中执行大量单条DELETE语句效率很低,而Stream Load可以实现高效的批量删除。原创 2025-10-13 15:56:56 · 568 阅读 · 0 评论 -
Doris批量导入案例:SQL脚本转Sream Load方式(delete复杂where条件场景)
在上一篇博文中,当DELETE语句的WHERE条件包含多个字段时,我们需要更复杂的解析逻辑和表结构设计。以下是针对多字段条件的完整解决方案。原创 2025-10-13 15:54:55 · 336 阅读 · 0 评论 -
Linux系统调优:针对Doris BE服务器关闭透明大页(THP)
传统大页(Static HugePages): 需要系统管理员预先分配好固定数量的大内存页,应用程序需要显式地请求使用它们。管理起来比较麻烦,但性能稳定。透明大页(THP): 是Linux内核的一个特性(从RHEL 6等开始引入),旨在自动管理大页,无需管理员干预和应用程序的修改。内核的khugepaged守护进程会在后台自动将常规的4KB小页合并为2MB甚至1GB的大页。初衷是好的:减少页表项(TLB Miss)的数量,提高内存访问效率(特别是对于需要大量内存的应用程序)。特性对Doris的影响。原创 2025-10-13 15:42:22 · 529 阅读 · 0 评论 -
用 Canal 从 MySQL 从库(read-only) 抓取增量 binlog 的实战指南
如果你要用 Canal 从抓取增量时,👉 记录正确的能确保增量同步。原创 2025-10-03 22:04:31 · 517 阅读 · 0 评论 -
为什么 Canal 不支持全量(历史数据)同步?
方案是否支持全量延迟难度推荐场景❌(需手动导入)秒级简单快速上线、已有 Canal 部署✅ 自动 snapshot + binlog秒级中等希望一体化、自动化同步✅ 自动 snapshot + binlog秒级~分级较高企业级、多下游共享数据流。原创 2025-10-03 22:02:39 · 794 阅读 · 0 评论 -
将 MySQL(亿级大表) 的全量 + 增量(实时)数据同步到 Apache Doris 的技术实现思路
本文介绍一套工程化、可落地的方案与实践要点,帮助把的**全量 + 增量(实时)**数据同步到。方案按常见场景给出多种实现(优缺点 + 关键配置与调优建议),并标注权威文档引用,便于你进一步查阅与落地。原创 2025-10-03 21:55:03 · 933 阅读 · 0 评论 -
Doris 数据同步 (Sync Job) 功能:同步 MySQL Canal 数据源配置示例
数据同步 (Sync Job) 功能支持用户提交一个常驻的数据同步作业,通过从指定的远端地址读取 Binlog 日志,增量同步用户在 MySQL 数据库中数据更新操作的 CDC (Change Data Capture) 信息。用户可通过查看数据同步作业的状态。原创 2025-10-03 21:44:32 · 812 阅读 · 0 评论 -
Flink 入门详解(核心概念、数据流模型、部署模式、入门示例、常用命令、学习建议)
Apache Flink 是一个,支持和。原创 2025-10-03 13:01:44 · 770 阅读 · 0 评论 -
Flink on YARN 运维实战手册(简约电子手册)
模式:Session 模式 / Per-Job 模式。原创 2025-10-03 12:55:24 · 928 阅读 · 0 评论 -
Hadoop YARN 运维实战手册(简约电子手册)
节点经常 Unhealthy → 定期清理磁盘 & 健康检查脚本作业 Pending → 调整队列容量 & user-limit-factor作业频繁被 Kill → 调整 memoryOverhead & 最大容器内存作业运行慢 → 优化 Shuffle、分区与广播策略集群监控 → Prometheus + Grafana 实时监控。原创 2025-10-03 12:48:07 · 1208 阅读 · 0 评论 -
Hadoop YARN 集群监控与故障诊断实战
场景建议节点经常 Unhealthy定期清理/tmp作业排队调整或队列资源比例作业经常超时增加,检查 GC多租户环境启用 CapacityScheduler,隔离队列容器被频繁 Kill调整 memoryOverhead、关闭 vmem-check集群监控结合 Prometheus + GrafanaYARN 故障排查的核心:日志 + UI + Metrics 三结合。YARN Web UI 看“哪儿出问题”;CLI 命令查“任务状态”;日志文件找“具体原因”;原创 2025-10-03 12:46:46 · 909 阅读 · 0 评论 -
Spark On YARN 集群性能优化实战
让每个容器资源分配合理,任务动态扩缩容,Shuffle 有序而高效。控制 Executor 尺寸;启用动态资源;减少数据倾斜与 Shuffle I/O;根据业务特征选择合适调度策略。原创 2025-10-03 12:42:01 · 787 阅读 · 0 评论 -
Hadoop YARN 容器(Container)资源调优与常见错误排查
Container 是资源分配的最小单位每个容器(Container)都封装了一定的内存(MB)和CPU 核数(vCores),由 NodeManager 启动并管理。NodeManager (机器总资源)└── Container (YARN分配的最小单元)└── Task (框架任务,例如 Spark Executor)YARN 容器调优 = 让每个任务刚好吃饱、不浪费、不被饿死。节点资源分配合理;容器内任务稳定;集群利用率高;作业延迟低。原创 2025-10-03 12:39:10 · 483 阅读 · 0 评论 -
Hadoop YARN 调度策略详解与实战(FIFO / Capacity / Fair)
✅ 支持多租户资源隔离✅ 可配置队列层级✅ 可动态调整队列容量❌ 配置复杂,调试难度较大📍适合场景企业共享大集群,多部门 / 多项目分区使用资源的情况。✅ 动态公平共享资源✅ 空闲队列资源可被其他作业临时使用✅ 支持多级队列与权重控制❌ 相比 Capacity,配置稍复杂📍适合场景研发 + 生产共享集群,负载波动较大时保证资源公平利用。特性FIFOCapacityFair是否多队列❌ 否✅ 是✅ 是资源隔离❌ 否✅ 严格隔离⚙️ 动态隔离资源借用❌ 否。原创 2025-10-03 12:38:05 · 901 阅读 · 0 评论 -
Spark on YARN 的运行流程(原理 + 实战 + 配置)
Spark on YARN = Spark 的计算能力 + YARN 的资源调度能力。它让 Spark 在大规模 Hadoop 集群中运行更安全、更高效、更灵活。原创 2025-10-03 12:35:41 · 663 阅读 · 0 评论 -
Hadoop Yarn 的配置文件 yarn-site.xml 详解(常用配置项、优化建议和实际案例)
深入理解是掌握 Hadoop 集群管理的关键一步。本文我会系统讲解这个文件的作用、常用配置项、优化建议和实际案例。原创 2025-10-03 12:33:37 · 923 阅读 · 0 评论 -
Hadoop YARN 框架的入门知识(整体架构、核心概念、工作原理、应用示例)
YARN = Hadoop 的资源管理 + 作业调度平台。它让不同的计算框架(MapReduce、Spark、Flink)都能在同一个集群上高效运行。原创 2025-10-03 12:31:23 · 531 阅读 · 0 评论 -
如何分析 Flink 空闲时的可用内存?
首要关注available指标:它直接回答了“Doris 现在还能申请到多少内存?”这个问题。如果available持续很高(例如 >10G),说明即使 Flink 占着 20G,Doris 也有充足的扩展空间。不要被free指标误导free内存少是正常的,不代表内存不足。深入分析 Flink 进程:结合top(看RES) 和jstat(看堆内使用情况) 来量化 Flink 的真实内存占用和闲置程度。如果 Flink 堆内使用率长期低于 50%,说明它确实“闲置”了大量内存。终极解决方案。原创 2025-10-03 11:55:46 · 834 阅读 · 0 评论 -
利用 Flink on K8S 的弹性扩缩容实现动态内存资源调度
方案工作原理优点缺点静态配置(默认)内存固定分配,互不干涉。简单,稳定,性能可预测。资源利用率低,无法应对需求变化。K8s利用OS内存超售和竞争。实现简单,能有效提升利用率,是K8s最佳实践。非严格调度,Flink突发任务可能受内存压力影响。Flink 弹性扩缩容根据负载自动增减Pod,释放/申请内存。资源利用率最高,完全自动化。对有状态流作业复杂,有扩缩容延迟。给你的建议:首选方案:将服务部署到Kubernetes,并采用 requests和limits的配置模式。原创 2025-10-03 11:51:01 · 756 阅读 · 0 评论 -
YARN 的 Linux Container Executor 详解
是 Apache Hadoop YARN 框架中一种关键的实现。核心职责:Container Executor 是 YARN NodeManager 的一个组件,它负责在物理机或虚拟机上安全地启动和清理YARN 容器进程。它是 YARN 与底层操作系统之间的“桥梁”。LCE 的独特之处:与最简单的 DefaultContainerExecutor(几乎无隔离)不同,LCE 利用Linux 内核的原生特性来为每个 YARN 容器提供资源隔离和一定的运行隔离。原创 2025-10-03 11:47:15 · 758 阅读 · 0 评论 -
flink部署在yarn或k8s的对比
YARN“数据层”调度器。它生来就是为了管理大数据工作负载(如 MapReduce, Spark, Hive)的,对资源的管理和隔离有深厚的积累。部署 Flink on YARN 可以看作是融入现有 Hadoop 技术栈的自然选择。“通用”容器编排平台。它是云原生时代的事实标准,强调声明式 API、可移植性和强大的自动化能力。部署 Flink on K8s 是拥抱云原生、实现技术栈统一和现代化的选择。总的来说,这是一个“传统大数据平台”与“现代云原生平台”之间的选择。YARN。原创 2025-10-03 11:46:11 · 836 阅读 · 0 评论 -
flink 如何设置 job 的优先级?
方法适用场景优点缺点YARN/K8s 资源队列生产环境首选成熟、稳定、隔离性好,能与公司基础设施集成需要集群管理员配置队列和资源配额Standalone 资源组Flink Standalone 集群轻量,无需额外资源调度框架功能相对简单,资源无法弹性伸缩调度器策略所有模式可以控制启动顺序无法解决运行时资源竞争问题手动控制小团队、临时调整灵活、直接运维成本高,不自动化对于生产环境,强烈建议在YARN 或 Kubernetes上运行 Flink 集群,并。原创 2025-10-02 12:52:31 · 548 阅读 · 0 评论 -
为什么不推荐使用Doris Flink Connector进行SQL脚本的执行操作?
有学员咨询:我有大批量的sql脚本文件(经过对MySQL binlog的解析而生成的)需要执行以同步到Doris,适合用Doris Flink Connector 这个类库吗?。下面详细解释为什么,并给出更优的解决方案。原创 2025-09-30 15:52:24 · 665 阅读 · 0 评论 -
Flink 将流式数据转换成微批(攒批)的实现机制
机制触发条件主要目的优点Sink 内置缓冲数据量、时间间隔优化性能,减少I/O请求实现简单,延迟可控,吞吐高Checkpoint 触发Checkpoint 完成保证精确一次语义端到端一致性,天然大批次Window 操作符窗口结束(时间、计数)基于窗口的计算语义清晰,与计算逻辑绑定流式处理:来一件商品就发一次快递(),成本极高。Sink内置缓冲(微批):快递员等包裹攒满一车(按大小),或者每隔一小时(按时间)发一次车。Checkpoint触发:公司规定,每天下午5点财务对账(Checkpoint。原创 2025-09-30 14:34:19 · 1070 阅读 · 0 评论 -
Flink CDC 写入 Doris 的 Stream Load 批量数据导入机制详解
Stream Load 是 Doris 为高效批量数据导入而设计的原生机制。它的工作方式非常适合 Flink 这类流处理框架。优势:极高的吞吐量Stream Load 是一个批量导入接口,它会将一批数据打包成一个完整的导入事务,一次性提交给 Doris。这与 Flink 的 Checkpoint 机制和攒批(Micro-batching)思想完美契合。原创 2025-09-30 14:24:31 · 755 阅读 · 0 评论 -
JVM的“内存领地”意识及Flink的堆外内存
本文我们来探讨一下如下话题——flink jvm -Xmx的内存设置为20GB,这部分内存空闲时可用作Doris吗?下面我们来详细拆解这20GB-Xmx内存的“一生”,您就明白为什么了。原创 2025-09-29 23:44:49 · 757 阅读 · 0 评论
分享