Flume适配GaussDB开源开发任务心得
【摘要】 Flume 是一个分布式、可靠、高可用的海量日志采集、聚合和传输的系统。它最初是 Cloudera 公司开发的,用于在 Hadoop 生态系统中有效地收集、移动和聚合大量的日志数据。主要功能是从各种数据源(如服务器上的日志文件、网络端口、消息队列等)采集数据,并将这些数据传输到数据存储系统进行进一步的分析和处理。
背景介绍
开源for Huawei(参考:https://developer.huaweicloud.com/programs/opensource/contributing/) 通过和公司、高校、社区的开发者合作,完成鲲鹏、昇腾、欧拉、鸿蒙、高斯、云服务等与开源软件的适配开发,帮助繁荣Huawei的基础生态,同时让开源软件能够更加简单、高效的运行于华为云上。
1 适配过程
- 购买 华为云鲲鹏EulerOS环境的ECS 搭建Flume运行环境并启用;
- 根据任务计划书DEMO设计,准备源端本地数据及脚本;
- 根据任务计划书DEMO设计,准备目标端数据库环境以及元数据(表结构);
- 根据任务计划书DEMO设计,使用Flume搭建任务流,实现数据的实时同步。
2 适配准备
- 华为云鲲鹏EulerOS环境的ECS(华为云购买);
- GaussDB数据库(华为云购买);
- Flume服务端(华为云购买ECS后部署)。
2.1 ECS/GaussDB配置
GaussDB:
- 计费模式选择:按需计费
- 区域:华北-北京四
- GaussDB数据库引擎版本 : V2.0-8.201.0
- GaussDB内核引擎版本:505.2.0
- CPU/内存 规格:16 vCPUs | 128 GB
- 性能规格:鲲鹏独享型(1:8)
- 镜像类型:公共镜像
- 镜像:openEuler 20.03 64bit with ARM(100GiB)
鲲鹏ECS X1:
- 计费模式选择:按需计费
- 区域:华北-北京四
- CPU架构:x86计算
- CPU规格:xlarge.4
- CPU规格:8vCPUs&&24GiB
- 镜像类型:公共镜像
- 镜像:Huawei Cloud EulerOS 2.0 标准版 64位 ARM版
2.2 其它
ECS安全组配置 配置规则 → 出/入方向规则 → 一键放通常用端口
也可直接放通所有端口。
3 Demo开发
- 准备源端数据以及数据生成脚本。
- 准备目标端GaussDB数据库环境以及元数据(表结构)--目标端没有数据。
- 启动数据生成脚本工作流 服务, 本地数据实时同步到目标端GaussDB数据库 。
- 数据验证
4 适配过程中的问题记录
-
关于 source的选择
推荐使用 Taildir Source 高效稳定 不会丢失数据,不推荐使用 ExecSource
参考:https://flume.apache.org/releases/content/1.7.0/FlumeUserGuide.html#taildir-source
- 关于数据同步脚本
注意标点符号 否则Flume 在 sink 时候会报错 语法错误。
- Flume实现本地数据同步总结
1.能够实时采集数据 并且实时写入数据到GaussDB 当中,而且没有发生丢失数据的情况,整个过程 高效稳定。
2.Flume支持多种自定义source数据源及sink数据下沉场景,使用场景较广。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)